@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Jost;src:url('assets/fonts/jost-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Jost;src:url('assets/fonts/jost-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}

/* The supplied 899 × 1748 reference is the layout master.
   Desktop sections: 469 / 313 / 340 / 260 / 253 / 113 px at 899 px.
   Scaling stops at 1600 px; below 800 px content reflows. */
:root{--paper:#fcfcfb;--soft:#f4f4f3;--ink:#16191c;--muted:#717277;--blue:#3a95bd;--unit:min(.1112347vw,1.78px);--serif:Cormorant,Georgia,serif;--sans:Jost,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:calc(13 * var(--unit));line-height:1.5;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
button{color:inherit;cursor:pointer}
button:disabled{cursor:default}
button{background:none;border:0}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
h1,h2,p,dl,dd{margin:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.03em}
.svg-defs{position:absolute;width:0;height:0;overflow:hidden}
.icon{width:1.35em;height:1.35em;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.skip-link{position:fixed;z-index:100;left:20px;top:-100px;background:white;padding:12px 20px;color:var(--ink)}
.skip-link:focus{top:12px}
.eyebrow{font-size:calc(9.7 * var(--unit));font-weight:500;letter-spacing:.23em;line-height:1.4;text-transform:uppercase}
.hero{position:relative;isolation:isolate;height:calc(469 * var(--unit));color:#fff;background:#171c20;overflow:clip}
.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-image{z-index:-3;object-position:50% 50%}
.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(4,9,12,.26),rgba(4,9,12,.07) 57%,rgba(4,9,12,.03)),linear-gradient(180deg,rgba(0,0,0,.2),transparent 20%,transparent 74%,rgba(0,0,0,.12))}
.site-header{position:relative;z-index:5;margin:0 auto;width:87.3%;max-width:1397px;display:flex;align-items:center;justify-content:space-between;gap:calc(22 * var(--unit));height:calc(67 * var(--unit))}
.brand{display:block;width:calc(138 * var(--unit));flex-shrink:0}
.brand img{width:100%;height:auto;filter:url(#logo-white)}
.main-nav{display:flex;align-items:center;gap:calc(25 * var(--unit));margin-left:auto}
.main-nav>a,.nav-products>summary{font-size:calc(9.1 * var(--unit));font-weight:400;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}
.main-nav a:hover,.nav-products>summary:hover{color:#c5dfeb}
.nav-products{position:relative}
.nav-products>summary{display:flex;align-items:center;gap:4px;cursor:pointer;list-style:none}
.nav-products>summary::-webkit-details-marker{display:none}
.nav-products>summary .icon{width:.9em;height:.9em}
.nav-products[open]>summary .icon{transform:rotate(180deg)}
.dropdown{position:absolute;left:-20px;top:calc(100% + 16px);width:235px;padding:16px 0;background:#fcfcfb;color:var(--ink);border:1px solid #dedede}
.dropdown a{display:block;padding:8px 20px;font-size:14px;letter-spacing:.02em}
.dropdown a:hover{color:#267c9f;background:#f0f3f3}
.header-actions{display:flex;align-items:center;gap:calc(13 * var(--unit));margin-left:calc(57 * var(--unit))}
.icon-button{display:inline-flex;align-items:center;justify-content:center;padding:0;width:calc(24 * var(--unit));height:calc(30 * var(--unit));flex-shrink:0}
.header-actions .icon{width:calc(16 * var(--unit));height:calc(16 * var(--unit))}
.menu-toggle{display:none}
.hero-content{position:relative;margin:calc(60 * var(--unit)) 0 0 7.45%;width:70%}
.hero h1{font-size:calc(50 * var(--unit));line-height:1.025;margin-top:calc(10 * var(--unit));letter-spacing:-.025em}
.hero-description{font-size:calc(13 * var(--unit));margin-top:calc(12 * var(--unit));color:#e8e9e9}
.hero-ctas{display:flex;gap:calc(15 * var(--unit));margin-top:calc(24 * var(--unit))}
.button{display:inline-flex;align-items:center;justify-content:center;gap:calc(13 * var(--unit));min-height:calc(35 * var(--unit));padding:calc(10 * var(--unit)) calc(19 * var(--unit));border:1px solid transparent;font-size:calc(9.5 * var(--unit));font-weight:500;letter-spacing:.08em;line-height:1.2;text-transform:uppercase;transition:background-color .18s,color .18s,border-color .18s}
.button .icon{width:1.25em;height:1.25em}
.button-light{background:#fff;color:#222427;border-color:#fff}
.button-light:hover{background:#e7f0f3;border-color:#e7f0f3}
.button-outline-light{border-color:rgba(255,255,255,.8);color:white}
.button-outline-light:hover{background:rgba(255,255,255,.13);border-color:white}
.button-outline-dark{border-color:#292c2f;color:#292c2f}
.button-outline-dark:hover{background:#20272b;color:#fff}
.button-dark{background:var(--ink);color:#fff}
.button-dark:hover{background:#276e8b}
.illustration-note{position:absolute;right:4.2%;bottom:calc(12 * var(--unit));padding:4px 7px;background:rgba(9,15,19,.66);color:#fff;font-size:max(10px,calc(8 * var(--unit)));letter-spacing:.03em}

.split-section{display:grid;grid-template-columns:40.4% 52.8%;column-gap:6.8%;align-items:center;padding-left:7.45%;padding-right:4.1%;margin:0 auto;max-width:1600px}
.introduction{min-height:calc(313 * var(--unit));padding-top:calc(19 * var(--unit));padding-bottom:calc(22 * var(--unit))}
.split-copy .eyebrow{color:#6a6b70;margin-bottom:calc(11 * var(--unit))}
.split-copy h2{font-size:calc(30 * var(--unit));line-height:1.075;letter-spacing:-.025em}
.short-rule{display:block;width:calc(23 * var(--unit));height:1px;background:#8b8d8e;margin:calc(16 * var(--unit)) 0 calc(13 * var(--unit))}
.body-copy{color:var(--muted);font-size:calc(13 * var(--unit));line-height:1.45;max-width:calc(310 * var(--unit))}
.text-link{display:inline-flex;align-items:center;gap:calc(11 * var(--unit));font-size:calc(10 * var(--unit));font-weight:500;letter-spacing:.11em;line-height:1.5;text-transform:uppercase}
.text-link:hover{color:#287e9f}
.introduction .text-link{margin-top:calc(20 * var(--unit))}
.split-image{width:100%;height:100%;object-fit:cover}
.intro-image{height:calc(272 * var(--unit));object-position:51% 50%}

.collections{background:var(--soft);padding:calc(26 * var(--unit)) 4.3% calc(26 * var(--unit));min-height:calc(340 * var(--unit))}
.section-heading{text-align:center}
.section-heading .eyebrow{color:#6d7074;font-size:calc(8.5 * var(--unit));letter-spacing:.2em}
.section-heading h2{font-size:calc(36 * var(--unit));line-height:1.1;margin:calc(4 * var(--unit)) 0 calc(5 * var(--unit))}
.section-heading>p:last-child{font-size:calc(12 * var(--unit));color:var(--muted)}
.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(18 * var(--unit));max-width:1462px;margin:calc(20 * var(--unit)) auto 0}
.collection-card{min-width:0}
.collection-card>img{width:100%;height:auto;aspect-ratio:261/163;object-fit:cover}
.collection-label{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(13 * var(--unit)) calc(9 * var(--unit)) 0;font-size:calc(10 * var(--unit));letter-spacing:.2em;text-transform:uppercase}
.collection-card:hover .collection-label{color:#267e9f}

.featured{position:relative;isolation:isolate;overflow:clip;background:#171d23;color:#fff;height:calc(260 * var(--unit))}
.featured-copy{position:relative;z-index:2;margin-left:7.45%;padding-top:calc(30 * var(--unit));width:48%}
.featured h2{font-size:calc(46 * var(--unit));line-height:1.05;margin:calc(8 * var(--unit)) 0 calc(8 * var(--unit))}
.featured-tagline{font-size:calc(10 * var(--unit));letter-spacing:.17em;text-transform:uppercase}
.specifications{display:flex;gap:calc(30 * var(--unit));margin:calc(20 * var(--unit)) 0 calc(21 * var(--unit))}
.specifications dt{display:flex;align-items:center;gap:calc(9 * var(--unit));font-size:calc(12 * var(--unit));white-space:nowrap}
.specifications dt .icon{width:calc(20 * var(--unit));height:calc(20 * var(--unit));stroke-width:1.2}
.specifications dd{font-size:calc(10 * var(--unit));letter-spacing:.035em;color:#d0d3d5;margin-top:calc(2 * var(--unit))}
.featured-image-wrap{position:absolute;inset:0 0 0 33%;z-index:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0%,#000 48%)}
.featured-image{position:absolute;width:100%;max-width:none;height:155%;object-fit:contain;right:-5%;top:50%;transform:translateY(-50%) rotate(-19deg);opacity:.92;filter:brightness(.91)}
.featured-fade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#171d23 0%,#171d23 27%,rgba(23,29,35,.96) 34%,rgba(23,29,35,.68) 43%,rgba(23,29,35,.12) 62%,transparent 85%)}

.showroom{min-height:calc(253 * var(--unit));padding-top:calc(20 * var(--unit));padding-bottom:calc(22 * var(--unit));grid-template-columns:40% 53.6%;column-gap:6.4%}
.showroom h2{font-size:calc(31 * var(--unit));margin-bottom:calc(12 * var(--unit))}
.showroom .body-copy{max-width:calc(320 * var(--unit));line-height:1.65}
.showroom .button{margin-top:calc(19 * var(--unit))}
.showroom-image{height:calc(211 * var(--unit));object-position:50% 68%}

.site-footer{min-height:calc(113 * var(--unit));background:#121415;color:#eee;padding:calc(22 * var(--unit)) 6.2% calc(16 * var(--unit))}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:1402px;margin:auto}
.footer-brand{width:calc(108 * var(--unit))}
.footer-nav{display:flex;align-items:center;gap:calc(14 * var(--unit))}
.footer-nav a{font-size:calc(8.4 * var(--unit));letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.footer-nav a+a{border-left:1px solid #777;padding-left:calc(14 * var(--unit))}
.footer-nav a:hover,.footer-bottom a:hover,.footer-bottom button:hover{color:#9bccdf}
.social-links{display:flex;align-items:center;gap:calc(17 * var(--unit))}
.social-placeholder{display:inline-flex;align-items:center;justify-content:center;width:calc(13 * var(--unit));height:calc(22 * var(--unit))}
.social-placeholder .icon{width:calc(15 * var(--unit));height:calc(15 * var(--unit))}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1402px;margin:calc(24 * var(--unit)) auto 0}
.footer-bottom small,.footer-bottom a,.footer-bottom button{font-size:calc(8 * var(--unit));font-weight:400;color:#d0d1d2;line-height:1.4}
.footer-bottom nav{display:flex;align-items:center;gap:calc(11 * var(--unit))}
.footer-bottom nav>*+*{border-left:1px solid #777;padding-left:calc(11 * var(--unit))}
.footer-bottom button{padding-top:0;padding-bottom:0;padding-right:0}

/* Native dialogs keep the prototype fully functional over file://, without a server. */
dialog{background:var(--paper);color:var(--ink);border:0;width:min(610px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:48px;font-size:17px;line-height:1.55}
dialog::backdrop{background:rgba(10,16,20,.73)}
dialog h2{font-size:44px;line-height:1.1;margin:10px 0 20px}
dialog .eyebrow{font-size:11px}
dialog p{color:#666a6e}
dialog .dialog-close{position:absolute;top:14px;right:14px;width:32px;height:32px}
dialog address{margin:24px 0;font-style:normal;line-height:1.85}
dialog address a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:#b2b8bd}
.dialog-actions{display:flex;flex-wrap:wrap;gap:12px}
dialog .button{min-height:46px;padding:13px 18px;font-size:12px;gap:12px}
dialog .text-link{font-size:12px;margin-top:22px;gap:12px}
#site-search{display:block;margin:10px 0 0;padding:12px 14px;border:1px solid #a7acaf;background:white;border-radius:0;width:100%;font-size:18px}
#search-dialog label{font-size:14px;color:#676d72}
.search-results{list-style:none;padding:0;margin:12px 0 0}
.search-results li+li{border-top:1px solid #dedfe0}
.search-results a{display:block;padding:10px 0}
.search-results a:hover{color:#237897}
.search-status{font-size:13px;margin-top:12px}

@media(min-width:1601px){.hero-content,.featured-copy{margin-left:calc((100vw - 1600px)/2 + 119px)}.hero-image{object-position:50% 58%}.site-footer{padding-left:max(6.2%,calc((100vw - 1402px)/2));padding-right:max(6.2%,calc((100vw - 1402px)/2))}}
@media(min-width:801px) and (max-width:1100px){.site-header{gap:15px}.main-nav{gap:calc(23 * var(--unit))}.header-actions{margin-left:calc(43 * var(--unit))}.main-nav>a,.nav-products>summary{font-size:calc(9.2 * var(--unit))}}
@media(max-width:800px){
  :root{--unit:1px}
  body{font-size:16px}
  .eyebrow{font-size:10px;letter-spacing:.2em}
  .hero{height:560px;max-height:none;min-height:0}
  .hero-image{object-position:62% 50%}
  .hero-shade{background:linear-gradient(90deg,rgba(8,14,18,.66),rgba(8,14,18,.28) 55%,rgba(8,14,18,.08)),linear-gradient(180deg,rgba(0,0,0,.2),transparent 80%,rgba(0,0,0,.1))}
  .site-header{width:auto;height:88px;margin:0 30px;gap:16px}
  .brand{width:165px}
  .header-actions{margin:0 0 0 auto;gap:12px}
  .header-actions .icon{width:20px;height:20px}
  .icon-button{width:36px;height:42px}
  .menu-toggle{display:flex;position:relative;flex-direction:column;gap:6px}
  .menu-toggle span{width:23px;height:1px;background:currentColor;transition:transform .15s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .main-nav{display:none;position:absolute;left:-30px;right:-30px;top:88px;padding:24px 30px 30px;background:#151b20;margin:0;border-top:1px solid #ffffff20;max-height:calc(100dvh - 88px);overflow:auto}
  .main-nav.is-open{display:flex;align-items:flex-start;flex-direction:column;gap:0}
  .main-nav>a,.nav-products>summary{font-size:13px;padding:12px 0;letter-spacing:.13em}
  .nav-products{width:100%}
  .dropdown{position:static;width:100%;margin:0 0 12px;padding:6px 12px;background:#222b32;color:#fff;border:0}
  .dropdown a{font-size:15px;padding:10px 6px}
  .hero-content{margin:86px 30px 0;width:calc(100% - 60px)}
  .hero h1{font-size:64px;line-height:1.03;margin-top:13px}
  .hero-description{font-size:16px;margin-top:20px}
  .hero-ctas{gap:12px;margin-top:28px}
  .button{min-height:46px;font-size:11px;padding:14px 18px;gap:13px}
  .illustration-note{font-size:10px;right:20px;bottom:16px}
  .split-section{padding:42px 30px;grid-template-columns:1fr 1fr;gap:28px;min-height:0}
  .split-copy h2{font-size:34px;line-height:1.05}
  .introduction h2 br{display:none}
  .split-copy .eyebrow{margin-bottom:13px}
  .short-rule{width:25px;margin:19px 0 15px}
  .body-copy{font-size:16px;line-height:1.55;max-width:none}
  .intro-image{height:100%;min-height:340px;object-position:53% 50%}
  .text-link{font-size:11px}
  .introduction .text-link{margin-top:22px}
  .collections{padding:36px 30px 34px;min-height:0}
  .section-heading .eyebrow{font-size:10px}
  .section-heading h2{font-size:42px;margin:7px 0 9px}
  .section-heading>p:last-child{font-size:15px}
  .collection-grid{gap:18px;margin-top:28px}
  .collection-label{padding:12px 0 0;font-size:10px;letter-spacing:.13em;align-items:flex-start}
  .featured{height:355px}
  .featured-copy{margin-left:30px;padding-top:35px;width:65%}
  .featured h2{font-size:54px;margin:10px 0 14px}
  .featured-tagline{font-size:10px;letter-spacing:.12em}
  .specifications{gap:22px;margin:25px 0 26px}
  .specifications dt{font-size:13px;gap:8px}
  .specifications dd{font-size:11px;margin-top:5px}
  .featured-image-wrap{left:26%}
  .featured-image{width:110%;right:-25%}
  .showroom h2{font-size:35px;margin-bottom:14px}
  .showroom .body-copy{max-width:none;line-height:1.5}
  .showroom .button{margin-top:22px}
  .showroom-image{height:265px;object-position:46% 65%}
  .site-footer{padding:30px;min-height:0}
  .footer-top{flex-wrap:wrap;gap:26px}
  .footer-brand{width:130px}
  .footer-nav{order:3;width:100%;justify-content:space-between;gap:12px}
  .footer-nav a{font-size:10px}
  .footer-nav a+a{padding-left:12px}
  .social-placeholder{width:20px;height:24px}
  .social-placeholder .icon{width:18px;height:18px}
  .social-links{gap:19px}
  .footer-bottom{margin-top:24px;align-items:flex-start}
  .footer-bottom small,.footer-bottom a,.footer-bottom button{font-size:10px}
  .footer-bottom nav{flex-wrap:wrap;gap:9px;justify-content:flex-end}
  .footer-bottom nav>*+*{padding-left:9px}
}
@media(max-width:560px){
  .site-header{height:78px;margin:0 22px;gap:8px}
  .brand{width:143px}
  .header-actions{gap:6px}
  .header-actions .icon{width:19px;height:19px}
  .hero{height:690px;min-height:0}
  .hero-image{object-position:61% 50%}
  .hero-content{margin:68px 24px 0;width:calc(100% - 48px)}
  .hero h1{font-size:54px;margin-top:15px}
  .hero-description{font-size:16px;margin-top:18px}
  .hero-ctas{gap:10px;margin-top:26px;flex-wrap:wrap}
  .hero-ctas .button{padding:13px 14px;font-size:10px;gap:9px}
  .main-nav{top:78px;left:-22px;right:-22px;padding:18px 24px 24px;max-height:calc(100dvh - 78px)}
  .split-section{display:flex;flex-direction:column;align-items:stretch;padding:38px 24px;gap:27px}
  .split-copy h2{font-size:36px;line-height:1.06}
  .introduction h2{max-width:365px}
  .intro-image{height:auto;min-height:0;aspect-ratio:1.55;object-position:50% 50%}
  .body-copy{font-size:16px}
  .collections{padding:34px 24px 36px}
  .section-heading h2{font-size:43px}
  .section-heading>p:last-child{font-size:15px;max-width:320px;margin:auto}
  .collection-grid{grid-template-columns:1fr;gap:26px;margin-top:25px}
  .collection-card>img{aspect-ratio:1.65}
  .collection-label{font-size:11px;letter-spacing:.15em;padding:12px 2px 0}
  .collection-label .icon{width:18px;height:18px}
  .featured{height:570px}
  .featured-copy{padding-top:34px;margin-left:24px;width:calc(100% - 48px)}
  .featured h2{font-size:54px;margin:8px 0 12px}
  .featured-tagline{font-size:10px}
  .specifications{gap:26px;margin:23px 0 25px}
  .specifications dt{font-size:13px;gap:8px}
  .specifications dt .icon{width:19px;height:19px}
  .specifications dd{font-size:11px}
  .featured-image-wrap{inset:215px 0 -65px 10%;mask-image:none}
  .featured-image{width:106%;height:auto;right:-15%;opacity:.9;transform:translateY(-50%) rotate(-15deg)}
  .featured-fade{background:linear-gradient(180deg,#171d23 0%,#171d23 29%,rgba(23,29,35,.97) 38%,rgba(23,29,35,.5) 57%,rgba(23,29,35,.02) 78%)}
  .showroom h2{font-size:38px}
  .showroom-image{height:auto;aspect-ratio:1.65;object-position:50% 65%}
  .showroom .button{margin-top:22px}
  .site-footer{padding:30px 24px 24px}
  .footer-top{gap:26px}
  .footer-brand{width:130px}
  .footer-nav{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:17px 20px}
  .footer-nav a{font-size:11px}
  .footer-nav a+a{padding:0;border:0}
  .footer-bottom{flex-direction:column;gap:17px;margin-top:26px}
  .footer-bottom small,.footer-bottom a,.footer-bottom button{font-size:11px}
  .footer-bottom nav{justify-content:flex-start;gap:10px}
  .footer-bottom nav>*+*{padding-left:10px}
  dialog{padding:42px 24px 28px}
  dialog h2{font-size:36px}
  dialog .dialog-actions{flex-direction:column;align-items:stretch}
}
@media(max-width:359px){.hero h1{font-size:48px}.brand{width:124px}.header-actions{gap:1px}.specifications{gap:15px}.specifications dt{font-size:12px;gap:6px}.featured-tagline{font-size:9px}.hero-content{margin-left:20px}.footer-nav{gap:15px}.illustration-note{right:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
