.hero{position:relative;min-height:760px;overflow:hidden;background:var(--paper)}.hero-photo{position:absolute;top:0;right:0;width:100%;height:48%;object-fit:cover;object-position:78% top}.hero-fade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 22%,rgba(255,253,249,.08) 31%,rgba(255,253,249,.96) 48%,var(--paper) 60%)}.hero-brand{position:absolute;z-index:2;top:28px;left:22px}.hero-title{position:absolute;z-index:2;left:22px;right:22px;bottom:204px;font-size:clamp(58px,16vw,70px);letter-spacing:-.045em}.hero-title span{display:block}.hero-title .movement{margin-left:18%;color:var(--cocoa);font-style:italic}.hero-title .fragrance{margin-left:2%}.hero-copy{position:absolute;z-index:2;left:22px;right:22px;bottom:42px;display:grid;gap:18px}.hero-copy p{max-width:430px;color:var(--muted);font-size:14px;line-height:1.7}.hero-note{font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.editorial-section{position:relative;padding:clamp(82px,11vw,158px) 0;border-top:1px solid var(--line)}.section-label{margin-bottom:22px}.display-title{font-size:clamp(56px,13vw,112px);letter-spacing:-.05em}.body-copy{max-width:560px;color:var(--muted);font-size:15px;line-height:1.75}.editorial-action{display:inline-flex;align-items:center;min-height:50px;margin-top:28px;padding:0 18px;border:1px solid currentColor;font-size:12px;letter-spacing:.04em;transition:background .25s,color .25s}.editorial-action:hover{background:var(--ink);color:var(--paper)}
.training-story{margin:0 calc(50% - 50vw);padding:clamp(72px,9vw,128px) max(20px,calc((100vw - 1376px)/2));background:var(--night);color:var(--paper)}.training-layout{display:grid}.training-copy p{max-width:500px;margin-top:26px;color:#c9c0b7;line-height:1.75}.training-copy .editorial-action:hover{background:var(--paper);color:var(--ink)}.training-meta{margin-top:20px;color:#b9afa5;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.schedule-story{padding-top:clamp(68px,9vw,120px)}.schedule-head{display:grid;gap:20px;margin-bottom:32px}.schedule-head h3{font-size:clamp(42px,8vw,72px);letter-spacing:-.03em}.schedule-head p{max-width:520px;color:var(--muted);line-height:1.7}
.beauty-story{overflow:hidden}.beauty-layout{display:grid;gap:48px}.beauty-type{font:400 clamp(84px,26vw,170px)/.7 var(--display);letter-spacing:-.07em;color:var(--stone);white-space:nowrap;transform:translateX(-4px)}.beauty-copy h2{font-size:clamp(55px,12vw,100px);letter-spacing:-.05em}.beauty-copy p{margin-top:24px}
.selection-story{margin:0 calc(50% - 50vw);padding:clamp(82px,10vw,148px) max(20px,calc((100vw - 1376px)/2));background:#9a7354;color:#fffaf4}.selection-layout{display:grid;gap:46px}.selection-title{font-size:clamp(62px,14vw,118px);letter-spacing:-.055em}.selection-title em{display:block;font-style:italic;color:#eadccc}.selection-copy p{max-width:540px;color:#f0e6dc;line-height:1.75}.selection-copy .editorial-action:hover{background:#fffaf4;color:#6f4f39}.consultant{display:grid;gap:26px;margin-top:clamp(58px,7vw,90px);padding-top:36px;border-top:1px solid rgba(255,255,255,.42)}.consultant h3{max-width:760px;font-size:clamp(38px,8vw,62px)}.consultant p{max-width:520px;color:#f0e6dc;line-height:1.7}.consultant-actions{display:flex;flex-wrap:wrap;gap:12px 26px}.consultant-link{display:inline-flex;align-items:center;min-height:48px;border-bottom:1px solid currentColor;font-size:12px}.personal-consult{display:grid;gap:20px;padding:clamp(58px,7vw,90px) 0;border-bottom:1px solid var(--line)}.personal-consult h3{font-size:clamp(42px,9vw,70px)}.personal-consult p{max-width:560px;color:var(--muted);line-height:1.7}
.utility{display:grid;border-top:1px solid var(--line)}.utility-item{display:grid;gap:16px;padding:30px 0;border-bottom:1px solid var(--line)}.utility-item h3{font-size:36px}.utility-item p{max-width:480px;color:var(--muted);font-size:13px;line-height:1.65}.utility-link{display:inline-flex;align-items:center;min-height:42px;width:max-content;border-bottom:1px solid currentColor;font-size:12px}
.partners{display:grid;gap:36px}.partners h2{max-width:850px}.partners p{margin-top:22px}.social{margin:0 calc(50% - 50vw);padding:clamp(74px,9vw,126px) max(20px,calc((100vw - 1376px)/2));background:var(--night);color:var(--paper)}.social-head{display:grid;gap:20px;margin-bottom:44px}.social h2{font-size:clamp(58px,12vw,100px);letter-spacing:-.045em}.social-head p{max-width:470px;color:#c5bcb2;line-height:1.7}.social-list{display:grid}.social-link{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px;border-top:1px solid rgba(255,255,255,.25)}.social-link:last-child{border-bottom:1px solid rgba(255,255,255,.25)}.social-link span{font:400 28px/1 var(--display)}.social-link small{color:#b7ada3;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.footer{padding:48px 0 26px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:24px}.footer-top p{color:var(--muted);font-size:12px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;margin-top:34px}.footer-nav a{display:flex;align-items:center;min-height:46px;border-top:1px solid var(--line);font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:18px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:9px;letter-spacing:.12em;text-transform:uppercase}
#site-menu{width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:28px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}#site-menu::backdrop{background:rgb(24 22 20/.64)}.menu-top{display:flex;align-items:center;justify-content:space-between}.menu-top h2{font-size:42px}.icon-button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;position:relative;font-size:0}.icon-button::before,.icon-button::after{content:"";position:absolute;left:50%;top:50%;width:17px;height:1px;background:currentColor}.icon-button::before{transform:translate(-50%,-50%) rotate(45deg)}.icon-button::after{transform:translate(-50%,-50%) rotate(-45deg)}#site-menu nav{margin-top:24px}#site-menu nav a{display:flex;justify-content:space-between;align-items:center;min-height:54px;border-top:1px solid var(--line);font-size:14px}#site-menu nav a span{color:var(--muted);font-size:10px}
