/* BRIC: spatial photographic composition inspired by the historical Awwwards recording.
   These are authored BRIC values, not extracted parameters from the original site. */
:root{--rose:#dca5ac;--celery:#adb77b;--wine:#60333f;--motion-progress:1;scrollbar-color:#9aa468 #303b27}
body{background:var(--olive)}
.header{max-width:none;background:var(--olive);color:var(--cream);padding-top:16px;padding-bottom:16px;z-index:10}
.brand{width:70px}.header-contact{border-color:#aab28e}.header .mobile-menu{background:var(--olive);color:var(--cream);border-color:#7a885e}
.hero{height:auto;padding:0;overflow:visible;background:var(--olive)}
.motion-stage{height:100svh;min-height:620px;position:relative;overflow:clip;isolation:isolate;color:var(--cream)}
.hero h1{position:absolute;top:5svh;left:0;width:100%;padding:0;z-index:1;display:flex;align-items:baseline;justify-content:center;gap:24px;text-align:center;transform:translateY(calc(var(--motion-progress) * -16px));pointer-events:none}
.hero-small{font-size:clamp(40px,5.2vw,78px);font-style:normal;line-height:1}
.hero-word{font-size:clamp(70px,8vw,120px);font-style:italic;line-height:1;letter-spacing:-.035em}.period{color:var(--rose)}
.campaign{position:absolute;inset:32svh 0 auto;width:100%;max-width:none;height:60svh;margin:0;z-index:2}
.campaign figure{margin:0;position:absolute;top:0;transform-origin:center}
.campaign .photo-button{border:0;box-shadow:none;overflow:hidden}
.campaign .photo-button img{aspect-ratio:3/4;object-fit:cover;filter:none}
.campaign-pink{width:44svh;left:calc(50% - 22svh);z-index:3;transform:scale(calc(1.48 - var(--motion-progress) * .48))}
.campaign-blue{width:36svh;left:5%;top:3svh!important;transform:translate(calc((var(--motion-progress) - 1) * 8vw),calc((1 - var(--motion-progress)) * 12svh));opacity:1}
.campaign-green{width:36svh;right:5%;top:9svh!important;transform:translate(calc((1 - var(--motion-progress)) * 8vw),calc((1 - var(--motion-progress)) * 14svh));opacity:1}
.campaign figcaption{display:none}
.campaign-green figcaption{text-align:right}
.hero-bottom{position:absolute;bottom:14px;left:5%;right:5%;margin:0;max-width:none;z-index:4;align-items:center;background:var(--olive);padding-top:10px}
.hero-bottom p{font-size:13px;letter-spacing:.01em}.scroll-invitation{display:flex;align-items:center;gap:16px}.scroll-invitation svg{height:18px}
.round-link{padding:12px 0;border:0;border-bottom:1px solid #aab28e;font-size:15px;gap:20px}.round-link:hover{background:none}
.selection{max-width:none;background:var(--rose);color:var(--olive);padding:105px 7% 80px}
.selection>div,.selection>.availability{max-width:1240px;margin-left:auto;margin-right:auto}
.selection-intro{grid-template-columns:1.5fr 1fr;gap:80px;margin-bottom:85px}
.selection-intro h2{font-size:clamp(60px,7.3vw,110px)}
.selection-intro p,.story-caption span,.availability{color:#434536}
.editorial-grid{gap:12%;grid-template-columns:1.1fr 1fr}.green-story{padding-top:145px}
.blue-story{padding-right:0}.blue-story img{aspect-ratio:3/4;object-position:center}
.side-copy{font-size:clamp(32px,3vw,45px);margin-left:0;margin-bottom:45px}.side-copy em{color:var(--olive)}
.green-story img{aspect-ratio:3/4;object-position:center}.photo-button img{filter:none}
.story-caption{display:block}.story-caption h3{font-size:clamp(38px,4vw,58px)}.story-caption span{display:block;font-size:15px;margin-top:15px}.story-caption span br{display:none}
.availability{border-color:#a56f7c;padding-top:25px;margin-top:75px;font-size:13px}
.point-of-view{background:var(--celery);color:var(--olive);grid-template-columns:1fr 1fr}
.point-photo img{filter:none}.point-copy{padding:65px 11%}.point-copy h2{font-size:clamp(48px,5.8vw,88px)}.point-copy p{color:#303b27}
.visit{max-width:none;background:var(--wine);color:var(--cream);padding:110px 7%;grid-template-columns:1.5fr 1fr;gap:12%}
.visit h2{font-size:clamp(52px,6vw,90px)}.visit>div>p{color:#f0dbdf}.visit address{border-color:#b58494}.visit .button{background:var(--cream);color:var(--wine)}.visit .button:hover{background:#ead0d5}
footer{background:#202b1e;color:var(--cream);padding:35px 7%}.footer-line{border-color:#657453}footer>p{color:#d4dbc5}
@media(min-width:1800px){.campaign-blue{left:11%}.campaign-green{right:11%}}
@media(max-width:1050px){.hero-small{font-size:48px}.hero-word{font-size:80px}.campaign-pink{width:42svh;left:calc(50% - 21svh)}.campaign-blue{left:0;width:31svh}.campaign-green{right:0;width:31svh}.selection-intro{gap:40px}.selection-intro h2{font-size:72px}.editorial-grid{gap:8%}.point-copy{padding:50px 9%}.visit{gap:8%}}
@media(max-width:700px){
 .header{padding:12px 20px}.brand{width:58px}.brand-line{font-size:12px}
 .motion-stage{min-height:630px}.hero h1{top:7svh;display:block}.hero-small{font-size:36px}.hero-word{font-size:88px;line-height:1}
 .campaign{top:32svh;height:52svh}.campaign-pink{width:72vw;left:14%;transform:scale(calc(1.34 - var(--motion-progress) * .34))}
 .campaign-blue{width:43vw;left:-5%;top:16svh!important;transform:translate(calc((var(--motion-progress) - 1) * 8vw),calc((1 - var(--motion-progress)) * 9svh))}
 .campaign-green{width:43vw;right:-5%;top:26svh!important;transform:translate(calc((1 - var(--motion-progress)) * 8vw),calc((1 - var(--motion-progress)) * 12svh))}
 .campaign figcaption{display:none}.campaign-pink{z-index:2}.campaign-blue,.campaign-green{z-index:3}
 .hero-bottom{bottom:22px;left:20px;right:20px;gap:18px;margin:0}.hero-bottom p{font-size:12px}.scroll-invitation{gap:6px;max-width:100px}.scroll-invitation svg{flex-shrink:0}.round-link{font-size:13px;padding:12px 0;gap:10px;flex-shrink:0}
 .selection{padding:64px 24px 55px}.selection-intro{margin-bottom:44px}.selection-intro h2{font-size:55px}.selection-intro p{font-size:16px}.editorial-grid{display:block}.blue-story{padding-right:30px}.green-story{padding-top:65px;padding-left:30px}.side-copy{font-size:37px;margin-bottom:30px}.story-caption h3{font-size:42px}.story-caption span{font-size:14px}.availability{margin-top:45px;font-size:12px}
 .point-copy{padding:48px 24px 60px}.point-copy h2{font-size:56px}.point-photo{height:430px}.point-photo img{object-position:50% 52%}
 .visit{padding:65px 24px}.visit h2{font-size:48px}.visit address{border-color:#b58494;padding-left:0}.visit>div>p{font-size:16px}
 footer{padding:30px 24px}
}
@media(max-height:650px) and (min-width:701px){.motion-stage{min-height:550px}.hero-small{font-size:40px}.hero-word{font-size:70px}.campaign{top:29svh}.campaign-pink{width:43svh;left:calc(50% - 21.5svh)}.campaign-blue,.campaign-green{width:33svh}}
.motion-stage.is-arriving .campaign .photo-button{animation:photo-arrival 650ms cubic-bezier(.16,1,.3,1) both}
.motion-stage.is-arriving .campaign-blue .photo-button{animation-delay:90ms}.motion-stage.is-arriving .campaign-green .photo-button{animation-delay:170ms}

@keyframes photo-arrival{from{opacity:.95;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

.motion-toggle{position:absolute;top:12px;left:5%;z-index:5;min-height:44px;padding:8px 0;border:0;border-bottom:1px solid #84916b;background:transparent;color:var(--cream);font-size:12px}.motion-toggle[hidden]{display:none}
@keyframes photo-arrival-gentle{from{opacity:.98;transform:translateY(3px)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.photo-button img{transition:transform .12s ease-out!important}.motion-stage.is-arriving .campaign .photo-button{animation-name:photo-arrival-gentle;animation-duration:850ms}}
@media print{.hero{height:auto}.motion-stage{position:relative;--motion-progress:1!important}}

/* Photorealistic AI frame cutouts; clothing originals remain separate and unchanged. */
.campaign .photo-button{position:relative;border:0;padding:0;background:transparent;box-shadow:none;aspect-ratio:3/4;overflow:visible;isolation:isolate}
.campaign .photo-button::before{content:none}
.campaign-blue .photo-button{--aperture-left:14.4%;--aperture-top:10.5%;--aperture-width:71.5%;--aperture-height:78%}
.campaign-pink .photo-button{--aperture-left:18.5%;--aperture-top:13%;--aperture-width:63%;--aperture-height:73%}
.campaign-green .photo-button{--aperture-left:16.8%;--aperture-top:13.8%;--aperture-width:66.8%;--aperture-height:70.3%}
.campaign .photo-button .garment{position:absolute;left:var(--aperture-left);top:var(--aperture-top);width:var(--aperture-width);height:var(--aperture-height);aspect-ratio:auto;object-fit:cover;object-position:center;z-index:1}
.campaign .photo-button .frame-art{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:fill;pointer-events:none;z-index:2;filter:drop-shadow(6px 11px 10px #111a0d66)}
.campaign .photo-button:hover .frame-art{transform:none}
.photo-drift{--float-x:5px;--float-y:9px;--float-angle:.16deg;--float-scale-low:1;--float-scale-high:1.055;animation:gallery-float 18s ease-in-out infinite alternate;transform-origin:50% 45%}
.campaign-blue .photo-drift{animation-duration:22s;animation-delay:-7s;--float-x:-5px;--float-y:8px;--float-angle:-.14deg}
.campaign-green .photo-drift{animation-duration:20s;animation-delay:-5s;--float-x:5px;--float-y:-8px;--float-angle:.14deg}
@keyframes gallery-float{from{transform:translate(calc(var(--float-x) * -1),calc(var(--float-y) * -1)) rotate(calc(var(--float-angle) * -1)) scale(var(--float-scale-low))}to{transform:translate(var(--float-x),var(--float-y)) rotate(var(--float-angle)) scale(var(--float-scale-high))}}
.motion-stage.motion-paused .photo-drift,.motion-stage.motion-sleeping .photo-drift{animation-play-state:paused}
@media(max-width:700px){.photo-drift{--float-x:3px;--float-y:6px;--float-scale-high:1.045}.campaign-blue .photo-drift{--float-x:-3px;--float-y:6px}.campaign-green .photo-drift{--float-x:3px;--float-y:-6px}}
@media(prefers-reduced-motion:reduce){.photo-drift{--float-x:3px!important;--float-y:6px!important;--float-angle:.06deg!important;--float-scale-high:1.035;animation-duration:24s!important}}
@media print{.photo-drift{animation:none!important;transform:none!important}}
