/* Brand and homepage refinements. */
.site-header{gap:clamp(20px,2.5vw,48px);background:rgba(255,255,255,.96)}
.wordmark{display:flex;align-items:center;flex:none;line-height:0}
.wordmark img{width:clamp(175px,14vw,240px);height:auto;mix-blend-mode:multiply}
.main-nav{height:100%;align-items:stretch;gap:clamp(18px,1.8vw,38px)}
.main-nav>a,.nav-dropdown>a{display:flex;align-items:center;height:100%;white-space:nowrap;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.nav-dropdown{height:100%;display:flex;align-items:center}
.dropdown-panel{top:100%;left:-25px;width:560px;padding:23px 28px 27px;gap:0 22px;border-top:1px solid #ded8cf;box-shadow:0 22px 48px rgba(25,20,12,.13)}
.dropdown-panel a{display:block;height:auto;padding:14px 0;text-align:left}
.dropdown-panel b{font:500 11px var(--sans);text-transform:uppercase;letter-spacing:.12em}
.dropdown-panel small{line-height:1.4}
.dropdown-panel .dropdown-all{font:500 11px var(--sans);letter-spacing:.12em;text-transform:uppercase}
.hero{min-height:660px;height:min(900px,calc(100vh - 10px));background:#eee6db}
.hero-bg{background-image:linear-gradient(90deg,rgba(255,251,246,.37),rgba(255,251,246,0) 53%),url('../images/regena/hero-bridal-atelier.png');background-position:center top;background-size:cover}
.hero-copy{top:49%;max-width:710px}
.hero h1{text-shadow:0 2px 24px rgba(255,255,255,.6)}
.hero-copy>p{max-width:520px}
.hero-note{bottom:26px}
@media(max-width:1100px) and (min-width:901px){.site-header{gap:20px;padding:0 2.5vw}.wordmark img{width:170px}.main-nav{gap:15px}.main-nav>a,.nav-dropdown>a,.header-cta{font-size:10px;letter-spacing:.07em}.header-cta{padding:12px}}
@media(max-width:900px){.site-header{height:68px;padding:0 22px}.wordmark img{width:172px}.main-nav{height:auto;align-items:stretch;gap:0;padding:18px 22px}.main-nav>a,.nav-dropdown>a{height:auto;padding:13px 0;font-size:11px}.nav-dropdown{height:auto;display:block}.dropdown-panel{position:static;width:auto;padding:4px 0 14px;border:0;box-shadow:none;grid-template-columns:1fr}.dropdown-panel.mobile-open{display:grid}.nav-dropdown:hover .dropdown-panel{display:none}.nav-dropdown:hover .dropdown-panel.mobile-open{display:grid}.dropdown-panel a{padding:12px 0}.dropdown-panel b{font-size:11px}.hero{height:auto;min-height:850px}.hero-bg{background-image:linear-gradient(180deg,rgba(255,252,248,.74),rgba(255,252,248,.12) 48%,rgba(255,252,248,0) 70%),url('../images/regena/hero-blue-model.png');background-position:64% top}.hero-copy{top:120px}}

/* Full-garment editorial carousel: imagery is contained, never cover-cropped. */
.hero-showcase{height:calc(100svh - 84px);min-height:720px;max-height:1200px;margin-top:84px;padding:0;isolation:isolate;background:#eee8df}
.hero-slides,.hero-slide{position:absolute;inset:0}
.hero-slide{display:grid;grid-template-columns:43% 57%;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s ease}
.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}
.hero-slide:nth-child(1){--slide-tint:#d4b99a;--slide-image:url('../images/regena/hero-bridal-full.png')}
.hero-slide:nth-child(2){--slide-tint:#9eb9d4;--slide-image:url('../images/regena/hero-blue-dress.png')}
.hero-slide:nth-child(3){--slide-tint:#b6b6c9;--slide-image:url('../images/regena/collection-iceblue-model.png')}
.hero-showcase .hero-copy{position:relative;top:auto;left:auto;right:auto;transform:none;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:none;padding:clamp(55px,5vw,125px) clamp(34px,5.1vw,190px);background:linear-gradient(120deg,#f9f7f2 0%,#eee8df 100%)}
.hero-kicker{margin-bottom:clamp(26px,3vw,54px);font-size:10px;letter-spacing:.27em;color:#916e43}
.hero-showcase h1,.hero-showcase h2{max-width:870px;margin:0;font:clamp(52px,4vw,92px)/.95 var(--serif);letter-spacing:-.045em;text-shadow:none}
.hero-showcase .hero-copy>p{max-width:560px;margin:32px 0;font-size:clamp(17px,1.25vw,23px);line-height:1.6;color:#56514b}
.hero-visual{position:relative;min-width:0;overflow:hidden;background:var(--slide-tint);display:flex;align-items:center;justify-content:center}
.hero-visual:before{content:"";position:absolute;inset:-35px;background-image:var(--slide-image);background-size:cover;background-position:center;filter:blur(32px);opacity:.34;transform:scale(1.08)}
.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.2),transparent 25%,rgba(27,19,15,.08));pointer-events:none}
.hero-visual img{position:relative;width:100%;height:100%;object-fit:contain;object-position:center center;filter:drop-shadow(0 20px 32px rgba(32,22,15,.14))}
.hero-visual-label{position:absolute;z-index:2;right:clamp(24px,3vw,80px);bottom:35px;color:#fff;font-size:10px;letter-spacing:.22em;text-shadow:0 1px 8px #333}
.hero-showcase .hero-note{z-index:3;left:clamp(34px,5.1vw,190px);bottom:22px;color:#86765f}
.hero-controls{position:absolute;z-index:5;display:flex;gap:18px;left:clamp(34px,5.1vw,190px);bottom:66px}
.hero-switch{display:flex;align-items:center;gap:10px;padding:12px 0;border:0;background:none;color:#8d8274;cursor:pointer;font:500 10px var(--sans);letter-spacing:.13em}
.hero-switch i{display:block;width:clamp(35px,3.2vw,85px);height:1px;background:#b9afa2;transition:background .25s,height .25s}
.hero-switch.is-active{color:#5e472e}.hero-switch.is-active i{height:2px;background:#a9824d}
.hero-switch:focus-visible{outline:2px solid #a9824d;outline-offset:4px}
@media(max-width:1200px) and (min-width:901px){.hero-slide{grid-template-columns:46% 54%}.hero-showcase .hero-copy{padding:45px 4vw}.hero-showcase h1,.hero-showcase h2{font-size:clamp(50px,5.4vw,75px)}.hero-showcase .hero-note,.hero-controls{left:4vw}}
@media(max-width:900px){.hero-showcase{height:auto;min-height:0;margin-top:68px;padding:0}.hero-slides{position:relative;height:900px}.hero-slide{grid-template-columns:1fr;grid-template-rows:360px 540px}.hero-showcase .hero-copy{padding:28px 22px 20px;justify-content:center}.hero-kicker{margin-bottom:18px;font-size:9px}.hero-showcase h1,.hero-showcase h2{font-size:clamp(41px,10vw,62px)}.hero-showcase .hero-copy>p{margin:18px 0;font-size:15px;line-height:1.45}.hero-showcase .actions{gap:8px}.hero-showcase .button{min-height:44px}.hero-visual img{object-position:center center}.hero-visual-label{bottom:52px;right:22px}.hero-controls{left:22px;bottom:12px;gap:12px}.hero-switch{color:#fff;text-shadow:0 1px 5px #333}.hero-switch i{width:20px;background:#eee}.hero-switch.is-active{color:#fff}.hero-switch.is-active i{background:#fff}.hero-showcase .hero-note{display:none}}
@media(max-width:520px){.hero-slides{height:890px}.hero-slide{grid-template-rows:350px 540px}.hero-showcase h1,.hero-showcase h2{font-size:42px}.hero-showcase .actions{display:flex;gap:10px;width:100%}.hero-showcase .button{width:auto;padding:0 13px;font-size:9px}.hero-visual-label{font-size:8px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* One continuous atelier photograph behind each complete gown. */
.hero-showcase{max-height:none}
.hero-slide{display:block;background:#eadfd0 url('../images/regena/hero-atelier-empty.png') center center/cover no-repeat}
.hero-slide:nth-child(1){background-color:#e8edf1;background-image:url('../images/regena/hero-prom-ballroom.png')}
.hero-slide:nth-child(2){background-color:#d9d7d9;background-image:url('../images/regena/hero-evening-conservatory.png')}
.hero-slide:nth-child(1):before,.hero-slide:nth-child(2):before{background:none}
.hero-slide:nth-child(2) .hero-copy h2{max-width:570px}
.hero-showcase .hero-switch,.hero-showcase .hero-note{text-shadow:0 1px 3px rgba(255,255,255,.9)}
.hero-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,251,246,.68),rgba(255,251,246,.36) 35%,rgba(255,251,246,0) 62%);pointer-events:none}
.hero-showcase .hero-copy{position:absolute;inset:0 auto 0 0;width:48%;height:100%;padding:clamp(50px,5vw,140px) clamp(34px,5.1vw,190px);background:none}
.hero-visual{position:absolute;inset:2% 4% 2% auto;width:53%;height:96%;background:none;overflow:visible}
.hero-visual:before,.hero-visual:after{display:none}
.hero-visual img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 18px rgba(58,38,22,.2))}
.hero-visual-label{right:2.5vw;bottom:34px}
@media(max-width:1200px) and (min-width:901px){.hero-showcase .hero-copy{width:49%;padding:42px 4vw}.hero-visual{right:1%;width:55%}}
@media(max-width:900px){.hero-slide{background-position:55% center}.hero-slide:before{background:linear-gradient(180deg,rgba(255,251,246,.93),rgba(255,251,246,.78) 35%,rgba(255,251,246,0) 55%)}.hero-showcase .hero-copy{width:100%;height:43%;padding:28px 22px 20px;inset:0 auto auto 0}.hero-visual{inset:auto 0 0 0;width:100%;height:58%}.hero-visual-label{right:22px;bottom:52px}}
@media(max-width:900px){.hero-slide:nth-child(1):before,.hero-slide:nth-child(2):before{background:linear-gradient(180deg,rgba(250,249,247,.9),rgba(250,249,247,.72) 35%,rgba(250,249,247,0) 55%)}}

/* Restrained motion keeps the full gown visible while adding depth. */
.hero-slide.is-active{animation:atelierDrift 16s ease-in-out alternate infinite}
.hero-slide.is-active .hero-visual{animation:gownEnter .85s cubic-bezier(.22,1,.36,1) both}
.hero-slide.is-active .hero-visual img{animation:gownBreathe 8s ease-in-out 1s infinite alternate}
.hero-slide.is-active .hero-kicker,.hero-slide.is-active h1,.hero-slide.is-active h2,.hero-slide.is-active .hero-copy>p,.hero-slide.is-active .actions{animation:copyRise .7s cubic-bezier(.22,1,.36,1) both}
.hero-slide.is-active h1,.hero-slide.is-active h2{animation-delay:.08s}
.hero-slide.is-active .hero-copy>p{animation-delay:.16s}
.hero-slide.is-active .actions{animation-delay:.24s}
.look a{display:block;overflow:hidden}
.look img{transition:transform .75s cubic-bezier(.22,1,.36,1)}
.look a:hover img,.look a:focus-visible img{transform:scale(1.035)}
.look a:hover h3,.look a:focus-visible h3{color:#916e43}
.look h3{transition:color .3s ease}
.motion-pending{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1)}
.motion-pending.motion-visible{opacity:1;transform:none}
@keyframes atelierDrift{from{background-position:50% 50%}to{background-position:52% 50%}}
@keyframes gownEnter{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
@keyframes gownBreathe{from{transform:translateY(0)}to{transform:translateY(-7px)}}
@keyframes copyRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-active,.hero-slide.is-active .hero-visual,.hero-slide.is-active .hero-visual img,.hero-slide.is-active .hero-kicker,.hero-slide.is-active h1,.hero-slide.is-active h2,.hero-slide.is-active .hero-copy>p,.hero-slide.is-active .actions{animation:none}.look img,.look h3,.motion-pending{transition:none}.motion-pending{opacity:1;transform:none}}

/* Editorial capabilities and one focused sample image replace the repeated workshop spread. */
.service-strip{gap:0;padding:46px 4.2vw 52px;background:#f7f5f0}
.service-strip>div{min-width:0;padding:22px clamp(20px,2.8vw,58px) 0;border-top:1px solid #bda98b;border-right:1px solid #cbbda9}
.service-strip>div:first-child{padding-left:0}
.service-strip>div:last-child{padding-right:0;border-right:0}
.service-strip span{font:29px/1 var(--serif);color:#ac885b}
.service-strip h3{margin:18px 0 11px;font:clamp(22px,1.65vw,31px)/1.1 var(--serif);letter-spacing:-.025em}
.service-strip p{max-width:440px;margin:0;color:#68625c;font-size:15px;line-height:1.55}
.manufacturing{display:grid;grid-template-columns:35% 65%;min-height:clamp(700px,55vw,880px);padding:0;background:#171717}
.factory-gallery{position:relative;grid-column:1;display:block;min-width:0;height:100%;margin:0;overflow:hidden;background:#e7d8c7}
.factory-gallery img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center center}
.factory-gallery figcaption{position:absolute;left:24px;bottom:20px;padding:8px 10px;background:rgba(20,20,20,.62);color:#fff;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.manufacturing-panel{grid-column:2;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,.6fr);align-items:stretch;gap:clamp(35px,3.2vw,115px);padding:clamp(55px,5vw,100px) clamp(45px,4.2vw,130px)}
.manufacturing-copy{display:block;min-width:0;padding:0}
.manufacturing-copy{align-self:center}
.manufacturing h2{max-width:1200px;font-size:clamp(65px,4vw,130px);line-height:1.02}
.manufacturing h2 em{color:#fff}
.manufacturing-copy p{max-width:850px;margin:34px 0 0;font-size:clamp(17px,1.15vw,26px);line-height:1.7}
.manufacturing .button-line{margin-top:30px;min-height:clamp(54px,3.5vw,76px);padding:0 clamp(24px,2vw,44px);font-size:clamp(11px,.7vw,17px)}
.process{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none}
.process li{display:flex;flex:1;flex-direction:column;justify-content:center;padding:24px 0;border-color:#806e54;font-size:clamp(11px,.7vw,17px);line-height:1.5}
.process span{margin-bottom:7px;font-size:clamp(38px,2.4vw,86px)}
@media(min-width:2800px){.manufacturing{grid-template-columns:25% 75%;grid-template-rows:minmax(0,1fr);height:1200px;min-height:0}.factory-gallery{min-height:0}.factory-gallery img{object-position:center 5%}.manufacturing-panel{grid-template-columns:minmax(0,1.2fr) minmax(540px,.8fr);padding-inline:clamp(90px,5vw,180px)}}
@media(max-width:1400px) and (min-width:901px){.manufacturing{grid-template-columns:38% 62%}.manufacturing-panel{display:block;padding:55px 5vw}.manufacturing h2{font-size:clamp(50px,5vw,72px)}.process{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;margin-top:48px}.process li{padding:16px 0}}
@media(max-width:900px){.service-strip{grid-template-columns:1fr;gap:0;padding:30px 22px 38px}.service-strip>div,.service-strip>div:first-child,.service-strip>div:last-child{padding:21px 0 23px;border-top:1px solid #bda98b;border-right:0}.service-strip h3{margin:10px 0;font-size:27px}.service-strip p{max-width:560px}.manufacturing{display:flex;flex-direction:column;min-height:0}.factory-gallery{height:min(115vw,700px)}.factory-gallery img{object-position:center 44%}.manufacturing-panel{display:block;padding:62px 22px 55px}.manufacturing h2{font-size:clamp(48px,8vw,72px)}.process{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:40px}.process li{padding:17px 0}}
