:root{--ivory:#fffdf7;--sand:#f3e9dc;--linen:#e8dccb;--petal:#fceef0;--pink:#efaab4;--rose:#d96779;--deep:#b94f63;--sage:#8ca98c;--green:#6f8f6f;--gold:#c9a65a;--taupe:#d6c4b4;--ink:#3f3835}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Poppins,sans-serif}.nav{height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4.5vw;border-bottom:1px solid rgba(111,143,111,.18);position:relative;z-index:20;background:rgba(255,253,247,.96)}.wordmark{font:600 11px Poppins;letter-spacing:.28em;color:var(--green);text-decoration:none}.nav nav{display:flex;gap:34px}.nav nav a,.nav-cta{font-size:10px;letter-spacing:.13em;text-transform:uppercase;text-decoration:none;color:var(--ink)}.nav-cta{justify-self:end;color:var(--deep);font-weight:600}.nav-cta span{margin-left:8px}.hero{min-height:calc(100vh - 76px);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-inner{text-align:center;width:min(940px,90vw);padding:45px 0 70px}.hero-kicker{font-size:9px;letter-spacing:.35em;color:var(--green);font-weight:600;margin-bottom:12px}.crest{width:min(570px,60vw);height:auto;display:block;margin:0 auto}.hero-bottom{display:flex;align-items:center;justify-content:center;gap:50px;margin-top:5px}.hero-bottom p{font:italic 20px 'Cormorant Garamond';margin:0}.hero-bottom a,.about-copy a{font-size:9px;letter-spacing:.18em;font-weight:600;color:var(--deep);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:8px}.scroll{position:absolute;right:3vw;bottom:42px;writing-mode:vertical-rl;font-size:7px;letter-spacing:.28em;color:var(--green);display:flex;align-items:center;gap:10px}.scroll i{height:48px;width:1px;background:var(--gold)}.manifesto{min-height:720px;background:var(--deep);color:var(--ivory);display:grid;grid-template-columns:.4fr 1.4fr .8fr;gap:6vw;align-items:center;padding:8vw;position:relative}.manifesto-number{font:500 130px 'Cormorant Garamond';color:rgba(255,255,255,.08);align-self:start}.script{font:400 35px Allura;color:var(--pink)}.manifesto h1{font:500 clamp(62px,7vw,112px)/.78 'Cormorant Garamond';letter-spacing:-.04em;margin:15px 0}.manifesto h1 em{color:var(--pink);font-weight:500}.manifesto-note{font:400 18px/1.8 'Cormorant Garamond';max-width:390px;align-self:end;margin-bottom:70px}.manifesto-note em{color:var(--pink)}.create{padding:130px 0 0}.section-head{display:grid;grid-template-columns:.5fr 1.1fr 1fr;gap:5vw;align-items:end;width:min(1260px,86vw);margin:0 auto 80px}.section-head>span,.process small,.order small,.about-copy small{font-size:9px;letter-spacing:.3em;font-weight:600;color:var(--green)}.section-head h2,.process h2,.order h2,.about-copy h2{font:500 clamp(52px,5vw,80px)/.92 'Cormorant Garamond';margin:0}.section-head h2 em,.process h2 em,.order h2 em,.about-copy h2 em{color:var(--deep);font-weight:500}.section-head p{font:300 13px/1.9 Poppins;margin:0;max-width:420px}.category-stage{display:grid;grid-template-columns:1fr 1fr}.cat{min-height:470px;padding:65px 7vw;position:relative;border-top:1px solid var(--linen);border-right:1px solid var(--linen)}.cat b{position:absolute;right:4vw;top:35px;font:500 54px 'Cormorant Garamond';color:var(--linen)}.cat small{font-size:8px;letter-spacing:.28em;color:var(--green);font-weight:600}.cat h3{font:500 55px/.95 'Cormorant Garamond';margin:65px 0 20px}.cat p{max-width:450px;font-size:12px;line-height:1.8}.cat a{display:inline-block;margin-top:50px;color:var(--deep);text-decoration:none;font-size:8px;letter-spacing:.2em;font-weight:600}.cat-2{background:var(--petal)}.cat-3{background:rgba(140,169,140,.18)}.cat-3 h3{color:var(--green)}.cat-4 h3{color:var(--deep)}.statement{padding:140px 7vw;background:var(--ivory)}.statement-inner{max-width:1100px;margin:auto;text-align:center}.statement h2{font:500 clamp(60px,6vw,95px)/.9 'Cormorant Garamond';margin:15px 0 35px}.statement h2 em{color:var(--deep);font-weight:500}.gold-line{width:1px;height:80px;background:var(--gold);margin:40px auto}.statement p{max-width:650px;margin:auto;font:400 20px/1.7 'Cormorant Garamond'}.about{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:var(--sand)}.about-photo{position:relative;padding:80px 4vw 80px 8vw;display:flex;align-items:center}.photo-block{width:78%;height:590px;overflow:hidden;background:var(--petal)}.photo-block img{width:100%;height:100%;object-fit:cover}.vertical{writing-mode:vertical-rl;font-size:8px;letter-spacing:.25em;color:var(--green);margin-left:22px}.about-copy{padding:100px 9vw 90px 5vw;display:flex;flex-direction:column;justify-content:center}.about-copy h2{margin:25px 0 35px}.about-copy p{font-size:13px;line-height:1.9;max-width:560px}.about-copy a{align-self:flex-start;margin-top:30px}.process{padding:130px 7vw;background:var(--ivory)}.process-title{display:flex;justify-content:space-between;align-items:flex-end;width:min(1280px,90vw);margin:0 auto 90px}.process-title small{align-self:flex-start;margin-top:12px}.steps{width:min(1280px,90vw);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--taupe)}.steps article{padding:55px 55px 40px 0;border-right:1px solid var(--taupe);min-height:300px}.steps article+article{padding-left:55px}.steps article:last-child{border-right:0}.steps span{font:500 45px 'Cormorant Garamond';color:var(--pink)}.steps h3{font:500 34px 'Cormorant Garamond';margin:45px 0 15px}.steps p{font-size:12px;line-height:1.8}.order{display:grid;grid-template-columns:.75fr 1.25fr;background:var(--green);padding:110px 7vw;color:var(--ivory);gap:7vw}.order-intro h2{margin:25px 0 30px}.order-intro h2 em{color:var(--petal)}.order-intro small{color:var(--petal)}.order-intro>p{font:400 19px/1.7 'Cormorant Garamond';max-width:430px}.rush{margin-top:65px;padding-top:20px;border-top:1px solid rgba(255,255,255,.25);display:flex;flex-direction:column;gap:6px}.rush b{font:500 22px 'Cormorant Garamond'}.rush span{font-size:10px}.order-form{background:var(--ivory);color:var(--ink);padding:55px}.row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.order-form label{display:flex;flex-direction:column;font-size:8px;letter-spacing:.2em;color:var(--green);font-weight:600;margin-bottom:28px}.order-form input,.order-form textarea,.order-form select{border:0;border-bottom:1px solid var(--taupe);background:transparent;padding:14px 2px;font:400 12px Poppins;color:var(--ink);outline:none}.order-form textarea{resize:vertical}.order-form .check{display:block;letter-spacing:0;font-weight:400;color:var(--ink);font-size:10px}.order-form button{border:0;background:var(--deep);color:white;padding:18px 28px;font:600 8px Poppins;letter-spacing:.18em}.order-form button span{margin-left:20px}.finale{min-height:600px;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(rgba(255,253,247,.9),rgba(255,253,247,.9)),url('assets/blush-cream-texture.png') center/cover}.finale span{font-size:8px;letter-spacing:.35em;color:var(--green);font-weight:600}.finale h2{font:500 clamp(62px,7vw,105px)/.82 'Cormorant Garamond';margin:35px 0}.finale h2 em{color:var(--deep);font-weight:500}.finale a{font-size:9px;letter-spacing:.2em;color:var(--deep);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:9px}footer{text-align:center;padding:75px 5vw 40px;background:var(--ivory)}footer img{width:240px}.footer-links{display:flex;justify-content:center;gap:35px;margin:35px 0}.footer-links a{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);text-decoration:none}footer p{font:italic 15px 'Cormorant Garamond'}footer small{font-size:8px;color:#8c817b}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){.nav{grid-template-columns:1fr auto;height:66px;padding:0 20px}.nav nav{display:none}.wordmark{font-size:9px}.nav-cta{font-size:8px}.hero{min-height:calc(100svh - 66px)}.hero-inner{padding:30px 0 80px}.crest{width:92vw}.hero-kicker{font-size:7px}.hero-bottom{flex-direction:column;gap:20px}.hero-bottom p{font-size:18px}.scroll{display:none}.manifesto{grid-template-columns:1fr;padding:90px 25px;min-height:auto;gap:15px}.manifesto-number{font-size:80px;position:absolute;right:20px;top:15px}.script{font-size:30px}.manifesto h1{font-size:58px}.manifesto-note{margin:30px 0 0;align-self:auto}.create{padding-top:80px}.section-head{grid-template-columns:1fr;width:auto;margin:0 25px 50px;gap:20px}.section-head h2{font-size:52px}.category-stage{grid-template-columns:1fr}.cat{min-height:390px;padding:50px 28px}.cat h3{font-size:48px;margin-top:55px}.statement{padding:90px 25px}.statement h2{font-size:55px}.about{grid-template-columns:1fr}.about-photo{padding:55px 25px 0}.photo-block{width:90%;height:460px}.about-copy{padding:60px 25px 80px}.about-copy h2{font-size:50px}.process{padding:85px 25px}.process-title{display:block;width:auto;margin-bottom:50px}.process-title h2{font-size:50px;margin-top:20px}.steps{grid-template-columns:1fr;width:auto}.steps article,.steps article+article{padding:35px 0;border-right:0;border-bottom:1px solid var(--taupe);min-height:auto}.order{grid-template-columns:1fr;padding:80px 25px;gap:45px}.order-intro h2{font-size:55px}.order-form{padding:30px 22px}.row{grid-template-columns:1fr;gap:0}.finale{min-height:500px;padding:70px 25px}.finale h2{font-size:58px}.footer-links{flex-wrap:wrap;gap:18px 25px}}

/* V42 WOW PASS — same V41 language, more art direction */
body{overflow-x:hidden}.nav{position:sticky;top:0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:box-shadow .3s ease,background .3s ease}.nav.scrolled{box-shadow:0 8px 28px rgba(63,56,53,.055);background:rgba(255,253,247,.9)}.nav a{transition:color .25s ease}.nav nav a:hover{color:var(--deep)}.nav-cta{position:relative}.nav-cta:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--gold);transition:width .35s ease}.nav-cta:hover:after{width:100%}
.hero:before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(252,238,240,.7) 0%,rgba(252,238,240,.22) 42%,transparent 70%);filter:blur(4px);z-index:-1}.hero-inner{position:relative}.hero-kicker{animation:heroFade .9s .1s both}.crest{animation:crestIn 1.2s .18s cubic-bezier(.2,.75,.2,1) both;filter:drop-shadow(0 20px 24px rgba(63,56,53,.035))}.hero-bottom{animation:heroFade .9s .72s both}.hero-rule{position:absolute;top:50%;width:clamp(70px,12vw,210px);height:1px;background:linear-gradient(90deg,transparent,var(--taupe));opacity:.75}.hero-rule-left{left:3vw}.hero-rule-right{right:3vw;transform:scaleX(-1)}@keyframes crestIn{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:none}}@keyframes heroFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.manifesto{overflow:hidden}.manifesto:after{content:"THE GRATEFUL HEART";position:absolute;right:-30px;bottom:-20px;font:500 clamp(100px,15vw,250px)/.7 'Cormorant Garamond';letter-spacing:-.06em;color:rgba(255,255,255,.025);white-space:nowrap;pointer-events:none}.manifesto-stitch{position:absolute;left:0;top:0;width:100%;height:8px;background:repeating-linear-gradient(90deg,transparent 0 16px,rgba(255,255,255,.24) 16px 22px,transparent 22px 38px)}.manifesto-copy{position:relative}.manifesto-copy:before{content:"";position:absolute;left:-28px;top:12px;width:1px;height:0;background:var(--gold);transition:height 1.2s .3s ease}.manifesto-copy.visible:before,.manifesto:has(.manifesto-copy .visible):before{height:86%}.manifesto-note{position:relative}.manifesto-note:before{content:"“";position:absolute;left:-42px;top:-34px;font:500 76px 'Cormorant Garamond';color:rgba(239,170,180,.35)}
.section-head{position:relative}.section-head:after{content:"";position:absolute;left:0;bottom:-35px;width:70px;height:1px;background:var(--gold)}.category-stage{border-bottom:1px solid var(--linen)}.cat{overflow:hidden;transition:background .45s ease}.cat:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(201,166,90,.16);border-radius:50%;right:-105px;bottom:-105px;transition:transform .6s ease,opacity .6s ease;opacity:0}.cat:hover:after{transform:scale(1.25);opacity:1}.cat h3{transition:transform .35s ease}.cat:hover h3{transform:translateX(7px)}.cat a{position:relative}.cat a:after{content:"";display:block;width:28px;height:1px;background:var(--gold);margin-top:9px;transition:width .35s ease}.cat:hover a:after{width:62px}
.statement{position:relative;overflow:hidden}.statement-tag{position:absolute;left:3vw;top:50%;transform:rotate(-90deg) translateX(-50%);transform-origin:left top;font-size:7px;letter-spacing:.32em;color:var(--green)}.statement-inner{position:relative}.statement-inner:before,.statement-inner:after{content:"";position:absolute;top:46%;width:clamp(45px,7vw,120px);height:1px;background:var(--linen)}.statement-inner:before{left:-10vw}.statement-inner:after{right:-10vw}.gold-line{position:relative}.gold-line:after{content:"";position:absolute;width:7px;height:7px;border:1px solid var(--gold);border-radius:50%;left:-3px;bottom:-7px;background:var(--ivory)}
.about{position:relative}.about:after{content:"";position:absolute;right:0;top:0;width:11px;height:100%;background:linear-gradient(var(--pink),var(--gold),var(--green));opacity:.6}.about-photo{overflow:visible}.photo-block{position:relative;box-shadow:24px 24px 0 rgba(252,238,240,.8);clip-path:polygon(0 0,92% 0,100% 8%,100% 100%,8% 100%,0 92%);transition:transform .55s cubic-bezier(.2,.7,.2,1)}.photo-block:hover{transform:translate(-5px,-5px)}.photo-block:after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,253,247,.55);pointer-events:none}.photo-accent{position:absolute;left:4.5vw;top:55px;font:500 110px/1 'Cormorant Garamond';color:rgba(185,79,99,.08);z-index:0}.photo-block{z-index:1}.about-copy h2{position:relative}.about-copy h2:after{content:"";display:block;width:74px;height:1px;background:var(--gold);margin-top:28px}.about-copy p:first-of-type:first-letter{font:500 44px/.8 'Cormorant Garamond';float:left;color:var(--deep);padding:7px 7px 0 0}
.process{position:relative;overflow:hidden}.process-watermark{position:absolute;right:-20px;top:10px;font:400 120px Allura;color:rgba(217,103,121,.055);transform:rotate(-5deg);pointer-events:none}.steps article{position:relative;transition:background .35s ease,padding-left .35s ease}.steps article:hover{background:linear-gradient(180deg,rgba(252,238,240,.36),transparent)}.steps article:before{content:"";position:absolute;top:-1px;left:0;width:0;height:2px;background:var(--deep);transition:width .5s ease}.steps article:hover:before{width:100%}
.order{position:relative;overflow:hidden}.order-thread{position:absolute;left:-30px;top:28px;width:150px;height:150px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:38px 22px 0 -37px rgba(255,255,255,.3),76px 44px 0 -74px rgba(255,255,255,.3)}.order-form{position:relative;box-shadow:20px 20px 0 rgba(63,56,53,.07)}.order-form:before{content:"CUSTOM REQUEST";position:absolute;right:28px;top:20px;font-size:7px;letter-spacing:.3em;color:rgba(111,143,111,.45)}.order-form input:focus,.order-form textarea:focus,.order-form select:focus{border-bottom-color:var(--deep)}.order-form button{transition:transform .25s ease,box-shadow .25s ease}.order-form button:hover{transform:translateY(-2px);box-shadow:6px 6px 0 var(--gold)}
.finale{position:relative;overflow:hidden}.finale:before,.finale:after{content:"";position:absolute;width:140px;height:1px;background:var(--gold);top:50%;opacity:.45}.finale:before{left:4vw}.finale:after{right:4vw}.finale>div{position:relative}.finale>div:after{content:"♥";display:block;color:var(--pink);font-size:12px;margin:26px auto 0;opacity:.8}footer{border-top:1px solid rgba(214,196,180,.35)}
.reveal{transition-duration:.9s;transition-timing-function:cubic-bezier(.2,.7,.2,1)}.cat:nth-child(2).reveal{transition-delay:.08s}.cat:nth-child(3).reveal{transition-delay:.12s}.cat:nth-child(4).reveal{transition-delay:.18s}.steps article:nth-child(2).reveal{transition-delay:.1s}.steps article:nth-child(3).reveal{transition-delay:.2s}
@media(max-width:800px){.hero-rule,.statement-tag,.statement-inner:before,.statement-inner:after,.finale:before,.finale:after,.process-watermark,.photo-accent{display:none}.hero:before{width:390px;height:390px}.manifesto:after{font-size:100px}.manifesto-stitch{height:6px}.photo-block{box-shadow:12px 12px 0 rgba(252,238,240,.8)}.about:after{width:6px}.order-thread{opacity:.45}.order-form{box-shadow:10px 10px 0 rgba(63,56,53,.07)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.crest,.hero-kicker,.hero-bottom{animation:none}.reveal{transition:none}.cat h3,.photo-block,.order-form button{transition:none}}

/* V43 — VOLUME UP: V41 design DNA with movement, scale, texture and less dead space */
:root{--micro:12px;--small:13px}
.nav{height:82px;padding:0 4vw}.wordmark{font-size:13px;letter-spacing:.24em}.nav nav a,.nav-cta{font-size:12px;letter-spacing:.12em}.nav nav{gap:40px}.nav-cta span{font-size:14px}
.hero{min-height:calc(92vh - 82px)}.hero-inner{padding:28px 0 42px}.hero-kicker{font-size:11px;letter-spacing:.31em;margin-bottom:2px}.crest{width:min(600px,55vw)}.hero-bottom{gap:54px;margin-top:-4px}.hero-bottom p{font-size:23px}.hero-bottom a,.about-copy a{font-size:12px;letter-spacing:.15em;padding-bottom:9px}.scroll{font-size:9px;right:2vw;bottom:28px}.hero-rule{width:clamp(90px,14vw,235px)}
.ghost-word{position:absolute;z-index:0;pointer-events:none;user-select:none;white-space:nowrap;font:600 clamp(130px,20vw,330px)/.72 'Cormorant Garamond';letter-spacing:-.07em;color:rgba(185,79,99,.045);text-transform:uppercase;will-change:transform}.create,.statement,.about,.process,.order{position:relative;overflow:hidden}.ghost-create{right:-2vw;top:20px;color:rgba(111,143,111,.055)}.ghost-personal{left:-4vw;bottom:22px;color:rgba(185,79,99,.05)}.ghost-lauren{left:-2vw;top:15px;color:rgba(185,79,99,.055)}.ghost-yours{right:-4vw;bottom:18px;color:rgba(111,143,111,.05)}.ghost-custom{left:-3vw;bottom:8px;color:rgba(255,255,255,.045)}
.manifesto{min-height:610px;padding:6vw 7vw;grid-template-columns:.3fr 1.5fr .75fr;gap:5vw}.manifesto-number{font-size:145px}.script{font-size:42px}.manifesto h1{font-size:clamp(72px,7vw,118px);line-height:.76}.manifesto-note{font-size:21px;line-height:1.65;margin-bottom:40px}.manifesto:after{color:rgba(255,255,255,.045)}
.create{padding:92px 0 0}.create:before{content:"";position:absolute;right:-9vw;top:-70px;width:40vw;height:330px;background:url('assets/pink-linen.png') center/cover;opacity:.18;transform:rotate(4deg);mask-image:linear-gradient(115deg,transparent 5%,#000 48%,transparent 100%);-webkit-mask-image:linear-gradient(115deg,transparent 5%,#000 48%,transparent 100%);pointer-events:none}.section-head{width:min(1320px,90vw);margin-bottom:55px;grid-template-columns:.45fr 1.15fr .9fr}.section-head>span,.process small,.order small,.about-copy small{font-size:12px;letter-spacing:.25em}.section-head h2{font-size:clamp(60px,5.5vw,88px)}.section-head p{font-size:15px;line-height:1.75}.category-stage{position:relative;z-index:1}.cat{min-height:390px;padding:62px 6vw}.cat small{font-size:11px;letter-spacing:.22em}.cat b{font-size:36px}.cat h3{font-size:clamp(48px,4vw,68px);line-height:.92;margin-top:48px}.cat p{font-size:14px;line-height:1.7;max-width:470px}.cat a{font-size:11px;letter-spacing:.16em}
.statement{padding:100px 5vw 105px;min-height:540px;display:flex;align-items:center}.statement:before{content:"";position:absolute;inset:0;background:url('assets/blush-cream-texture.png') center/cover;opacity:.18;mask-image:linear-gradient(90deg,transparent 0,#000 24%,#000 76%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 24%,#000 76%,transparent 100%)}.statement-inner{z-index:1}.statement .script{font-size:42px}.statement h2{font-size:clamp(68px,6.4vw,105px);line-height:.88}.statement p{font-size:19px;line-height:1.55;max-width:760px}.statement-tag{font-size:9px}
.about{min-height:650px;grid-template-columns:.9fr 1.1fr}.about:before{content:"";position:absolute;left:0;bottom:-80px;width:42vw;height:300px;background:url('assets/pink-linen.png') center/cover;opacity:.12;transform:rotate(-3deg);mask-image:linear-gradient(35deg,#000,transparent 72%);-webkit-mask-image:linear-gradient(35deg,#000,transparent 72%)}.about-photo{padding:70px 5vw}.photo-block{height:500px;width:min(520px,88%)}.about-copy{padding:75px 7vw 75px 3vw;position:relative;z-index:2}.about-copy h2{font-size:clamp(58px,5vw,82px);line-height:.9}.about-copy p{font-size:15px;line-height:1.8;max-width:620px}.photo-accent{font-size:160px;top:35px}.vertical{font-size:9px}
.process{padding:95px 0 80px}.process-title{width:min(1260px,88vw);margin-bottom:55px}.process-title small{font-size:12px}.process-title h2{font-size:clamp(62px,5.6vw,92px);line-height:.9}.process-watermark{font-size:175px;color:rgba(217,103,121,.075);top:-10px}.steps{width:min(1260px,88vw)}.steps article{min-height:245px;padding:48px 42px}.steps article span{font-size:32px}.steps h3{font-size:32px}.steps p{font-size:14px;line-height:1.7}
.order{padding:85px 6vw;gap:5vw;grid-template-columns:.8fr 1.25fr;background:var(--green)}.order:before{content:"";position:absolute;inset:0;background:url('assets/green-linen.png') center/cover;opacity:.14;mix-blend-mode:soft-light}.order-intro,.order-form{position:relative;z-index:2}.order-intro small{color:#fff;font-size:12px}.order-intro h2{font-size:clamp(64px,5.8vw,92px);line-height:.88}.order-intro p{font-size:17px;line-height:1.7;max-width:510px}.rush b{font-size:21px}.rush span{font-size:12px}.order-form{padding:52px 48px}.order-form label{font-size:10px;letter-spacing:.19em}.order-form input,.order-form textarea,.order-form select{font-size:14px}.order-form .check{font-size:11px;letter-spacing:0}.order-form button{font-size:11px;letter-spacing:.17em;padding:18px 28px}
.finale{min-height:560px;padding:80px 5vw}.finale span{font-size:11px}.finale h2{font-size:clamp(72px,7vw,112px);line-height:.8;margin:30px 0}.finale a{font-size:12px}.finale:before,.finale:after{width:180px}.finale>div:before{content:"MADE FOR YOU";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:600 clamp(130px,19vw,300px)/.8 'Cormorant Garamond';letter-spacing:-.06em;color:rgba(185,79,99,.035);white-space:nowrap;z-index:-1}
footer{padding:58px 5vw 34px}footer img{width:280px}.footer-links a{font-size:10px}.footer-links{margin:28px 0}footer p{font-size:17px}footer small{font-size:10px}
@media(max-width:800px){.nav{height:70px}.wordmark{font-size:10px}.nav-cta{font-size:10px}.hero{min-height:calc(88svh - 70px)}.hero-kicker{font-size:8px}.crest{width:94vw}.hero-bottom a,.about-copy a{font-size:10px}.ghost-word{font-size:110px;opacity:.8}.manifesto{padding:75px 25px}.manifesto h1{font-size:60px}.manifesto-note{font-size:18px}.create{padding-top:65px}.create:before{width:90vw;opacity:.12}.section-head>span,.process small,.order small,.about-copy small{font-size:10px}.section-head p{font-size:14px}.cat{min-height:350px;padding:45px 28px}.cat h3{font-size:50px}.cat p{font-size:13px}.cat a{font-size:10px}.statement{padding:75px 25px;min-height:450px}.statement h2{font-size:57px}.statement p{font-size:17px}.about{min-height:auto}.photo-block{height:450px}.about-copy{padding:55px 25px 70px}.about-copy h2{font-size:52px}.process{padding:70px 25px}.process-title{width:auto}.process-title h2{font-size:53px}.steps{width:auto}.steps article{padding:32px 0;min-height:auto}.steps h3{font-size:29px}.order{padding:70px 25px}.order-intro h2{font-size:57px}.order-form{padding:34px 24px}.finale{min-height:470px}.finale h2{font-size:60px}.finale>div:before{font-size:100px}.footer-links a{font-size:9px}}

/* V44 — BALANCE + GOLD: fewer ghost words, richer two-tone fields, deliberate antique-gold details */
.hero-rule{display:none!important}

/* Keep oversized opacity as a special moment, not a default device */
.ghost-create,.ghost-lauren,.ghost-yours,.ghost-custom{display:none!important}
.finale>div:before{display:none!important}
.process-watermark{display:none!important}

/* Gold now acts like jewelry: edges, numbers, rules and interaction details */
.hero-bottom a,.about-copy a,.finale a{border-bottom:2px solid var(--gold)}
.hero-bottom a span,.nav-cta span,.cat a,.about-copy a span,.order-form button span{color:var(--gold)}
.manifesto{border-top:6px solid var(--gold)}
.manifesto-number{color:rgba(201,166,90,.25)}
.manifesto-copy{position:relative}
.manifesto-copy:before{content:"";position:absolute;left:-30px;top:8px;width:2px;height:72%;background:linear-gradient(var(--gold),rgba(201,166,90,.12))}
.manifesto-note{border-left:1px solid rgba(201,166,90,.55);padding-left:28px}

/* Create section: ivory editorial intro flowing into a more designed two-tone merchandising grid */
.create{background:linear-gradient(110deg,var(--ivory) 0 72%,rgba(252,238,240,.55) 72% 100%)}
.create:before{opacity:.11;right:-12vw;width:36vw}
.section-head>span{position:relative;padding-top:20px}
.section-head>span:before{content:"";position:absolute;top:0;left:0;width:58px;height:2px;background:var(--gold)}
.category-stage{border-top:1px solid rgba(201,166,90,.55)}
.cat{border-color:rgba(201,166,90,.38)}
.cat b{color:rgba(201,166,90,.72)}
.cat small{color:var(--green)}
.cat a{border-bottom:1px solid var(--gold);padding-bottom:8px}
.cat-1{background:var(--ivory)}
.cat-2{background:linear-gradient(135deg,var(--petal) 0 78%,rgba(239,170,180,.22) 78%)}
.cat-3{background:linear-gradient(135deg,rgba(140,169,140,.23) 0 78%,rgba(201,166,90,.10) 78%)}
.cat-4{background:linear-gradient(135deg,var(--ivory) 0 78%,rgba(243,233,220,.9) 78%)}
.cat:after{content:"";position:absolute;right:0;bottom:0;width:78px;height:78px;border-right:3px solid rgba(201,166,90,.45);border-bottom:3px solid rgba(201,166,90,.45);opacity:.75}

/* One intentional opaque keyword moment lives here */
.statement{background:linear-gradient(90deg,var(--ivory) 0 74%,var(--petal) 74% 100%)}
.statement:before{opacity:.11}
.ghost-personal{display:block!important;color:rgba(185,79,99,.038);bottom:8px}
.statement-inner:before,.statement-inner:after{background:var(--gold);opacity:.55}
.gold-line{width:2px;background:linear-gradient(var(--gold),var(--pink));height:68px}
.statement-tag{color:var(--green)}

/* Lauren: a genuine two-tone editorial spread */
.about{background:linear-gradient(90deg,var(--sand) 0 47%,var(--petal) 47% 100%);position:relative}
.about:after{content:"";position:absolute;left:47%;top:0;bottom:0;width:7px;background:linear-gradient(var(--gold),rgba(201,166,90,.18),var(--gold));z-index:1}
.about:before{opacity:.08;width:37vw}
.photo-block{box-shadow:18px 18px 0 rgba(201,166,90,.22)}
.photo-block:after{border-color:rgba(201,166,90,.6)}
.about-copy small{color:var(--green)}
.about-copy h2:after{height:2px;width:90px}
.vertical{color:var(--deep);font-size:10px}

/* Process: less empty, two-tone edge field, gold structure, no giant ghost typography */
.process{background:linear-gradient(90deg,var(--ivory) 0 82%,rgba(243,233,220,.78) 82% 100%);padding-top:82px;padding-bottom:72px}
.process:before{content:"";position:absolute;right:0;top:0;width:18%;height:100%;background:url('assets/blush-cream-texture.png') center/cover;opacity:.12;pointer-events:none}
.process-title{position:relative;z-index:1;margin-bottom:42px}
.process-title small{position:relative;padding-top:18px}
.process-title small:before{content:"";position:absolute;left:0;top:0;width:60px;height:2px;background:var(--gold)}
.steps{position:relative;z-index:1;border-top:2px solid rgba(201,166,90,.65)}
.steps article{border-right-color:rgba(201,166,90,.42)}
.steps article span{color:var(--gold)}
.steps article:before{background:var(--deep)}

/* Order: sage + deep green tonal split with gold edge; texture remains tactile, not wallpaper */
.order{background:linear-gradient(105deg,var(--green) 0 43%,#789878 43% 100%);border-top:6px solid var(--gold);border-bottom:1px solid rgba(201,166,90,.65)}
.order:before{opacity:.10}
.order-thread{display:none}
.order-intro{padding-right:2vw}
.order-intro small{color:var(--petal)}
.rush{border-top:2px solid rgba(201,166,90,.62)}
.order-form{box-shadow:18px 18px 0 rgba(201,166,90,.24);border-top:4px solid var(--gold)}
.order-form:before{color:rgba(201,166,90,.78);font-size:9px}
.order-form label{font-size:11px}
.order-form button{border-bottom:3px solid var(--gold)}

/* Finale stays calm after the energetic order section, with one crisp gold frame detail */
.finale{min-height:510px;background:linear-gradient(rgba(255,253,247,.88),rgba(255,253,247,.88)),url('assets/blush-cream-texture.png') center/cover}
.finale:before,.finale:after{width:120px;height:2px;opacity:.7}
.finale>div:after{color:var(--gold);font-size:15px}

/* Functional copy remains comfortably legible */
.section-head>span,.process small,.order small,.about-copy small{font-size:13px}
.cat small{font-size:12px}.cat a{font-size:12px}.hero-kicker{font-size:12px}
.order-form label{font-size:11px}.order-form .check{font-size:12px}.order-form button{font-size:12px}
.footer-links a{font-size:11px}

@media(max-width:800px){
  .create{background:var(--ivory)}
  .statement{background:linear-gradient(180deg,var(--ivory) 0 80%,var(--petal) 80%)}
  .ghost-personal{font-size:105px!important;opacity:.55}
  .about{background:linear-gradient(180deg,var(--sand) 0 48%,var(--petal) 48% 100%)}
  .about:after{left:0;right:0;top:48%;bottom:auto;width:100%;height:5px}
  .process{background:linear-gradient(180deg,var(--ivory) 0 90%,var(--sand) 90%)}
  .process:before{display:none}
  .order{background:linear-gradient(160deg,var(--green) 0 48%,#789878 48% 100%)}
  .manifesto-copy:before,.manifesto-note{border-left:0;padding-left:0}
  .manifesto-copy:before{display:none}
  .section-head>span,.process small,.order small,.about-copy small{font-size:11px}
  .cat small,.cat a{font-size:11px}
  .order-form label,.order-form .check,.order-form button{font-size:11px}
}

/* ============================================================
   V45 — FLOW + FINALE REFINEMENT
   ============================================================ */
/* 01 — What I Create: lose the wedge/block feeling. The blush arrives as a soft wash. */
.create{background:var(--ivory)}
.create:after{content:"";position:absolute;z-index:0;right:-8vw;top:-40px;width:52vw;height:390px;pointer-events:none;background:radial-gradient(ellipse at 72% 34%,rgba(239,170,180,.22) 0%,rgba(252,238,240,.16) 35%,rgba(255,253,247,0) 72%);filter:blur(8px)}
.section-head{position:relative;z-index:2}
.category-stage{position:relative;z-index:2}
.cat-2{background:linear-gradient(145deg,var(--petal) 0%,rgba(252,238,240,.92) 56%,rgba(239,170,180,.12) 100%)}
.cat-3{background:linear-gradient(145deg,rgba(140,169,140,.18),rgba(243,233,220,.55))}
.cat-4{background:linear-gradient(145deg,var(--ivory),rgba(243,233,220,.62))}
.cat:after{display:none}

/* 02 — Personal statement: the blush is an internal atmospheric glow, never a column that leaks downward. */
.statement{background:var(--ivory);isolation:isolate}
.statement:before{content:"";position:absolute;z-index:-1;right:-4%;top:3%;width:42%;height:94%;background:radial-gradient(ellipse at 70% 48%,rgba(252,238,240,.9),rgba(252,238,240,.38) 48%,transparent 76%);opacity:1;pointer-events:none}
.statement:after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;height:100px;background:linear-gradient(to bottom,transparent,var(--ivory));pointer-events:none}
.ghost-personal{color:rgba(185,79,99,.026);bottom:30px}

/* 03 — Lauren: remove dead initials; soften the seam; add one restrained background phrase to the pink field. */
.photo-accent{display:none!important}
.about{background:linear-gradient(90deg,var(--sand) 0%,rgba(243,233,220,.98) 42%,rgba(250,237,232,.88) 50%,var(--petal) 61%,var(--petal) 100%)}
.about:after{left:47%;width:90px;background:linear-gradient(90deg,transparent,rgba(201,166,90,.14),transparent);z-index:0}
.about-copy{position:relative;z-index:2;overflow:hidden}
.about-copy:before{content:"made with heart";position:absolute;right:-1.5vw;top:9%;font:400 clamp(72px,9vw,150px)/.8 Allura;color:rgba(185,79,99,.055);white-space:nowrap;transform:rotate(-5deg);pointer-events:none;z-index:-1}
.photo-block{box-shadow:16px 18px 34px rgba(201,166,90,.13)}

/* 04 — How it works becomes a stitched journey rather than three equal spreadsheet cells. */
.process{background:linear-gradient(110deg,var(--ivory) 0%,var(--ivory) 63%,rgba(243,233,220,.44) 82%,rgba(252,238,240,.28) 100%);padding-top:92px;padding-bottom:98px}
.process:before{display:none}
.process-title{grid-template-columns:.55fr 1.45fr;align-items:start}
.process-title small{padding-top:22px}
.steps{border-top:0;gap:28px;align-items:stretch}
.steps:before{content:"";position:absolute;left:8%;right:8%;top:39px;height:2px;background:repeating-linear-gradient(90deg,rgba(201,166,90,.7) 0 8px,transparent 8px 17px);z-index:0}
.steps article{position:relative;z-index:1;border:0!important;padding:76px 36px 38px;min-height:270px;background:rgba(255,253,247,.72);box-shadow:0 18px 45px rgba(63,56,53,.035)}
.steps article:nth-child(2){transform:translateY(28px);background:rgba(252,238,240,.58)}
.steps article:nth-child(3){transform:translateY(4px);background:rgba(243,233,220,.58)}
.steps article span{position:absolute;top:17px;left:32px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--ivory);border:1px solid rgba(201,166,90,.62);font-size:22px;box-shadow:0 0 0 8px var(--ivory)}
.steps article:nth-child(2) span{background:var(--petal);box-shadow:0 0 0 8px var(--petal)}
.steps article:nth-child(3) span{background:var(--sand);box-shadow:0 0 0 8px var(--sand)}
.steps article:before{display:none}
.steps h3{font-size:34px;margin-top:8px}
.steps p{font-size:14px;line-height:1.75}

/* 05 — Green order section: keep it, but make the tonal split dissolve instead of slice. */
.order{background:linear-gradient(105deg,var(--green) 0%,var(--green) 34%,#759575 49%,#789878 68%,#789878 100%)}
.order:after{content:"";position:absolute;left:33%;top:-8%;width:24%;height:116%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.045),transparent);filter:blur(26px);pointer-events:none}

/* 06 — A real closing act: layered finale + useful, branded footer instead of empty cream. */
.finale{min-height:610px;padding:105px 5vw 120px;background:linear-gradient(118deg,rgba(255,253,247,.96) 0 48%,rgba(252,238,240,.76) 72%,rgba(243,233,220,.82) 100%),url('assets/blush-cream-texture.png') center/cover;border-top:1px solid rgba(201,166,90,.42)}
.finale:before{content:"made for you";display:block;position:absolute;left:-2vw;top:35%;width:auto;height:auto;background:none;font:400 clamp(95px,15vw,230px)/.8 Allura;color:rgba(185,79,99,.05);white-space:nowrap;opacity:1;transform:rotate(-4deg)}
.finale:after{content:"";position:absolute;right:-9vw;bottom:-15vw;width:38vw;height:38vw;border:1px solid rgba(201,166,90,.16);border-radius:50%;background:radial-gradient(circle,rgba(140,169,140,.08),transparent 66%);opacity:1}
.finale>div{z-index:2;max-width:1050px}
.finale>div:after{content:"♥";font-size:17px;color:var(--gold)}
.finale h2{margin:26px 0 38px}
footer{position:relative;text-align:left;padding:0;background:var(--green);color:var(--ivory);border-top:5px solid var(--gold);overflow:hidden}
footer:before{content:"GRATEFUL";position:absolute;right:-2vw;bottom:-30px;font:600 clamp(100px,15vw,230px)/.8 'Cormorant Garamond';letter-spacing:-.05em;color:rgba(255,255,255,.035);pointer-events:none}
footer img{width:310px;filter:brightness(0) invert(1);opacity:.96}
footer .footer-links{justify-content:flex-start;gap:30px;margin:34px 0 0;flex-wrap:wrap}
footer .footer-links a{color:var(--ivory);font-size:12px;font-weight:500}
footer p{font-size:18px;margin:0;color:rgba(255,253,247,.88)}
footer small{font-size:10px;color:rgba(255,253,247,.65)}
.footer-shell{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:end;width:min(1360px,88vw);margin:auto;padding:78px 0 62px;position:relative;z-index:2}
.footer-signoff{font:500 clamp(42px,4.5vw,68px)/.95 'Cormorant Garamond';margin:0 0 24px;color:var(--ivory)}
.footer-signoff em{color:var(--pink);font-weight:500}
.footer-right{border-left:1px solid rgba(201,166,90,.45);padding-left:48px}
.footer-right .footer-eyebrow{display:block;font-size:11px;letter-spacing:.28em;color:var(--pink);font-weight:600;margin-bottom:18px}
.footer-right .footer-cta{display:inline-block;margin:28px 0 34px;color:var(--ivory);text-decoration:none;font-size:13px;letter-spacing:.16em;font-weight:600;border-bottom:2px solid var(--gold);padding-bottom:10px}
.footer-meta{display:flex;justify-content:space-between;gap:20px;width:min(1360px,88vw);margin:auto;padding:22px 0 28px;border-top:1px solid rgba(255,255,255,.13);position:relative;z-index:2}

@media(max-width:800px){
 .create:after{width:110vw;right:-50vw;top:0}
 .statement:before{width:100%;right:-35%;opacity:.65}.ghost-personal{display:none!important}
 .about{background:linear-gradient(180deg,var(--sand) 0 46%,rgba(248,235,230,.9) 52%,var(--petal) 63% 100%)}.about:after{display:none}.about-copy:before{font-size:78px;right:-25%;top:6%}
 .process{background:linear-gradient(160deg,var(--ivory),rgba(243,233,220,.48))}.process-title{display:block}.steps{gap:16px}.steps:before{left:23px;right:auto;top:25px;bottom:25px;width:2px;height:auto;background:repeating-linear-gradient(180deg,rgba(201,166,90,.7) 0 8px,transparent 8px 17px)}.steps article,.steps article:nth-child(2),.steps article:nth-child(3){transform:none;padding:74px 24px 30px 76px}.steps article span{left:16px}
 .order{background:linear-gradient(160deg,var(--green),#789878)}
 .finale{min-height:520px;padding:85px 25px}.finale:before{font-size:92px;left:-25%;top:45%}.finale:after{width:75vw;height:75vw}
 .footer-shell{grid-template-columns:1fr;width:auto;margin:0 25px;padding:60px 0 40px;gap:42px}.footer-right{border-left:0;border-top:1px solid rgba(201,166,90,.4);padding:34px 0 0}.footer-meta{width:auto;margin:0 25px;flex-direction:column}.footer-links{justify-content:flex-start!important}footer img{width:250px}
}

/* ============================================================
   V46 — FINAL POLISH: graceful motion, softer art direction,
   cleaner Lauren portrait, bigger functional type, livelier finale
   ============================================================ */

/* HERO — one translucent antique-gold trace that frames the upper field,
   deliberately staying well outside the crest safe zone. */
.hero{isolation:isolate}
.hero-gold-trace{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible}
.hero-gold-trace path{fill:none;stroke:rgba(201,166,90,.34);stroke-width:1.35;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:12 10;animation:goldTrace 18s linear infinite}
.hero-inner,.scroll{position:relative;z-index:2}
@keyframes goldTrace{to{stroke-dashoffset:-220}}

/* CREATE — keep the first thought on one line and replace hard geometry
   with a quiet stitched/gold editorial detail. */
.section-head h2 .create-line{white-space:nowrap}
.create:after{right:-10vw;top:-30px;width:48vw;height:370px;background:radial-gradient(ellipse at 70% 35%,rgba(239,170,180,.20),rgba(252,238,240,.10) 44%,transparent 72%);filter:blur(12px)}
.section-head:before{content:"";position:absolute;left:31%;top:-42px;width:92px;height:30px;border-top:1px dashed rgba(201,166,90,.55);border-radius:50%;transform:rotate(-8deg);opacity:.8}
.section-head:after{width:52px;height:2px;background:linear-gradient(90deg,var(--gold),rgba(201,166,90,.12))}

/* STATEMENT — fully contain the blush atmosphere so it cannot visually leak. */
.statement{overflow:hidden;background:var(--ivory)}
.statement:before{right:-6%;top:5%;width:42%;height:84%;background:radial-gradient(ellipse at 70% 48%,rgba(252,238,240,.76),rgba(252,238,240,.25) 50%,transparent 77%)}
.statement:after{height:150px;background:linear-gradient(to bottom,transparent 0%,var(--ivory) 92%)}
.ghost-personal{display:none!important}

/* LAUREN — clean rectangular mat, no clipped corners, no giant script behind copy. */
.about-copy:before{display:none!important}
.photo-block{clip-path:none!important;border-radius:0;box-shadow:14px 16px 32px rgba(63,56,53,.08),18px 18px 0 rgba(201,166,90,.12)}
.photo-block:after{inset:12px;border:1px solid rgba(201,166,90,.42)}
.about-photo:after{content:"";position:absolute;left:7.1vw;right:17%;bottom:56px;height:1px;background:linear-gradient(90deg,var(--gold),transparent 85%);opacity:.65}
.about{background:linear-gradient(90deg,var(--sand) 0%,rgba(243,233,220,.96) 42%,rgba(250,237,232,.82) 51%,var(--petal) 66%,var(--petal) 100%)}
.about:after{width:72px;background:linear-gradient(90deg,transparent,rgba(201,166,90,.13),transparent)}
.about-copy{overflow:visible}

/* PROCESS — keep the stitched journey but calm the side field and increase rhythm. */
.process{background:linear-gradient(105deg,var(--ivory) 0 72%,rgba(243,233,220,.34) 90%,rgba(252,238,240,.18) 100%)}
.process-title{margin-bottom:64px}
.steps{gap:34px}
.steps article{min-height:285px}

/* FINALE — no giant background words. Soft translucent hearts instead,
   more breathing room, and a true Allura treatment for the key phrase. */
.finale{min-height:650px;padding:110px 5vw 130px;overflow:hidden;background:linear-gradient(118deg,rgba(255,253,247,.97) 0 48%,rgba(252,238,240,.70) 72%,rgba(243,233,220,.78) 100%),url('assets/blush-cream-texture.png') center/cover}
.finale:before{display:none!important}
.finale-hearts{position:absolute;inset:0;pointer-events:none;z-index:0}
.finale-hearts i{position:absolute;font-style:normal;font-family:'Cormorant Garamond',serif;color:rgba(217,103,121,.075);line-height:1}
.finale-hearts i:nth-child(1){font-size:170px;left:5%;top:22%;transform:rotate(-12deg)}
.finale-hearts i:nth-child(2){font-size:105px;left:18%;bottom:10%;color:rgba(201,166,90,.12);transform:rotate(8deg)}
.finale-hearts i:nth-child(3){font-size:150px;right:8%;top:18%;color:rgba(201,166,90,.10);transform:rotate(12deg)}
.finale-hearts i:nth-child(4){font-size:90px;right:22%;bottom:11%;transform:rotate(-8deg)}
.finale>div:not(.finale-hearts){position:relative;z-index:2}
.finale h2{line-height:.91;margin:28px 0 42px}
.finale h2 .finale-script{display:block;font:400 clamp(82px,8.8vw,145px)/.78 Allura;color:var(--deep);padding:10px 0 20px}
.finale h2 .finale-last{display:block;font:500 clamp(62px,7vw,105px)/.9 'Cormorant Garamond';color:var(--ink);margin-top:2px}
.finale a{font-size:14px;letter-spacing:.17em;padding-bottom:10px}
.finale>div:after{margin-top:30px}

/* FOOTER — preserve the design, raise all useful copy to a comfortable floor. */
footer img{width:330px}
.footer-signoff{font-size:clamp(48px,4.8vw,72px)}
footer .footer-links a{font-size:13px;letter-spacing:.12em}
.footer-right .footer-eyebrow{font-size:13px}
.footer-right>p{font-size:20px;line-height:1.5}
.footer-right .footer-cta{font-size:14px}
footer small{font-size:12px}
.footer-meta{padding-top:25px;padding-bottom:30px}

/* Raise top-level and recurring microcopy another step. */
.wordmark{font-size:13px}
.nav nav a,.nav-cta{font-size:12px}
.hero-kicker{font-size:13px}
.hero-bottom a,.about-copy a{font-size:13px}
.section-head>span,.process small,.order small,.about-copy small{font-size:13px}
.cat small,.cat a{font-size:12px}
.order-form label{font-size:12px}.order-form .check{font-size:13px}.order-form button{font-size:13px}
.scroll{font-size:9px}

@media(max-width:1100px){
  .section-head h2 .create-line{white-space:normal}
  .hero-gold-trace path{stroke-width:1}
}
@media(max-width:800px){
  .hero-gold-trace{opacity:.55}
  .section-head:before{display:none}
  .photo-block{box-shadow:10px 12px 24px rgba(63,56,53,.07),10px 10px 0 rgba(201,166,90,.10)}
  .about-photo:after{display:none}
  .finale{min-height:580px;padding:90px 24px}
  .finale-hearts i:nth-child(1){font-size:95px;left:-4%;top:22%}
  .finale-hearts i:nth-child(2){font-size:70px;left:12%;bottom:7%}
  .finale-hearts i:nth-child(3){font-size:105px;right:-8%;top:18%}
  .finale-hearts i:nth-child(4){font-size:65px;right:14%;bottom:8%}
  .finale h2 .finale-script{font-size:76px;padding:8px 0 16px}
  .finale h2 .finale-last{font-size:58px}
  .finale a{font-size:12px}
  footer img{width:270px}
  footer .footer-links a{font-size:11px}
  .footer-right .footer-eyebrow{font-size:11px}
  .footer-right>p{font-size:18px}
  .footer-right .footer-cta{font-size:12px}
  footer small{font-size:11px}
  .wordmark{font-size:10px}.nav-cta{font-size:10px}
}


/* ============================================================
   V47 — MOTION + REFLECTION
   Remove the wedding-arch treatment, restore breathing room,
   and make the experience feel alive without crowding the crest.
   ============================================================ */

/* HERO: no surrounding line. The only metallic movement is a
   reflection that travels ACROSS the crest artwork itself. */
.hero-gold-trace{display:none!important}
.hero{background:
  radial-gradient(circle at 12% 28%,rgba(252,238,240,.36),transparent 26%),
  radial-gradient(circle at 88% 72%,rgba(140,169,140,.09),transparent 30%),
  var(--ivory)}
.crest-shine{position:relative;width:min(570px,60vw);margin:0 auto;isolation:isolate}
.crest-shine .crest{width:100%;margin:0;position:relative;z-index:1;filter:drop-shadow(0 18px 28px rgba(63,56,53,.035));animation:crestSettle 1.35s cubic-bezier(.2,.72,.22,1) both}
.crest-reflection{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(112deg,transparent 0 38%,rgba(255,255,255,0) 42%,rgba(255,251,224,.18) 46%,rgba(255,255,255,.88) 49%,rgba(255,238,174,.32) 52%,rgba(255,255,255,0) 56%,transparent 61%);transform:translateX(-155%);mix-blend-mode:screen;-webkit-mask:url('assets/TGH-CREST-LOGO.png') center/contain no-repeat;mask:url('assets/TGH-CREST-LOGO.png') center/contain no-repeat;animation:crestSweep 7.5s ease-in-out 1.8s infinite}
.hero-ambient{position:absolute;border-radius:50%;filter:blur(44px);pointer-events:none;opacity:.38;z-index:0}
.hero-ambient-a{width:25vw;height:25vw;left:-14vw;top:18%;background:rgba(239,170,180,.18);animation:ambientFloatA 12s ease-in-out infinite alternate}
.hero-ambient-b{width:29vw;height:29vw;right:-17vw;bottom:8%;background:rgba(140,169,140,.12);animation:ambientFloatB 15s ease-in-out infinite alternate}
@keyframes crestSweep{0%,62%{transform:translateX(-155%)}76%{transform:translateX(155%)}100%{transform:translateX(155%)}}
@keyframes crestSettle{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:none}}
@keyframes ambientFloatA{to{transform:translate3d(5vw,3vh,0) scale(1.12)}}
@keyframes ambientFloatB{to{transform:translate3d(-4vw,-2vh,0) scale(.92)}}

/* More kinetic typography / section entrances. */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.2,.72,.22,1),transform .9s cubic-bezier(.2,.72,.22,1)}
.reveal.visible{opacity:1;transform:none}
.manifesto-copy.reveal{transform:translateX(-36px)}
.manifesto-note.reveal{transform:translateX(36px)}
.manifesto-copy.reveal.visible,.manifesto-note.reveal.visible{transform:none}
.cat.reveal:nth-child(odd){transform:translateX(-28px)}
.cat.reveal:nth-child(even){transform:translateX(28px)}
.cat.reveal.visible{transform:none}
.about-photo.reveal{transform:translateX(-32px)}
.about-copy.reveal{transform:translateX(32px)}
.about-photo.reveal.visible,.about-copy.reveal.visible{transform:none}
.steps article.reveal:nth-child(2){transition-delay:.10s}.steps article.reveal:nth-child(3){transition-delay:.20s}

/* Interactive lift — enough motion to feel designed, never bouncy. */
.cat{transition:transform .55s cubic-bezier(.2,.72,.22,1),box-shadow .55s ease,background .55s ease}
.cat:hover{transform:translateY(-8px);z-index:2;box-shadow:0 22px 55px rgba(63,56,53,.07)}
.cat h3,.cat b{transition:transform .55s cubic-bezier(.2,.72,.22,1),color .4s ease}
.cat:hover h3{transform:translateX(9px)}
.cat:hover b{transform:translateY(-6px) rotate(-3deg);color:rgba(201,166,90,.68)}
.photo-block img{transition:transform 1.1s cubic-bezier(.2,.72,.22,1)}
.about-photo:hover .photo-block img{transform:scale(1.025)}

/* Give the clean sections ambient movement rather than static dead air. */
.statement:before{animation:softWash 11s ease-in-out infinite alternate}
.create:after{animation:softWash 13s ease-in-out infinite alternate-reverse}
@keyframes softWash{to{transform:translate3d(-2.5vw,1.5vh,0) scale(1.08)}}

/* Process: gentler background animation. */
.process{position:relative;overflow:hidden}
.process:after{content:"";position:absolute;width:44vw;height:44vw;right:-24vw;top:-16vw;border-radius:50%;background:radial-gradient(circle,rgba(239,170,180,.12),rgba(201,166,90,.045) 38%,transparent 68%);pointer-events:none;animation:processGlow 14s ease-in-out infinite alternate}
@keyframes processGlow{to{transform:translate3d(-5vw,5vh,0) scale(1.15)}}
.steps article{position:relative;z-index:1}
.steps article span{transition:color .3s ease,transform .45s ease}
.steps article:hover span{color:var(--gold);transform:translateY(-4px)}

/* Order: texture + tonal movement, but no harsh moving polygon. */
.order{background:linear-gradient(120deg,rgba(111,143,111,.98),rgba(126,154,123,.96),rgba(111,143,111,.98)),url('assets/green-linen.png') center/cover;background-blend-mode:multiply;background-size:180% 180%,cover;animation:greenDrift 18s ease-in-out infinite alternate}
@keyframes greenDrift{to{background-position:100% 55%,center}}
.order-form{transition:transform .6s cubic-bezier(.2,.72,.22,1),box-shadow .6s ease;box-shadow:18px 20px 0 rgba(201,166,90,.11)}
.order-form:hover{transform:translateY(-5px);box-shadow:22px 28px 0 rgba(201,166,90,.15)}

/* FINALE: remove wedding hearts and fix "Including you." spacing.
   Use tiny abstract stitch marks for craft texture instead. */
.finale-hearts{display:none!important}
.finale{position:relative}
.finale-stitches{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.finale-stitches i{position:absolute;width:42px;height:2px;background:linear-gradient(90deg,transparent,rgba(201,166,90,.34),transparent);transform:rotate(var(--r,0deg));opacity:.7;animation:stitchDrift 8s ease-in-out infinite alternate}
.finale-stitches i:nth-child(1){left:9%;top:25%;--r:18deg}.finale-stitches i:nth-child(2){left:18%;bottom:20%;--r:-16deg;animation-delay:-2s}.finale-stitches i:nth-child(3){right:12%;top:30%;--r:-12deg;animation-delay:-4s}.finale-stitches i:nth-child(4){right:23%;bottom:18%;--r:21deg;animation-delay:-1s}.finale-stitches i:nth-child(5){left:34%;top:14%;--r:-4deg;animation-delay:-5s}.finale-stitches i:nth-child(6){right:36%;bottom:11%;--r:7deg;animation-delay:-3s}
@keyframes stitchDrift{to{transform:translate3d(12px,-10px,0) rotate(var(--r,0deg));opacity:.35}}
.finale h2 .finale-script{letter-spacing:0;line-height:.88;padding:12px 0 26px}
.finale h2 .finale-last{letter-spacing:-.025em!important;word-spacing:normal!important;line-height:.92;margin-top:10px}
.finale>div:not(.finale-stitches){position:relative;z-index:2}

/* CTA movement. */
.hero-bottom a,.about-copy a,.finale a,.footer-cta,.cat a{position:relative}
.hero-bottom a span,.nav-cta span,.order-form button span{display:inline-block;transition:transform .25s ease}
.hero-bottom a:hover span,.nav-cta:hover span,.order-form button:hover span{transform:translateX(5px)}
.order-form button{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.order-form button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(185,79,99,.18);background:var(--rose)}

/* Footer credit + readable small type. */
.footer-meta{align-items:center}
.footer-meta small{font-size:13px}
.footer-meta strong{color:var(--pink);font-weight:600;letter-spacing:.04em}

@media(max-width:800px){
 .crest-shine{width:94vw}
 .hero-ambient-a{width:70vw;height:70vw;left:-50vw}.hero-ambient-b{width:72vw;height:72vw;right:-52vw}
 .manifesto-copy.reveal,.manifesto-note.reveal,.cat.reveal:nth-child(odd),.cat.reveal:nth-child(even),.about-photo.reveal,.about-copy.reveal{transform:translateY(24px)}
 .finale h2 .finale-script{font-size:72px;line-height:.88;padding-bottom:20px}
 .finale h2 .finale-last{font-size:54px;line-height:.96;margin-top:6px}
 .footer-meta small{font-size:12px}
}

@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
}


/* V48 — clean crest reflection + gold heart */
.manifesto-number{display:none!important}
.manifesto-heart{
  font-family:Georgia,serif;
  font-size:clamp(88px,9vw,150px);
  line-height:1;
  color:rgba(201,166,90,.20);
  align-self:start;
  margin-top:-12px;
  transform:rotate(-8deg);
  text-shadow:0 0 28px rgba(201,166,90,.05);
  animation:manifestoHeart 5.8s ease-in-out infinite alternate;
}
@keyframes manifestoHeart{
  from{transform:translateY(0) rotate(-8deg) scale(1);opacity:.72}
  to{transform:translateY(9px) rotate(-4deg) scale(1.035);opacity:1}
}

.crest-shine{overflow:visible!important}
.crest-reflection{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:2!important;
  pointer-events:none!important;
  opacity:.72!important;
  mix-blend-mode:screen!important;
  filter:brightness(1.65) saturate(.72) contrast(.92)!important;
  -webkit-mask:none!important;
  mask:none!important;
  background:none!important;
  transform:none!important;
  animation:crestImageSweep 6.8s ease-in-out 1.2s infinite!important;
  clip-path:polygon(-28% 0,-13% 0,2% 100%,-13% 100%);
}
@keyframes crestImageSweep{
  0%,56%{clip-path:polygon(-28% 0,-13% 0,2% 100%,-13% 100%);opacity:0}
  60%{opacity:.15}
  72%{opacity:.72}
  84%{opacity:.18}
  88%,100%{clip-path:polygon(108% 0,123% 0,138% 100%,123% 100%);opacity:0}
}
@media(max-width:800px){
 .manifesto-heart{position:absolute;right:22px;top:24px;font-size:82px;opacity:.55}
}
@media(prefers-reduced-motion:reduce){
 .crest-reflection,.manifesto-heart{animation:none!important}
 .crest-reflection{display:none!important}
}

/* ============================================================
   V49 — SVG TOOLBOX + MOTION PASS
   ============================================================ */

/* Hero cleanup: logo first, tagline centered, no CTA/scroll clutter. */
.hero-inner{padding-bottom:54px}
.hero-bottom{display:block;margin-top:8px;text-align:center}
.hero-bottom p{font-size:25px;letter-spacing:.01em}
.hero-bottom a,.scroll{display:none!important}

/* Reflection is now a masked light sweep. There is never a second visible logo. */
.crest-shine{position:relative;overflow:visible!important}
.crest-reflection{
  position:absolute!important;inset:0!important;display:block!important;
  width:100%!important;height:100%!important;pointer-events:none!important;z-index:3!important;
  opacity:0;background:linear-gradient(108deg,transparent 0 38%,rgba(255,255,255,.05) 43%,rgba(255,249,210,.46) 47%,rgba(255,255,255,.95) 50%,rgba(255,235,167,.30) 53%,rgba(255,255,255,.04) 57%,transparent 62%)!important;
  background-size:210% 100%!important;background-position:145% 0!important;
  -webkit-mask-image:url('assets/TGH-CREST-LOGO.png')!important;mask-image:url('assets/TGH-CREST-LOGO.png')!important;
  -webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important;
  -webkit-mask-position:center!important;mask-position:center!important;
  -webkit-mask-size:contain!important;mask-size:contain!important;
  mix-blend-mode:screen!important;filter:none!important;clip-path:none!important;
  animation:crestMaskedSweep 7.2s cubic-bezier(.55,.05,.35,1) 1.8s infinite!important;
}
@keyframes crestMaskedSweep{
  0%,56%{background-position:145% 0;opacity:0}
  60%{opacity:.12}
  72%{background-position:50% 0;opacity:.88}
  84%{opacity:.18}
  90%,100%{background-position:-45% 0;opacity:0}
}

/* Required heart: actual supplied SVG, antique gold, no numeral. */
.manifesto-heart{
  width:clamp(96px,10vw,160px);height:clamp(96px,10vw,160px);
  background:rgba(201,166,90,.28);
  -webkit-mask:url('assets/heart.svg') center/contain no-repeat;mask:url('assets/heart.svg') center/contain no-repeat;
  align-self:start;margin-top:-4px;transform:rotate(-7deg);
  animation:heartBreath 5.8s ease-in-out infinite alternate!important;
}
@keyframes heartBreath{from{transform:translateY(0) rotate(-7deg) scale(.98);opacity:.65}to{transform:translateY(10px) rotate(-3deg) scale(1.045);opacity:1}}

/* Required bow: one oversized, soft editorial accent — not repeated everywhere. */
.create{position:relative;overflow:hidden}
.create-bow{
  position:absolute;right:-2.5vw;top:42px;width:clamp(180px,20vw,330px);aspect-ratio:1;
  background:rgba(217,103,121,.075);
  -webkit-mask:url('assets/bow.svg') center/contain no-repeat;mask:url('assets/bow.svg') center/contain no-repeat;
  transform:rotate(7deg);pointer-events:none;z-index:0;
  animation:bowDrift 8s ease-in-out infinite alternate;
}
@keyframes bowDrift{from{transform:translate3d(0,0,0) rotate(7deg)}to{transform:translate3d(-12px,10px,0) rotate(3deg)}}
.section-head,.category-stage{position:relative;z-index:2}

/* Lauren's supplied name artwork is reserved for her section. */
.about{position:relative;overflow:hidden}
.lauren-signature{
  position:absolute;right:-4vw;top:5%;width:min(48vw,760px);height:230px;
  background:rgba(185,79,99,.055);
  -webkit-mask:url('assets/lauren.svg') center/contain no-repeat;mask:url('assets/lauren.svg') center/contain no-repeat;
  pointer-events:none;z-index:1;
  animation:signatureFloat 10s ease-in-out infinite alternate;
}
@keyframes signatureFloat{from{transform:translateX(0)}to{transform:translateX(-18px)}}
.about-photo,.about-copy{position:relative;z-index:2}

/* Give the page life without turning every section into a billboard. */
.hero-ambient-a{animation:ambientA 13s ease-in-out infinite alternate}
.hero-ambient-b{animation:ambientB 15s ease-in-out infinite alternate}
@keyframes ambientA{to{transform:translate3d(22px,-15px,0) scale(1.05)}}
@keyframes ambientB{to{transform:translate3d(-20px,18px,0) scale(1.08)}}

.manifesto-stitch{animation:stitchTravel 12s linear infinite;background-size:220px 8px}
@keyframes stitchTravel{to{background-position:220px 0}}

.cat{transition:transform .55s cubic-bezier(.2,.72,.22,1),box-shadow .55s ease,background-color .55s ease}
.cat:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(63,56,53,.07);z-index:3}
.cat h3{transition:transform .5s cubic-bezier(.2,.72,.22,1),color .4s ease}
.cat:hover h3{transform:translateX(7px)}

/* Process gets one quiet sewing gesture from the toolbox, not another giant word. */
.process{position:relative;overflow:hidden}
.process:after{
  content:"";position:absolute;right:-5vw;top:15%;width:310px;height:310px;background:rgba(201,166,90,.065);
  -webkit-mask:url('assets/swoosh.svg') center/contain no-repeat;mask:url('assets/swoosh.svg') center/contain no-repeat;
  transform:rotate(-10deg);pointer-events:none;animation:swooshDrift 9s ease-in-out infinite alternate
}
@keyframes swooshDrift{to{transform:translate(-18px,10px) rotate(-5deg)}}
.process-title,.steps{position:relative;z-index:2}

/* Footer and functional type remain comfortably readable. */
.footer-links a{font-size:13px!important}
.footer-right .footer-eyebrow{font-size:12px!important}
.footer-right p{font-size:19px!important}
.footer-meta small{font-size:11px!important}
.nav nav a,.nav-cta{font-size:11px}
.wordmark{font-size:12px}

@media(max-width:800px){
 .hero-bottom p{font-size:21px}.hero-inner{padding-bottom:46px}
 .create-bow{width:190px;right:-70px;top:28px;opacity:.85}
 .lauren-signature{width:88vw;height:150px;right:-22vw;top:49%;opacity:.7}
 .manifesto-heart{width:86px;height:86px;right:16px!important;top:22px!important}
 .process:after{width:190px;height:190px;right:-70px;top:5%}
 .footer-links a{font-size:11px!important}.footer-right p{font-size:17px!important}.footer-meta small{font-size:10px!important}
}

@media(prefers-reduced-motion:reduce){
 .crest-reflection,.manifesto-heart,.create-bow,.lauren-signature,.hero-ambient-a,.hero-ambient-b,.manifesto-stitch,.process:after{animation:none!important}
 .crest-reflection{display:none!important}
}

/* ============================================================
   V50 — MOTION + MOBILE REFINEMENT
   ============================================================ */

/* Crest: true logo-only reflection + hover growth. */
.crest-shine{
  position:relative;
  width:min(570px,60vw);
  margin:0 auto;
  overflow:visible!important;
  transition:transform .55s cubic-bezier(.2,.75,.22,1), filter .55s ease;
  transform-origin:center center;
  will-change:transform;
}
.crest-shine:hover{transform:scale(1.045);filter:drop-shadow(0 18px 34px rgba(63,56,53,.08))}
.crest-shine .crest{width:100%;height:auto;display:block;position:relative;z-index:1;transition:filter .5s ease}
.crest-reflection,.crest-reflection-img{pointer-events:none}
.crest-reflection{display:none!important}
.crest-reflection-img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:3;
  opacity:0;mix-blend-mode:screen;filter:brightness(2.4) saturate(.45) contrast(1.02);
  clip-path:polygon(-30% 0,-13% 0,1% 100%,-16% 100%);
  animation:crestLogoSweep 5.8s cubic-bezier(.45,.02,.25,1) .35s both, crestLogoSweepRepeat 8.4s cubic-bezier(.45,.02,.25,1) 6.2s infinite;
  will-change:clip-path,opacity;
}
@keyframes crestLogoSweep{
  0%{clip-path:polygon(-30% 0,-13% 0,1% 100%,-16% 100%);opacity:0}
  12%{opacity:.2}
  42%{opacity:.82}
  70%{opacity:.34}
  100%{clip-path:polygon(108% 0,124% 0,140% 100%,123% 100%);opacity:0}
}
@keyframes crestLogoSweepRepeat{
  0%,58%{clip-path:polygon(-30% 0,-13% 0,1% 100%,-16% 100%);opacity:0}
  63%{opacity:.18}
  72%{opacity:.72}
  82%{opacity:.25}
  88%,100%{clip-path:polygon(108% 0,124% 0,140% 100%,123% 100%);opacity:0}
}

/* Lauren signature belongs to Lauren: bottom-right, subtle and intentional. */
.about{isolation:isolate}
.lauren-signature{
  top:auto!important;right:2.5vw!important;bottom:18px!important;
  width:min(31vw,500px)!important;height:120px!important;
  background:rgba(185,79,99,.11)!important;
  opacity:1!important;z-index:1!important;
  animation:signatureFloatV50 8s ease-in-out infinite alternate!important;
}
@keyframes signatureFloatV50{from{transform:translate3d(0,0,0)}to{transform:translate3d(-10px,-4px,0)}}
.about-photo,.about-copy{z-index:2}

/* Finale: supplied swoosh moves quietly behind 'people you love'. */
.finale{overflow:hidden;isolation:isolate}
.finale-swoosh{
  position:absolute;left:3vw;top:34%;width:min(35vw,560px);height:190px;z-index:0;
  background:rgba(201,166,90,.13);
  -webkit-mask:url('assets/swoosh.svg') center/contain no-repeat;mask:url('assets/swoosh.svg') center/contain no-repeat;
  transform:rotate(-7deg);pointer-events:none;
  animation:finaleSwoosh 9s ease-in-out infinite alternate;
}
@keyframes finaleSwoosh{to{transform:translate3d(18px,-8px,0) rotate(-3deg);opacity:.7}}
.finale>div:not(.finale-swoosh):not(.finale-stitches){position:relative;z-index:2}

/* More movement — layered but not frantic. */
.section-head h2 em,.statement h2 em,.about-copy h2 em,.process-title h2 em,.finale-script{display:inline-block;animation:scriptBreath 7s ease-in-out infinite alternate;transform-origin:center}
@keyframes scriptBreath{from{transform:translateY(0)}to{transform:translateY(-3px)}}
.order{background-size:100% 100%,cover;animation:orderTone 12s ease-in-out infinite alternate}
@keyframes orderTone{from{background-position:0 0,0 0}to{background-position:2% 0,16px 0}}
.about:after{
  content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-90px;top:-85px;
  background:radial-gradient(circle,rgba(201,166,90,.08),rgba(201,166,90,0) 68%);pointer-events:none;z-index:0;
  animation:aboutGlow 10s ease-in-out infinite alternate;
}
@keyframes aboutGlow{to{transform:translate(-28px,18px) scale(1.1)}}
.steps article{transition:transform .5s cubic-bezier(.2,.72,.22,1),background-color .45s ease}
.steps article:hover{transform:translateY(-6px)}
.steps article span{display:inline-block;transition:transform .45s ease,color .4s ease}
.steps article:hover span{transform:translateY(-4px) rotate(-3deg);color:var(--deep)}
.order-form{transition:transform .55s cubic-bezier(.2,.72,.22,1),box-shadow .55s ease}
.order-form:hover{transform:translateY(-4px);box-shadow:18px 18px 0 rgba(201,166,90,.10),0 22px 50px rgba(63,56,53,.07)}
.footer-left img{transition:transform .55s cubic-bezier(.2,.72,.22,1),filter .5s ease}
.footer-left img:hover{transform:scale(1.035);filter:drop-shadow(0 10px 20px rgba(0,0,0,.08))}

/* Mobile: keep the experience energetic, readable and contained. */
@media(max-width:800px){
  html,body{max-width:100%;overflow-x:hidden}
  .nav{height:auto;min-height:64px;padding:14px 20px;grid-template-columns:1fr auto}
  .nav nav{display:none}
  .wordmark{font-size:10px;letter-spacing:.20em}
  .nav-cta{font-size:10px;letter-spacing:.11em}
  .hero{min-height:auto;padding:42px 0 52px}
  .hero-inner{width:100%;padding:10px 18px 0}
  .hero-kicker{font-size:9px;letter-spacing:.22em;line-height:1.6;margin-bottom:18px}
  .crest-shine{width:min(88vw,520px)}
  .crest-shine:hover{transform:none}
  .hero-bottom p{font-size:22px;line-height:1.2;margin-top:12px}
  .manifesto{min-height:auto;padding:76px 24px 72px;grid-template-columns:1fr;gap:34px}
  .manifesto-heart{position:absolute!important;right:16px!important;top:18px!important;width:76px!important;height:76px!important}
  .manifesto-copy h1{font-size:clamp(56px,16vw,82px);line-height:.84}
  .manifesto-note{max-width:100%;font-size:18px;line-height:1.55}
  .create{overflow:hidden}
  .section-head{padding:72px 24px 48px!important;grid-template-columns:1fr!important;gap:20px!important}
  .section-head h2{font-size:clamp(52px,14vw,76px)!important;line-height:.9!important}
  .section-head p{font-size:16px!important;line-height:1.55!important}
  .category-stage{grid-template-columns:1fr!important}
  .cat{min-height:360px!important;padding:52px 28px!important}
  .cat h3{font-size:46px!important;line-height:.94!important}
  .cat p{font-size:16px!important;line-height:1.55!important}
  .create-bow{width:150px!important;right:-48px!important;top:16px!important}
  .statement{min-height:auto!important;padding:78px 24px!important}
  .statement-inner h2{font-size:clamp(50px,13vw,74px)!important;line-height:.9!important}
  .statement-inner p{font-size:17px!important;line-height:1.55!important}
  .about{grid-template-columns:1fr!important;padding:74px 24px 96px!important;gap:52px!important}
  .about-photo{max-width:520px;margin:0 auto;width:100%}
  .photo-block{max-width:100%}
  .about-copy h2{font-size:clamp(50px,13vw,72px)!important;line-height:.92!important}
  .about-copy p{font-size:17px!important;line-height:1.6!important}
  .lauren-signature{right:-10vw!important;bottom:12px!important;width:72vw!important;height:95px!important;opacity:.75!important}
  .process{padding:76px 24px!important}
  .process-title{grid-template-columns:1fr!important;gap:16px!important}
  .process-title h2{font-size:clamp(48px,13vw,70px)!important;line-height:.92!important}
  .steps{grid-template-columns:1fr!important;margin-top:46px!important}
  .steps article{min-height:auto!important;padding:34px 6px 34px 0!important;border-left:0!important;border-bottom:1px solid rgba(201,166,90,.35)}
  .steps article:last-child{border-bottom:0}
  .steps article h3{font-size:34px!important}
  .steps article p{font-size:16px!important;line-height:1.55!important}
  .process:after{width:140px!important;height:140px!important;right:-40px!important;top:2%!important}
  .order{grid-template-columns:1fr!important;padding:72px 20px!important;gap:44px!important}
  .order-intro h2{font-size:clamp(54px,14vw,78px)!important;line-height:.9!important}
  .order-intro p{font-size:17px!important;line-height:1.55!important}
  .order-form{padding:34px 22px!important}
  .order-form .row{grid-template-columns:1fr!important;gap:22px!important}
  .order-form label{font-size:10px!important;letter-spacing:.14em!important}
  .order-form input,.order-form textarea,.order-form select{font-size:16px!important}
  .order-form button{font-size:12px!important}
  .finale{min-height:auto!important;padding:88px 22px 96px!important}
  .finale h2{margin:22px 0 34px!important}
  .finale h2>.finale-script{font-size:clamp(68px,18vw,96px)!important;line-height:.82!important;padding:8px 0 22px!important}
  .finale h2 .finale-last{font-size:clamp(48px,12vw,68px)!important;line-height:.93!important}
  .finale-swoosh{left:-16vw;top:42%;width:72vw;height:120px;opacity:.7}
  .finale a{font-size:12px!important}
  footer{padding:70px 24px 0!important}
  .footer-shell{grid-template-columns:1fr!important;gap:48px!important}
  footer img{width:min(72vw,300px)!important}
  .footer-signoff{font-size:50px!important;line-height:.95!important}
  footer .footer-links{gap:18px!important;flex-wrap:wrap}
  footer .footer-links a{font-size:11px!important}
  .footer-right>p{font-size:17px!important;line-height:1.55!important}
  .footer-meta{grid-template-columns:1fr!important;gap:10px!important;text-align:left!important}
  .footer-meta small{font-size:10px!important}
}

@media(max-width:480px){
  .nav-cta span{display:none}
  .hero-kicker{font-size:8px}
  .manifesto-copy h1{font-size:54px}
  .section-head h2{font-size:50px!important}
  .cat{min-height:330px!important}
  .cat h3{font-size:42px!important}
  .about{padding-left:18px!important;padding-right:18px!important}
  .order{padding-left:16px!important;padding-right:16px!important}
  .order-form{padding:30px 18px!important}
  .footer-signoff{font-size:44px!important}
}

@media(prefers-reduced-motion:reduce){
  .crest-reflection-img,.lauren-signature,.finale-swoosh,.section-head h2 em,.statement h2 em,.about-copy h2 em,.process-title h2 em,.finale-script,.order,.about:after{animation:none!important}
  .crest-reflection-img{display:none!important}
}

/* V51 — larger whisper signature + hand-drawn gold loop */
.laureen-signature{display:none!important}
.laureen-signature::before{display:none!important}
.laureen-signature::after{display:none!important}
.laureen-signature{content:none!important}
/* intentional override of existing class */
.lauren-signature{
  right:2.5vw!important;
  bottom:3.5%!important;
  top:auto!important;
  width:min(34vw,650px)!important;
  height:150px!important;
  opacity:.28!important;
  background:var(--deep)!important;
  -webkit-mask:url('assets/lauren.svg') center/contain no-repeat!important;
  mask:url('assets/lauren.svg') center/contain no-repeat!important;
  transform:none!important;
  animation:signatureWhisper 8s ease-in-out infinite alternate!important;
}
@keyframes signatureWhisper{
  from{transform:translate3d(0,2px,0) scale(.995)}
  to{transform:translate3d(-8px,-4px,0) scale(1.012)}
}

/* Replace the nearly invisible supplied swoosh with a custom thin gold thread path. */
.finale-swoosh{display:none!important}
.finale-gold-loop{
  position:absolute;
  left:0;
  top:35%;
  width:100%;
  height:190px;
  z-index:1;
  pointer-events:none;
  overflow:visible;
  opacity:.68;
}
.finale-gold-loop path{
  fill:none;
  stroke:var(--gold);
  stroke-width:2.35;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:1900;
  stroke-dashoffset:1900;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.45));
  animation:goldLoopDraw 2.8s cubic-bezier(.2,.72,.22,1) .35s forwards,
            goldLoopBreathe 8s ease-in-out 3.3s infinite alternate;
}
@keyframes goldLoopDraw{to{stroke-dashoffset:0}}
@keyframes goldLoopBreathe{
  from{opacity:.42;transform:translateX(-6px)}
  to{opacity:.72;transform:translateX(6px)}
}
.finale>div:not(.finale-stitches){position:relative;z-index:2}

@media(max-width:800px){
  .lauren-signature{
    width:min(66vw,430px)!important;
    height:88px!important;
    right:4vw!important;
    bottom:8px!important;
    opacity:.24!important;
  }
  .finale-gold-loop{
    top:39%;
    height:118px;
    width:125%;
    left:-12.5%;
    opacity:.58;
  }
  .finale-gold-loop path{stroke-width:1.7}
}
@media(prefers-reduced-motion:reduce){
  .lauren-signature{animation:none!important}
  .finale-gold-loop path{animation:none!important;stroke-dashoffset:0!important;opacity:.5!important}
}

/* ============================================================
   V52 — SIGNATURE PLACEMENT + DRAWN GOLD THREAD
   ============================================================ */

/* Lauren's signature now belongs to the portrait composition itself —
   bottom-right, softly overlapping the mat exactly as a signature would. */
.about-photo{position:relative;overflow:visible}
.about-photo .lauren-signature{
  position:absolute!important;
  top:auto!important;
  right:4.2vw!important;
  bottom:47px!important;
  width:min(25vw,430px)!important;
  height:108px!important;
  background:rgba(217,103,121,.38)!important;
  opacity:1!important;
  z-index:5!important;
  pointer-events:none;
  -webkit-mask:url('assets/lauren.svg') center/contain no-repeat!important;
  mask:url('assets/lauren.svg') center/contain no-repeat!important;
  transform:rotate(-1.5deg);
  animation:laurenSignatureFloat 8s ease-in-out infinite alternate!important;
  will-change:transform;
}
@keyframes laurenSignatureFloat{
  from{transform:translate3d(0,0,0) rotate(-1.5deg)}
  to{transform:translate3d(7px,-3px,0) rotate(-.8deg)}
}

/* Gold thread stays exactly where it works, but now draws in only when the
   finale enters view so the visitor actually sees the motion. */
.finale-gold-loop path{
  stroke-dasharray:2200!important;
  stroke-dashoffset:2200!important;
  opacity:.58!important;
  animation:none!important;
}
.finale.is-drawing .finale-gold-loop path{
  animation:goldLoopDrawV52 3.2s cubic-bezier(.2,.72,.22,1) forwards,
            goldLoopBreatheV52 8s ease-in-out 3.4s infinite alternate!important;
}
@keyframes goldLoopDrawV52{
  0%{stroke-dashoffset:2200;opacity:.15}
  18%{opacity:.58}
  100%{stroke-dashoffset:0;opacity:.58}
}
@keyframes goldLoopBreatheV52{
  from{transform:translate3d(0,0,0);opacity:.52}
  to{transform:translate3d(10px,-2px,0);opacity:.68}
}

@media(max-width:800px){
  .about-photo .lauren-signature{
    right:-2vw!important;
    bottom:18px!important;
    width:min(64vw,330px)!important;
    height:88px!important;
    background:rgba(217,103,121,.34)!important;
  }
  .finale-gold-loop{height:150px!important;top:28%!important}
  .finale-gold-loop path{stroke-width:1.8!important}
}

@media(prefers-reduced-motion:reduce){
  .about-photo .lauren-signature{animation:none!important}
  .finale-gold-loop path{animation:none!important;stroke-dashoffset:0!important;opacity:.52!important}
}

/* ============================================================
   V53 — VISIBLE SIGNATURE + UNMISTAKABLE GOLD DRAW
   ============================================================ */

/* Shift Lauren's signature farther right, reveal more of the needle,
   and raise contrast just enough to read without becoming a stamp. */
.about-photo .lauren-signature{
  right:-1.2vw!important;
  bottom:42px!important;
  width:min(27vw,470px)!important;
  height:116px!important;
  background:rgba(217,103,121,.50)!important;
  opacity:1!important;
}

/* The gold thread is now intentionally visible before/after the draw.
   It sits behind the type, crosses the full section, loops once, then exits. */
.finale{position:relative;overflow:hidden}
.finale-gold-loop{
  left:-2%!important;
  top:38%!important;
  width:104%!important;
  height:205px!important;
  opacity:1!important;
  z-index:1!important;
  overflow:visible!important;
}
.finale-gold-loop path{
  fill:none!important;
  stroke:var(--gold)!important;
  stroke-width:2.8!important;
  vector-effect:non-scaling-stroke!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  stroke-dasharray:1!important;
  stroke-dashoffset:1!important;
  opacity:.82!important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.45))!important;
  animation:none!important;
  will-change:stroke-dashoffset,transform,opacity;
}
.finale.is-drawing .finale-gold-loop path{
  animation:goldThreadDrawV53 3.8s cubic-bezier(.12,.72,.18,1) forwards,
            goldThreadFloatV53 7s ease-in-out 4s infinite alternate!important;
}
@keyframes goldThreadDrawV53{
  0%{stroke-dashoffset:1;opacity:.12}
  10%{opacity:.9}
  100%{stroke-dashoffset:0;opacity:.82}
}
@keyframes goldThreadFloatV53{
  from{transform:translate3d(-4px,0,0);opacity:.72}
  to{transform:translate3d(8px,-2px,0);opacity:.88}
}
.finale>div:not(.finale-stitches){position:relative;z-index:3!important}

@media(max-width:800px){
  .about-photo .lauren-signature{
    right:-7vw!important;
    bottom:13px!important;
    width:min(70vw,360px)!important;
    height:94px!important;
    background:rgba(217,103,121,.48)!important;
  }
  .finale-gold-loop{
    left:-18%!important;
    width:136%!important;
    top:34%!important;
    height:138px!important;
  }
  .finale-gold-loop path{stroke-width:2.1!important}
}

@media(prefers-reduced-motion:reduce){
  .finale-gold-loop path{
    animation:none!important;
    stroke-dashoffset:0!important;
    opacity:.72!important;
  }
}

/* ============================================================
   V54 — MOBILE RESCUE + RELIABLE GOLD THREAD MOTION
   ============================================================ */

/* Finale: no random heart glyphs. The gold thread is the movement. */
.finale>div:after{content:none!important;display:none!important}
.finale-gold-loop{display:block!important;opacity:1!important;z-index:1!important}
.finale-gold-loop path{
  stroke:#c9a65a!important;
  stroke-width:2.4!important;
  opacity:.62!important;
  stroke-dasharray:1!important;
  stroke-dashoffset:1!important;
  animation:none!important;
  filter:none!important;
}
.finale-gold-loop path.thread-drawn{stroke-dashoffset:0!important}

/* Lauren signature: visible, pink, and enough room to see the needle. */
.about-photo .lauren-signature{
  right:-4.2vw!important;
  bottom:36px!important;
  width:min(29vw,500px)!important;
  height:122px!important;
  background:rgba(217,103,121,.58)!important;
}

@media(max-width:800px){
  html,body{overflow-x:hidden}

  /* Lauren — compact portrait composition with no giant dead zone. */
  .about{
    display:block!important;
    min-height:0!important;
    background:linear-gradient(180deg,var(--sand) 0%,rgba(247,235,229,.94) 43%,var(--petal) 100%)!important;
  }
  .about-photo{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    padding:52px 22px 34px!important;
    margin:0!important;
    min-height:0!important;
  }
  .photo-block{
    width:100%!important;
    max-width:500px!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    margin:0 auto!important;
    box-shadow:12px 14px 0 rgba(232,220,203,.55)!important;
  }
  .photo-block img{display:block!important}
  .vertical{
    position:absolute!important;
    right:10px!important;
    top:88px!important;
    margin:0!important;
    font-size:7px!important;
    letter-spacing:.18em!important;
  }
  .about-photo .lauren-signature{
    right:10px!important;
    bottom:3px!important;
    width:min(58vw,300px)!important;
    height:76px!important;
    background:rgba(217,103,121,.62)!important;
  }
  .about-copy{
    padding:44px 24px 72px!important;
    min-height:0!important;
  }
  .about-copy small{font-size:10px!important}
  .about-copy h2{
    font-size:clamp(44px,11.5vw,58px)!important;
    line-height:.94!important;
    margin:18px 0 26px!important;
  }
  .about-copy p{font-size:15px!important;line-height:1.65!important;margin:0 0 18px!important}
  .about-copy a{margin-top:12px!important;font-size:11px!important}

  /* How it works — remove the desktop timeline treatment entirely on mobile. */
  .process{padding:68px 22px 72px!important}
  .process-title{margin:0 0 38px!important}
  .process-title small{font-size:10px!important}
  .process-title h2{font-size:clamp(43px,11vw,56px)!important;line-height:.94!important;margin-top:16px!important}
  .steps{display:block!important;width:100%!important;margin:0!important;border:0!important}
  .steps:before{display:none!important}
  .steps article,.steps article:nth-child(2),.steps article:nth-child(3){
    position:relative!important;
    display:block!important;
    min-height:0!important;
    transform:none!important;
    padding:28px 22px 30px!important;
    margin:0 0 14px!important;
    border:0!important;
    box-shadow:none!important;
  }
  .steps article:nth-child(1){background:rgba(255,253,247,.82)!important}
  .steps article:nth-child(2){background:rgba(252,238,240,.62)!important}
  .steps article:nth-child(3){background:rgba(243,233,220,.64)!important}
  .steps article span{
    position:static!important;
    display:block!important;
    width:auto!important;height:auto!important;
    border:0!important;border-radius:0!important;
    background:none!important;box-shadow:none!important;
    font:500 17px 'Cormorant Garamond'!important;
    color:var(--gold)!important;
    margin:0 0 12px!important;
  }
  .steps h3{font-size:31px!important;line-height:1!important;margin:0 0 12px!important}
  .steps p{font-size:14px!important;line-height:1.58!important;margin:0!important}

  /* Finale — centered, clean, no random heart, gold loop has room to animate. */
  .finale{padding:76px 20px 82px!important;min-height:0!important}
  .finale h2{margin:20px 0 30px!important;line-height:.94!important}
  .finale h2>.finale-script{font-size:clamp(58px,15vw,78px)!important;line-height:.88!important;padding:4px 0 16px!important}
  .finale h2 .finale-last{font-size:clamp(42px,10.8vw,56px)!important;line-height:.98!important;margin-top:8px!important}
  .finale-gold-loop{
    left:-36%!important;
    width:172%!important;
    top:34%!important;
    height:118px!important;
    opacity:.82!important;
  }
  .finale-gold-loop path{stroke-width:1.9!important;opacity:.64!important}

  /* Footer — deliberate spacing; logo no longer crashes into the signoff. */
  footer{padding:0!important}
  .footer-shell{display:block!important;width:auto!important;margin:0!important;padding:64px 28px 42px!important}
  .footer-left img,footer img{
    display:block!important;
    width:min(72vw,290px)!important;
    margin:0 0 34px!important;
  }
  .footer-signoff{font-size:44px!important;line-height:.94!important;margin:0 0 34px!important}
  footer .footer-links{display:flex!important;justify-content:flex-start!important;gap:14px 22px!important;margin:0!important}
  footer .footer-links a{font-size:10px!important;line-height:1.4!important}
  .footer-right{margin-top:42px!important;padding:36px 0 0!important;border-top:1px solid rgba(201,166,90,.42)!important}
  .footer-right .footer-eyebrow{font-size:10px!important;margin-bottom:18px!important}
  .footer-right>p{font-size:17px!important;line-height:1.55!important;margin:0!important}
  .footer-right .footer-cta{font-size:11px!important;margin:26px 0 30px!important}
  .footer-meta{width:auto!important;margin:0 28px!important;padding:22px 0 30px!important;gap:8px!important}
  .footer-meta small{font-size:10px!important;line-height:1.45!important}
}

@media(max-width:480px){
  .about-photo{padding-top:42px!important}
  .photo-block{max-width:390px!important}
  .about-photo .lauren-signature{right:4px!important;bottom:0!important;width:62vw!important;height:70px!important}
  .vertical{right:5px!important;top:72px!important}
  .process{padding-left:18px!important;padding-right:18px!important}
  .finale{padding-left:18px!important;padding-right:18px!important}
  .footer-shell{padding-left:24px!important;padding-right:24px!important}
  .footer-meta{margin-left:24px!important;margin-right:24px!important}
}

/* ============================================================
   V55 — MOBILE LAUREN CLEANUP + GUARANTEED GOLD THREAD DRAW
   ============================================================ */

/* Gold thread: one source of truth. Let JS drive dash length/offset. */
.finale-gold-loop{
  display:block!important;
  position:absolute!important;
  left:-5%!important;
  top:31%!important;
  width:110%!important;
  height:190px!important;
  z-index:1!important;
  opacity:1!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.finale-gold-loop path{
  fill:none!important;
  stroke:#c9a65a!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  opacity:.78!important;
  animation:none!important;
  transition:none!important;
  vector-effect:non-scaling-stroke;
}
.finale>div:not(.finale-stitches){position:relative!important;z-index:3!important}

/* Lauren signature: intentional on desktop, contained on mobile. */
.about-photo .lauren-signature{
  right:-2.5vw!important;
  bottom:34px!important;
  width:min(31vw,520px)!important;
  height:126px!important;
  background:rgba(217,103,121,.64)!important;
}

@media(max-width:800px){
  /* Stop the portrait area from feeling like a tall poster. */
  .about-photo{
    padding:40px 20px 18px!important;
  }
  .photo-block{
    width:min(100%,420px)!important;
    aspect-ratio:1/1!important;
    margin:0 auto!important;
  }
  /* Vertical caption is too busy on a narrow screen. */
  .vertical{display:none!important}
  /* Signature sits ON the lower-right of the photo mat and stays fully visible. */
  .about-photo .lauren-signature{
    right:18px!important;
    bottom:8px!important;
    width:min(56vw,260px)!important;
    height:74px!important;
    background:rgba(217,103,121,.70)!important;
    opacity:1!important;
    transform:none!important;
    animation:none!important;
  }
  .about-copy{
    padding:30px 24px 58px!important;
  }
  .about-copy h2{
    font-size:clamp(40px,10.6vw,52px)!important;
    line-height:.95!important;
    margin:16px 0 22px!important;
  }
  .about-copy p{
    font-size:15px!important;
    line-height:1.58!important;
  }

  /* The thread crosses behind the script phrase on mobile and has enough width to read. */
  .finale{
    overflow:hidden!important;
  }
  .finale-gold-loop{
    left:-34%!important;
    top:28%!important;
    width:168%!important;
    height:150px!important;
  }
  .finale-gold-loop path{
    stroke-width:1.8!important;
    opacity:.8!important;
  }
}

@media(max-width:480px){
  .about-photo{padding:34px 16px 14px!important}
  .photo-block{width:100%!important;max-width:380px!important}
  .about-photo .lauren-signature{
    right:12px!important;
    bottom:4px!important;
    width:min(60vw,245px)!important;
    height:68px!important;
  }
  .about-copy{padding:28px 20px 54px!important}
  .about-copy h2{font-size:clamp(38px,10vw,48px)!important}
  .finale-gold-loop{
    left:-42%!important;
    width:184%!important;
    top:29%!important;
    height:140px!important;
  }
}


/* ============================================================
   V56 — FINAL CLEANUP: NO GOLD SWOOSH + MOBILE LAUREN SIGNATURE
   ============================================================ */
.finale-gold-loop{display:none!important}

@media(max-width:800px){
  .about-photo{
    padding:34px 18px 30px!important;
    overflow:visible!important;
  }
  .photo-block{
    width:min(100%,420px)!important;
    max-width:420px!important;
    margin:0 auto!important;
  }
  .about-photo .lauren-signature{
    right:28px!important;
    bottom:5px!important;
    width:min(58vw,250px)!important;
    height:74px!important;
    background:rgba(217,103,121,.78)!important;
    opacity:1!important;
    transform:none!important;
    animation:none!important;
    z-index:5!important;
  }
  .about-copy{padding-top:34px!important}
}

@media(max-width:480px){
  .about-photo{
    padding:30px 16px 34px!important;
  }
  .about-photo .lauren-signature{
    right:24px!important;
    bottom:8px!important;
    width:225px!important;
    max-width:62vw!important;
    height:70px!important;
  }
  .about-copy{padding-top:30px!important}
}

/* ============================================================
   V57 — MOBILE LAUREN SIGNATURE POSITION ONLY
   Keep the signature anchored to the portrait's lower-right edge.
   ============================================================ */
@media(max-width:800px){
  .about-photo{padding-bottom:44px!important}
  .about-photo .lauren-signature{
    right:-34px!important;
    bottom:10px!important;
    width:min(64vw,285px)!important;
    height:78px!important;
    background:rgba(217,103,121,.78)!important;
    opacity:1!important;
    transform:none!important;
  }
}
@media(max-width:480px){
  .about-photo{padding-bottom:42px!important}
  .about-photo .lauren-signature{
    right:-28px!important;
    bottom:8px!important;
    width:250px!important;
    max-width:66vw!important;
    height:72px!important;
  }
}

/* V58 — public cleanup: reveal signature needle on mobile */
@media(max-width:800px){
  .about-photo .lauren-signature{
    right:-72px!important;
    width:min(70vw,310px)!important;
  }
}
@media(max-width:480px){
  .about-photo .lauren-signature{
    right:-58px!important;
    width:270px!important;
    max-width:72vw!important;
  }
}

/* V59 FIXED — Lauren signature rendering only.
   Keep existing size/position; render the transparent SVG directly for crisp Retina output. */
.about-photo .lauren-signature{
  -webkit-mask:none!important;
  mask:none!important;
  background:none!important;
  object-fit:contain!important;
  display:block;
}

/* V60 — product photography editorial pass */
.category-stage .cat{min-height:590px;display:grid;grid-template-columns:minmax(0,.88fr) minmax(300px,1.12fr);gap:clamp(28px,4vw,70px);align-items:center;padding:58px 4.5vw;isolation:isolate}
.cat-copy{position:relative;z-index:3;min-width:0}.cat-copy b{right:auto;left:0;top:-26px;opacity:.85}.cat-copy h3{margin:54px 0 18px}.cat-copy p{max-width:410px}.cat-copy a{margin-top:34px}
.product-pair{height:430px;position:relative;min-width:0}.product-shot{position:absolute;margin:0;overflow:hidden;background:var(--sand);box-shadow:0 18px 42px rgba(63,56,53,.10)}.product-shot img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .7s cubic-bezier(.2,.72,.22,1)}
.product-shot-main{width:76%;height:86%;right:0;top:0}.product-shot-accent{width:46%;height:48%;left:0;bottom:0;border:9px solid var(--ivory);box-shadow:0 16px 34px rgba(63,56,53,.12)}
.cat-2 .product-shot-accent{border-color:var(--petal)}.cat-3 .product-shot-accent{border-color:#eef1e8}.cat-4 .product-shot-accent{border-color:var(--ivory)}
.cat:hover .product-shot-main img{transform:scale(1.025)}.cat:hover .product-shot-accent img{transform:scale(1.04)}
.cat-1 .product-shot-main img{object-position:center}.cat-1 .product-shot-accent img{object-position:center}.cat-2 .product-shot-main img{object-position:center}.cat-2 .product-shot-accent img{object-position:center}.cat-3 .product-shot-main img{object-position:center}.cat-3 .product-shot-accent img{object-position:center}.cat-4 .product-shot-main img{object-position:center}.cat-4 .product-shot-accent img{object-position:center}
@media(max-width:800px){.category-stage .cat{display:block!important;min-height:0!important;padding:48px 25px 42px!important}.cat-copy b{top:-18px}.cat-copy h3{margin-top:50px!important}.cat-copy a{margin-top:28px}.product-pair{height:390px;margin-top:38px}.product-shot-main{width:82%;height:82%;right:0}.product-shot-accent{width:49%;height:47%;left:0;bottom:0;border-width:7px}}
@media(max-width:430px){.product-pair{height:340px}.category-stage .cat{padding-left:22px!important;padding-right:22px!important}.product-shot-main{width:84%;height:80%}.product-shot-accent{width:51%;height:46%}}

/* V61 — third editorial landscape product image per category */
.product-pair{height:455px}
.product-shot-main{width:72%;height:76%;right:0;top:0;z-index:1}
.product-shot-accent{width:43%;height:43%;left:0;bottom:5%;z-index:3}
.product-shot-landscape{
  width:52%;
  height:27%;
  right:2%;
  bottom:0;
  z-index:2;
  border:8px solid var(--ivory);
  box-shadow:0 15px 32px rgba(63,56,53,.11);
}
.cat-2 .product-shot-landscape{border-color:var(--petal)}
.cat-3 .product-shot-landscape{border-color:#eef1e8}
.cat-4 .product-shot-landscape{border-color:var(--ivory)}
.product-shot-landscape img{object-fit:cover;object-position:center}
.cat:hover .product-shot-landscape img{transform:scale(1.035)}

@media(max-width:800px){
  .product-pair{height:430px;margin-top:38px}
  .product-shot-main{width:80%;height:70%;right:0}
  .product-shot-accent{width:46%;height:40%;left:0;bottom:6%}
  .product-shot-landscape{width:60%;height:24%;right:0;bottom:0;border-width:7px}
}
@media(max-width:430px){
  .product-pair{height:390px}
  .product-shot-main{width:82%;height:68%}
  .product-shot-accent{width:47%;height:38%;bottom:7%}
  .product-shot-landscape{width:62%;height:23%;right:0;bottom:0;border-width:6px}
}

/* V62 — targeted product-card fixes only */
/* Spirit wear: give both smaller images more width so the embroidery is not cropped too tightly. */
.cat-2 .product-shot-accent{
  width:52%!important;
  height:43%!important;
}
.cat-2 .product-shot-landscape{
  width:60%!important;
  height:27%!important;
  right:0!important;
}
.cat-2 .product-shot-accent img,
.cat-2 .product-shot-landscape img{
  object-fit:cover!important;
  object-position:center!important;
}

/* Business & Custom: preserve the backpack as the smaller portrait image. */
.cat-4 .product-shot-accent img{
  object-fit:cover!important;
  object-position:center!important;
}

@media(max-width:800px){
  .cat-2 .product-shot-accent{width:54%!important;height:40%!important}
  .cat-2 .product-shot-landscape{width:66%!important;height:24%!important}
}
@media(max-width:430px){
  .cat-2 .product-shot-accent{width:56%!important;height:38%!important}
  .cat-2 .product-shot-landscape{width:68%!important;height:23%!important}
}

/* V63 — Spirit Wear alignment/crop fix only */
.cat-2 .product-shot-accent{
  width:43%!important;
  height:43%!important;
  left:0!important;
  bottom:5%!important;
}
.cat-2 .product-shot-landscape{
  width:52%!important;
  height:27%!important;
  right:2%!important;
  bottom:0!important;
}
.cat-2 .product-shot-accent img{
  object-fit:cover!important;
  object-position:center!important;
}
.cat-2 .product-shot-landscape img{
  object-fit:contain!important;
  object-position:center!important;
  background:#fff!important;
}

@media(max-width:800px){
  .cat-2 .product-shot-accent{
    width:46%!important;
    height:40%!important;
    left:0!important;
    bottom:6%!important;
  }
  .cat-2 .product-shot-landscape{
    width:60%!important;
    height:24%!important;
    right:0!important;
    bottom:0!important;
  }
}
@media(max-width:430px){
  .cat-2 .product-shot-accent{
    width:47%!important;
    height:38%!important;
    bottom:7%!important;
  }
  .cat-2 .product-shot-landscape{
    width:62%!important;
    height:23%!important;
    right:0!important;
    bottom:0!important;
  }
}

/* V65 — fully branded public form controls */
.order-form .custom-field-label{position:relative}
.tgh-select,.tgh-date{position:relative}
.tgh-select-trigger,.tgh-date-trigger{
  width:100%;
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:0;
  border-bottom:1px solid var(--taupe);
  background:transparent;
  padding:12px 2px;
  color:var(--ink);
  font:400 12px Poppins;
  text-align:left;
  cursor:pointer;
}
.tgh-select-trigger:focus-visible,.tgh-date-trigger:focus-visible,
.tgh-option:focus-visible,.tgh-month-nav:focus-visible,.tgh-day:focus-visible,
.tgh-calendar-clear:focus-visible{
  outline:2px solid rgba(201,166,90,.58);
  outline-offset:3px;
}
.tgh-chevron{
  width:8px;height:8px;
  border-right:1.5px solid var(--ink);
  border-bottom:1.5px solid var(--ink);
  transform:rotate(45deg) translateY(-2px);
  transition:transform .25s ease;
  margin-right:4px;
}
.tgh-select.is-open .tgh-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.tgh-select-menu{
  position:absolute;
  left:0;right:0;
  top:calc(100% + 8px);
  z-index:40;
  background:rgba(255,253,247,.985);
  border:1px solid rgba(201,166,90,.42);
  box-shadow:0 18px 45px rgba(63,56,53,.13);
  padding:8px;
  opacity:0;
  transform:translateY(-6px);
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
}
.tgh-select.is-open .tgh-select-menu{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.tgh-option{
  width:100%;
  border:0;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:13px 14px;
  font:500 12px Poppins;
  color:var(--ink);
  cursor:pointer;
  text-align:left;
}
.tgh-option:hover,.tgh-option.is-selected{
  background:linear-gradient(90deg,rgba(252,238,240,.88),rgba(243,233,220,.5));
  color:var(--deep);
}
.tgh-option i{
  color:var(--gold);
  font-style:normal;
  opacity:0;
}
.tgh-option.is-selected i{opacity:1}

.tgh-calendar-icon{
  width:16px;height:16px;
  border:1.5px solid var(--ink);
  position:relative;
  margin-right:3px;
  border-radius:1px;
}
.tgh-calendar-icon:before,.tgh-calendar-icon:after{
  content:"";
  position:absolute;
  top:-4px;
  width:2px;height:6px;
  background:var(--ink);
}
.tgh-calendar-icon:before{left:3px}
.tgh-calendar-icon:after{right:3px}
.tgh-calendar-icon{background:linear-gradient(var(--gold),var(--gold)) 0 4px/100% 1px no-repeat}
.tgh-date-value.is-placeholder{color:#77716e}

.tgh-calendar{
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  z-index:45;
  width:min(330px,90vw);
  background:rgba(255,253,247,.995);
  border:1px solid rgba(201,166,90,.48);
  box-shadow:0 20px 50px rgba(63,56,53,.15);
  padding:18px;
  opacity:0;
  transform:translateY(-6px);
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
}
.tgh-date.is-open .tgh-calendar{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.tgh-calendar-head{
  display:grid;
  grid-template-columns:38px 1fr 38px;
  align-items:center;
  gap:6px;
  margin-bottom:14px;
}
.tgh-month-label{
  text-align:center;
  font:500 19px 'Cormorant Garamond';
  letter-spacing:.02em;
  color:var(--ink);
}
.tgh-month-nav{
  width:36px;height:36px;
  border:1px solid rgba(201,166,90,.45);
  background:transparent;
  color:var(--deep);
  cursor:pointer;
  font-size:16px;
}
.tgh-month-nav:hover{background:var(--petal)}
.tgh-weekdays,.tgh-days{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:4px;
}
.tgh-weekdays{
  margin-bottom:5px;
  color:var(--green);
  font:600 8px Poppins;
  letter-spacing:.08em;
  text-align:center;
}
.tgh-weekdays span{padding:5px 0}
.tgh-day{
  aspect-ratio:1;
  border:0;
  background:transparent;
  border-radius:50%;
  font:500 11px Poppins;
  color:var(--ink);
  cursor:pointer;
  transition:background .15s ease,color .15s ease,transform .15s ease;
}
.tgh-day:hover:not(:disabled){
  background:var(--petal);
  color:var(--deep);
  transform:translateY(-1px);
}
.tgh-day.is-selected{
  background:var(--deep);
  color:white;
}
.tgh-day.is-today:not(.is-selected){
  box-shadow:inset 0 0 0 1px var(--gold);
}
.tgh-day:disabled{
  opacity:.22;
  cursor:not-allowed;
}
.tgh-day.is-empty{visibility:hidden}
.tgh-calendar-clear{
  width:100%;
  margin-top:12px;
  padding:10px;
  border:0;
  border-top:1px solid rgba(201,166,90,.35);
  background:transparent;
  color:var(--deep);
  font:600 8px Poppins;
  letter-spacing:.16em;
  cursor:pointer;
}
.tgh-calendar-clear:hover{background:rgba(252,238,240,.55)}

.order-form .check{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:10px;
  cursor:pointer;
  width:max-content;
  max-width:100%;
}
.order-form .check input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.check-box{
  width:17px;height:17px;
  flex:0 0 17px;
  border:1px solid var(--taupe);
  background:var(--ivory);
  position:relative;
  transition:.2s ease;
}
.order-form .check input:checked + .check-box{
  background:var(--deep);
  border-color:var(--deep);
}
.order-form .check input:checked + .check-box:after{
  content:"";
  position:absolute;
  left:5px;top:2px;
  width:4px;height:8px;
  border-right:2px solid white;
  border-bottom:2px solid white;
  transform:rotate(45deg);
}
.order-form .check input:focus-visible + .check-box{
  outline:2px solid rgba(201,166,90,.58);
  outline-offset:3px;
}
.field-error{
  min-height:14px;
  margin-top:5px;
  color:var(--deep);
  font:500 9px Poppins;
  letter-spacing:.04em;
}
.order-form input.is-invalid{
  border-bottom-color:var(--deep)!important;
}
.form-message{
  margin-top:14px;
  min-height:16px;
  font:500 10px Poppins;
  color:var(--deep);
}
@media(max-width:800px){
  .tgh-select-trigger,.tgh-date-trigger{font-size:14px;min-height:50px}
  .tgh-option{font-size:14px;padding:15px}
  .tgh-calendar{
    left:0;
    right:auto;
    width:min(330px,calc(100vw - 50px));
  }
  .tgh-month-label{font-size:22px}
  .tgh-day{font-size:12px}
  .order-form .check{align-items:flex-start;line-height:1.5}
}

/* V66 — branded control contrast + calendar sizing repair */

/* The main form submit rule was bleeding into every button inside the
   custom controls. Explicitly reset those buttons first. */
.order-form .tgh-select-trigger,
.order-form .tgh-date-trigger,
.order-form .tgh-option,
.order-form .tgh-month-nav,
.order-form .tgh-day,
.order-form .tgh-calendar-clear {
  font-family:Poppins,sans-serif;
  letter-spacing:normal;
  text-transform:none;
}

/* Pink field buttons */
.order-form .tgh-select-trigger,
.order-form .tgh-date-trigger {
  min-height:54px;
  padding:14px 22px;
  background:var(--deep);
  border:0;
  border-bottom:3px solid var(--gold);
  color:#fff;
  font-size:13px;
  font-weight:500;
}

.order-form .tgh-select-value,
.order-form .tgh-date-value,
.order-form .tgh-date-value.is-placeholder {
  color:#fff;
}

.order-form .tgh-chevron {
  border-color:#fff;
}

.order-form .tgh-calendar-icon {
  border-color:#fff;
  background:linear-gradient(#fff,#fff) 0 4px/100% 1px no-repeat;
}
.order-form .tgh-calendar-icon:before,
.order-form .tgh-calendar-icon:after {
  background:#fff;
}

/* Dropdown menu */
.order-form .tgh-option {
  min-height:0;
  padding:13px 14px;
  background:transparent;
  border:0;
  color:var(--ink);
  font-size:12px;
  font-weight:500;
}
.order-form .tgh-option:hover,
.order-form .tgh-option.is-selected {
  background:linear-gradient(90deg,rgba(252,238,240,.88),rgba(243,233,220,.5));
  color:var(--deep);
}

/* Calendar — compact, contained, readable */
.order-form .tgh-calendar {
  box-sizing:border-box;
  width:320px;
  max-width:calc(100vw - 40px);
  padding:18px;
  overflow:hidden;
  background:var(--ivory);
}

.order-form .tgh-calendar-head {
  grid-template-columns:34px minmax(0,1fr) 34px;
  gap:8px;
  margin-bottom:14px;
}

.order-form .tgh-month-nav {
  width:34px;
  height:34px;
  min-height:0;
  padding:0;
  border:1px solid rgba(201,166,90,.5);
  background:var(--deep);
  color:#fff;
  font-size:14px;
  font-weight:500;
}
.order-form .tgh-month-nav:hover {
  background:var(--rose);
}

.order-form .tgh-month-label {
  min-width:0;
  color:var(--ink);
  font:500 18px/1.1 'Cormorant Garamond';
  white-space:nowrap;
}

.order-form .tgh-weekdays,
.order-form .tgh-days {
  width:100%;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:3px;
}

.order-form .tgh-weekdays span {
  padding:4px 0 7px;
  color:var(--green);
  font-size:8px;
}

.order-form .tgh-day {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:0;
  aspect-ratio:1;
  padding:0;
  margin:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--ink);
  font-size:10px;
  font-weight:500;
  line-height:1;
}
.order-form .tgh-day:hover:not(:disabled) {
  background:var(--petal);
  color:var(--deep);
}
.order-form .tgh-day.is-selected {
  background:var(--deep);
  color:#fff;
}
.order-form .tgh-day.is-today:not(.is-selected) {
  box-shadow:inset 0 0 0 1px var(--gold);
}
.order-form .tgh-day:disabled {
  background:transparent;
  color:var(--ink);
  opacity:.22;
}

.order-form .tgh-calendar-clear {
  width:100%;
  min-height:0;
  margin-top:10px;
  padding:10px 4px 4px;
  border:0;
  border-top:1px solid rgba(201,166,90,.35);
  background:transparent;
  color:var(--deep);
  font-size:8px;
  font-weight:600;
  letter-spacing:.16em;
}
.order-form .tgh-calendar-clear:hover {
  background:rgba(252,238,240,.55);
}

/* Keep calendar inside the form on narrower layouts */
@media(max-width:800px){
  .order-form .tgh-calendar{
    left:0;
    right:auto;
    width:min(320px,calc(100vw - 72px));
  }
  .order-form .tgh-select-trigger,
  .order-form .tgh-date-trigger{
    font-size:14px;
  }
}

/* V67 — custom-order intro copy + requested 3-line heading */
.order-intro h2{
  line-height:.92;
}
.order-intro h2 em{
  display:inline;
}
@media(max-width:800px){
  .order-intro h2{
    line-height:.94;
  }
}

/* V68 — requested copy/color tweaks only */
.order-intro small{
  color:var(--deep)!important;
}
.order-intro h2 em{
  color:var(--deep)!important;
}

/* V69 — green-panel contrast + header CTA correction */
.order-intro small{
  color:#F6C7CF!important;
}
.order-intro h2 em{
  color:#F6C7CF!important;
}

/* V129 — Monograms & Names prom sash: taller portrait presentation */
.cat-1 .product-shot-landscape{
  width:42%!important;
  height:34%!important;
  right:2%!important;
  bottom:0!important;
}
.cat-1 .product-shot-landscape img{
  object-fit:cover!important;
  object-position:center 48%!important;
}
@media(max-width:800px){
  .cat-1 .product-shot-landscape{width:46%!important;height:32%!important;right:0!important}
}
@media(max-width:430px){
  .cat-1 .product-shot-landscape{width:48%!important;height:31%!important;right:0!important}
}
