/* Captured by Lewis Slyfield — shared site styles (matches homepage) */
@font-face{font-family:'Delicate Elegance';src:url('DelicateElegance-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;}
:root{
  --bone:#f4f1ea; --paper:#faf8f3; --ink:#17150f; --ink-soft:#4a463c;
  --gold:#a9803f; --gold-lt:#c39a55; --line:rgba(23,21,15,0.12); --line-soft:rgba(23,21,15,0.08);
  --nav-h:78px;
  --display:'Delicate Elegance','Cormorant Garamond',serif; --body:'Hanken Grotesk',sans-serif; --label:'Hanken Grotesk',sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bone);color:var(--ink);font-family:var(--body);font-weight:400;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{display:block;width:100%;height:100%;object-fit:cover;}
::selection{background:var(--gold);color:var(--paper);}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.5rem,4vw,3.5rem);background:rgba(244,241,234,0.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-soft);}
.nav-logo{display:inline-flex;align-items:center;}
.nav-logo img{height:38px;width:auto;display:block;}
.nav-links{list-style:none;display:flex;align-items:center;gap:2.4rem;}
.nav-links>li>a{font-family:var(--display);font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);transition:color .3s;}
.nav-links>li>a:hover,.nav-links>li>a.active{color:var(--gold);}
.has-dropdown{position:relative;}
.has-dropdown::after{content:'';position:absolute;top:100%;left:-16px;right:-16px;height:16px;}
.dropdown{display:none;position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);background:var(--paper);border:1px solid var(--line);list-style:none;min-width:180px;padding:.5rem 0;box-shadow:0 24px 50px -24px rgba(23,21,15,.25);}
.has-dropdown:hover .dropdown{display:block;animation:fadeDrop .25s ease;}
@keyframes fadeDrop{from{opacity:0;transform:translateX(-50%) translateY(-6px);}to{opacity:1;transform:translateX(-50%) translateY(0);}}
.dropdown li a{display:block;padding:.6rem 1.5rem;font-family:var(--label);font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);transition:.2s;}
.dropdown li a:hover{color:var(--gold);background:rgba(169,128,63,.07);padding-left:1.8rem;}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;}
.nav-toggle span{display:block;width:26px;height:1.5px;background:var(--ink);transition:.3s;}

/* shared bits */
.eyebrow{font-family:var(--label);font-size:.68rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:1.4rem;display:inline-flex;align-items:center;gap:.7rem;}
.eyebrow::before{content:'';width:28px;height:1px;background:var(--gold);}
.btn-cta{display:inline-flex;align-items:center;gap:.9rem;font-family:var(--label);font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:1.1rem 2.4rem;transition:.3s;}
.btn-cta svg{width:16px;height:16px;transition:transform .3s;}
.btn-cta:hover{background:var(--gold);gap:1.4rem;}
.btn-cta:hover svg{transform:translateX(4px);}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);}
.reveal.visible{opacity:1;transform:none;}

/* GALLERY PAGE HERO */
.g-hero{position:relative;min-height:64vh;display:flex;align-items:flex-end;padding:calc(var(--nav-h) + 4rem) clamp(1.5rem,5vw,5.5rem) clamp(2.5rem,5vw,4rem);overflow:hidden;}
.g-hero-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;animation:slowZoom 26s ease-in-out infinite alternate;}
.g-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(23,21,15,.82) 0%,rgba(23,21,15,.35) 55%,rgba(23,21,15,.5) 100%);}
@keyframes slowZoom{from{transform:scale(1);}to{transform:scale(1.07);}}
.g-hero-inner{position:relative;z-index:2;max-width:1340px;margin:0 auto;width:100%;}
.g-hero .eyebrow{color:var(--gold-lt);}
.g-hero .eyebrow::before{background:var(--gold-lt);}
.g-hero h1{font-family:var(--display);font-size:clamp(2.8rem,7vw,6rem);font-weight:500;line-height:.98;letter-spacing:-.005em;color:var(--paper);margin-bottom:1rem;}
.g-hero h1 em{font-style:normal;color:var(--gold-lt);}
.g-hero p{font-size:1.05rem;color:rgba(250,248,243,.82);max-width:44ch;}

/* MASONRY GALLERY */
.gallery{padding:clamp(3.5rem,7vw,7rem) clamp(1.5rem,5vw,5.5rem);background:var(--bone);}
.masonry-gallery{max-width:1340px;margin:0 auto;column-count:3;column-gap:14px;}
.masonry-item{break-inside:avoid;margin-bottom:14px;position:relative;overflow:hidden;cursor:pointer;}
.masonry-item img{transition:transform 1s cubic-bezier(.2,.7,.2,1);filter:saturate(.96);}
.masonry-item::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(23,21,15,.25),transparent 60%);opacity:0;transition:opacity .5s;}
.masonry-item:hover img{transform:scale(1.05);}
.masonry-item:hover::after{opacity:1;}

/* LIGHTBOX */
.lightbox{position:fixed;inset:0;z-index:3000;background:rgba(23,21,15,.93);display:none;align-items:center;justify-content:center;padding:3vw;}
.lightbox.open{display:flex;}
.lightbox img{width:auto;height:auto;max-width:92vw;max-height:90vh;object-fit:contain;box-shadow:0 40px 100px -30px rgba(0,0,0,.8);}
.lightbox-close{position:absolute;top:22px;right:34px;background:none;border:none;color:var(--paper);font-size:2.6rem;line-height:1;cursor:pointer;transition:color .2s;}
.lightbox-close:hover{color:var(--gold-lt);}

/* BOOK CTA */
.book{background:var(--ink);color:var(--bone);text-align:center;padding:clamp(4.5rem,8vw,7.5rem) clamp(1.5rem,5vw,5.5rem);}
.book .eyebrow{color:var(--gold-lt);}
.book .eyebrow::before{background:var(--gold-lt);}
.book h2{font-family:var(--display);font-size:clamp(2rem,4vw,3.2rem);font-weight:500;line-height:1.05;color:var(--paper);margin:0 0 2rem;}
.book h2 em{font-style:normal;color:var(--gold-lt);}
.book .btn-cta{background:var(--paper);color:var(--ink);}
.book .btn-cta:hover{background:var(--gold);color:var(--paper);}

/* FOOTER */
.footer{background:var(--bone);border-top:1px solid var(--line);padding:clamp(3rem,5vw,4rem) clamp(1.5rem,5vw,5.5rem);}
.footer-inner{max-width:1340px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem;}
.footer-logo img{height:46px;width:auto;display:block;}
.footer-links{display:flex;gap:1.8rem;flex-wrap:wrap;}
.footer-links a{font-family:var(--label);font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);transition:.3s;}
.footer-links a:hover{color:var(--gold);}
.footer-social{display:flex;gap:1.1rem;}
.footer-social a{color:var(--ink-soft);transition:.3s;}
.footer-social a:hover{color:var(--gold);}
.footer-copy{width:100%;font-size:.68rem;color:var(--ink-soft);opacity:.6;letter-spacing:.04em;text-align:center;}

/* PRICING PAGE */
.pricing{background:var(--bone);padding:clamp(3.5rem,7vw,7rem) clamp(1.5rem,5vw,5.5rem);}
.pricing-inner{max-width:1080px;margin:0 auto;}
.pricing-intro{max-width:80ch;margin:0 auto clamp(3rem,5vw,4.5rem);text-align:center;}
.pricing-intro p{font-size:1.08rem;color:var(--ink-soft);margin-bottom:1.1rem;}
.pricing-intro p:last-child{margin-bottom:0;}
.pricing-intro .note{font-family:var(--label);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
.pricing-note{text-align:center;margin-top:clamp(2.5rem,4vw,3.5rem);font-family:var(--label);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;}
.tier{position:relative;background:var(--paper);border:1px solid var(--line);padding:clamp(2rem,3vw,2.8rem) clamp(1.6rem,2.4vw,2.2rem);display:flex;flex-direction:column;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .5s;}
.tier:hover{transform:translateY(-8px);box-shadow:0 30px 60px -30px rgba(23,21,15,.28);border-color:var(--gold);}
.tier-dur{font-family:var(--display);font-size:clamp(1.9rem,3vw,2.5rem);font-weight:500;line-height:1;color:var(--ink);margin-bottom:.4rem;}
.tier-dur em{font-style:normal;color:var(--gold);}
.tier-tag{font-family:var(--label);font-size:.66rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1.6rem;}
.tier-ideal{font-size:.98rem;color:var(--ink-soft);line-height:1.65;flex:1;padding-bottom:1.8rem;border-bottom:1px solid var(--line-soft);margin-bottom:1.8rem;}
.tier-price{font-family:var(--display);font-size:clamp(2.4rem,4vw,3.2rem);font-weight:500;line-height:1;color:var(--ink);}
.tier-price .cur{font-size:.5em;vertical-align:super;color:var(--ink-soft);margin-right:.1em;}
.tier .btn-cta{margin-top:1.8rem;justify-content:center;width:100%;}
@media(max-width:1024px){.masonry-gallery{column-count:2;}}
@media(max-width:860px){.tiers{grid-template-columns:1fr;max-width:460px;margin:0 auto;}}
@media(max-width:768px){
  .nav-links{display:none;position:fixed;top:var(--nav-h);left:0;right:0;background:var(--paper);flex-direction:column;align-items:flex-start;padding:2rem 5vw;gap:1.4rem;border-bottom:1px solid var(--line);}
  .nav-links.open{display:flex;}
  .nav-toggle{display:flex;}
  .has-dropdown .dropdown{position:static;transform:none;display:block;background:transparent;border:none;box-shadow:none;padding:.5rem 0 0 1rem;}
  .masonry-gallery{column-count:1;}
  .footer-inner{flex-direction:column;align-items:flex-start;}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;}}
