
:root{--bg:#0f1115;--panel:#171a20;--panel2:#f5f3f1;--ink:#ece9e5;--muted:#a8a5a2;--rose:#c88a79;--navy:#183a67;--line:rgba(255,255,255,.12);--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.nav{position:sticky;top:0;z-index:50;background:rgba(15,17,21,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:218px}.nav-links{display:flex;gap:24px;align-items:center;font-size:14px}.nav-actions{display:flex;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;border-radius:4px;border:1px solid var(--rose);color:var(--rose);font-weight:600;background:transparent}.btn.filled{background:var(--rose);color:#141414}.btn.ghost{border-color:var(--line);color:var(--ink)}.hero{min-height:680px;position:relative;overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s;background-size:cover;background-position:center}.hero-slide.active{opacity:1}.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,10,12,.95) 0%,rgba(9,10,12,.72) 37%,rgba(9,10,12,.12) 75%)}.hero-copy{position:relative;z-index:2;padding-top:135px;max-width:650px}.eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--rose);font-weight:700;font-size:13px}.hero h1{font-size:clamp(48px,6vw,86px);line-height:1.02;font-weight:400;margin:18px 0}.hero p{font-size:20px;color:#d8d5d2;max-width:560px}.hero-controls{position:absolute;bottom:34px;left:50%;z-index:5;transform:translateX(-50%);display:flex;gap:10px}.dot{width:42px;height:3px;background:rgba(255,255,255,.28);border:0}.dot.active{background:var(--rose)}section{padding:96px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-head h2{font-size:42px;font-weight:400;margin:0}.section-head p{color:var(--muted);max-width:600px}.category-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.tab{border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 14px;border-radius:999px;cursor:pointer}.tab.active{background:var(--rose);border-color:var(--rose);color:#151515}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{background:var(--panel);border:1px solid var(--line);overflow:hidden;transition:.25s}.card:hover{transform:translateY(-6px);border-color:rgba(200,138,121,.5)}.card-media{aspect-ratio:16/9;overflow:hidden;background:#222}.card-media img{width:100%;height:100%;object-fit:cover;transition:.5s}.card:hover img{transform:scale(1.03)}.card-body{padding:24px}.code{color:var(--rose);font-size:13px;letter-spacing:.2em}.card h3{font-size:25px;font-weight:500;margin:8px 0}.meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:13px}.price{font-size:22px;margin-top:18px}.light{background:#f5f3f1;color:#17191d}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ddd}.feature{background:#fff;padding:34px}.feature strong{display:block;font-size:18px;margin:14px 0}.feature span{font-size:30px;color:var(--rose)}.finder{background:linear-gradient(135deg,#1a1d23,#101217);border:1px solid var(--line);padding:48px;display:grid;grid-template-columns:1.1fr .9fr;gap:40px}.finder-steps{display:grid;gap:16px}.finder select{width:100%;padding:15px;background:#111318;color:#fff;border:1px solid var(--line)}.comparison{overflow:auto}.comparison table{width:100%;border-collapse:collapse;min-width:1000px}.comparison th,.comparison td{padding:15px;border-bottom:1px solid var(--line);text-align:left}.comparison th{color:var(--rose)}footer{padding:54px 0;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.footer-grid h4{color:var(--rose)}.footer-grid a{display:block;color:var(--muted);margin:9px 0}.product-hero{padding:72px 0 50px;background:linear-gradient(180deg,#14171c,#0f1115)}.product-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.product-hero img{aspect-ratio:16/9;width:100%;object-fit:cover}.product-hero h1{font-size:56px;font-weight:400;line-height:1.08;margin:12px 0}.chips{display:flex;gap:10px;flex-wrap:wrap}.chip{padding:8px 12px;border:1px solid var(--line);font-size:13px}.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:34px}.spec{background:var(--panel);padding:18px}.spec label{display:block;color:var(--muted);font-size:12px;text-transform:uppercase}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#222}.gallery img:first-child{grid-column:span 2;aspect-ratio:16/9}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px}.quote-box{background:#f5f3f1;color:#17191d;padding:42px}.quote-box input,.quote-box select,.quote-box textarea{width:100%;padding:13px;margin:8px 0 16px;border:1px solid #ccc;background:#fff}.mobile-menu{display:none}.notice{font-size:12px;color:var(--muted);margin-top:10px}
@media(max-width:980px){.nav-links{display:none}.mobile-menu{display:block}.product-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.finder,.product-hero-grid,.two-col{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:620px}.hero-copy{padding-top:105px}.spec-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.wrap{width:min(100% - 28px,var(--max))}.nav-actions .btn{display:none}.logo{width:180px}.hero h1{font-size:48px}.product-grid,.feature-grid,.gallery{grid-template-columns:1fr}.gallery img:first-child{grid-column:auto;aspect-ratio:16/9}.footer-grid{grid-template-columns:1fr}.product-hero h1{font-size:42px}.spec-grid{grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}section{padding:68px 0}}

/* v2 commerce product template */
.product-page{background:#f4f2ef;color:#17191d}.product-page .nav{background:rgba(15,17,21,.94)}
.commerce-hero{padding:44px 0 28px;background:#fff}.commerce-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:52px;align-items:start}
.product-gallery{position:sticky;top:102px}.main-image{background:#eee;aspect-ratio:16/9;overflow:hidden;border:1px solid #ddd}.main-image img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}.thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:12px}.thumb{border:2px solid transparent;padding:0;background:#eee;aspect-ratio:16/9;overflow:hidden;cursor:pointer}.thumb.active{border-color:var(--rose)}.thumb img{width:100%;height:100%;object-fit:cover}
.buy-panel{padding:10px 0}.buy-panel h1{font-size:50px;font-weight:450;line-height:1.05;margin:8px 0 12px}.product-tag{font-size:18px;color:#5e5b58}.rating{margin:16px 0;color:#8a675c}.commerce-price{font-size:38px;margin:18px 0}.commerce-price small{font-size:13px;color:#777}.selling-points{padding-left:20px}.selling-points li{margin:8px 0}.option-block{margin:22px 0}.option-block label{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:9px;color:#666}.size-buttons{display:flex;gap:8px;flex-wrap:wrap}.size-btn{padding:10px 14px;border:1px solid #cfc9c3;background:#fff;cursor:pointer}.size-btn.active{background:#17191d;color:#fff;border-color:#17191d}.sku-line{font-size:13px;color:#6c6864;margin:12px 0}.qty-row{display:flex;gap:10px}.qty-row input{width:72px;padding:13px;border:1px solid #ccc}.commerce-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.commerce-actions .btn{width:100%}.trust-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px;font-size:13px;color:#666}
.quick-strip{background:#17191d;color:#fff;padding:28px 0}.quick-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:rgba(255,255,255,.12)}.quick-item{background:#17191d;padding:18px}.quick-item span{display:block;color:var(--rose);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.quick-item strong{font-size:15px}
.story-section{padding:74px 0;background:#fff}.story-row{display:grid;grid-template-columns:1.15fr .85fr;gap:58px;align-items:center;margin-bottom:72px}.story-row.reverse{grid-template-columns:.85fr 1.15fr}.story-row.reverse .story-media{order:2}.story-media img{width:100%;aspect-ratio:16/9;object-fit:cover}.story-copy h2{font-size:42px;font-weight:400;margin:8px 0}.story-copy p{color:#666}
.tabs-wrap{padding:72px 0;background:#f4f2ef}.tabs-nav{display:flex;gap:8px;overflow:auto;border-bottom:1px solid #d4d0cc}.detail-tab{padding:14px 18px;border:0;background:transparent;cursor:pointer;white-space:nowrap}.detail-tab.active{color:var(--rose);border-bottom:3px solid var(--rose)}.tab-panel{display:none;padding:32px 0}.tab-panel.active{display:block}.spec-table{width:100%;border-collapse:collapse;background:#fff}.spec-table td{padding:14px 16px;border-bottom:1px solid #e4e1de}.spec-table td:first-child{width:34%;color:#777}.download-card{padding:22px;background:#fff;border:1px solid #ddd;margin:10px 0}
.fit-section{padding:72px 0;background:#fff}.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.fit-card{padding:32px;border:1px solid #ddd}.fit-card.good{border-top:4px solid #3d7c55}.fit-card.bad{border-top:4px solid #a95959}.fit-card li{margin:10px 0}
.size-section{padding:72px 0}.size-table{width:100%;border-collapse:collapse;background:#fff}.size-table th,.size-table td{padding:14px;border-bottom:1px solid #ddd;text-align:left}.size-table th{background:#17191d;color:#fff}.install-section{padding:72px 0;background:#fff}.install-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.install-card{border:1px solid #ddd;padding:26px}.install-card b{font-size:34px;color:var(--rose)}
.related-section{padding:72px 0}.product-page footer{background:#0f1115;color:#ece9e5}
@media(max-width:980px){.commerce-grid{grid-template-columns:1fr}.product-gallery{position:static}.quick-grid{grid-template-columns:repeat(3,1fr)}.story-row,.story-row.reverse{grid-template-columns:1fr}.story-row.reverse .story-media{order:0}.install-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.thumbs{grid-template-columns:repeat(4,1fr)}.buy-panel h1{font-size:40px}.commerce-actions{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.fit-grid,.install-grid{grid-template-columns:1fr}.trust-list{grid-template-columns:1fr}}


/* v3 product detail gallery refinements */
.gallery-note{margin-top:12px;font-size:13px;color:#777}
.thumbs.six-up{grid-template-columns:repeat(6,1fr)}
.thumb-label{display:none}
@media(max-width:1100px){.thumbs.six-up{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.thumbs.six-up{grid-template-columns:repeat(2,1fr)}}


/* v4 language selector */
.language-selector{max-width:230px;padding:10px 34px 10px 12px;border:1px solid rgba(255,255,255,.18);border-radius:4px;background:#171a20;color:#ece9e5;font-size:13px;cursor:pointer}
.language-selector option{background:#fff;color:#17191d}
@media(max-width:980px){.language-selector{max-width:190px}}
@media(max-width:640px){.language-selector{max-width:150px;font-size:12px;padding:9px 26px 9px 9px}}


/* v7 unified 16:9 visual system */
.product-gallery{position:sticky;top:102px}
.main-image{border-radius:4px}
.thumbs{margin-top:12px}
.gallery-caption{margin-top:14px;padding:16px 18px;border:1px solid #e0dbd6;background:#faf8f6;border-radius:4px}
.gallery-caption-title{margin:0 0 10px 0;font-size:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#17191d}
.gallery-caption-lines{margin:0;padding-left:18px;color:#666;display:grid;gap:8px;font-size:14px;line-height:1.55}
.gallery-caption-lines li{margin:0}
.footer-bottom-note{grid-column:1 / -1;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);font-size:12px;color:#8e8a86}
.product-page .footer-bottom-note{border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:980px){.product-gallery{position:static}.gallery-caption{margin-bottom:10px}}
@media(max-width:640px){.thumb{aspect-ratio:16/9}.gallery-caption{padding:14px 15px}.gallery-caption-lines{font-size:13px}}


/* v8 locked layout refinements */
.tabs-nav{gap:30px}
.detail-tab{font-size:15px;padding:17px 6px 14px}
.gallery-note{font-size:12px;line-height:1.4;margin-top:9px}
.gallery-caption{margin-top:10px;padding:12px 15px}
.gallery-caption-title{font-size:15px;letter-spacing:0;text-transform:none;margin-bottom:6px}
.gallery-caption-lines{font-size:12.5px;line-height:1.38;gap:4px;padding-left:16px}
@media(max-width:640px){.tabs-nav{gap:18px}.detail-tab{font-size:14px}.gallery-caption-lines{font-size:12px}}

/* v8.2 twelve-series homepage grid */
.product-grid .card h3{font-size:22px;line-height:1.22}
.product-grid .card-body{padding:20px}
@media(max-width:1200px){.product-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.product-grid{grid-template-columns:1fr}}

.gallery-note{font-size:12px;line-height:1.45;color:#76716c;margin-top:10px;padding:10px 12px;background:#f7f5f3;border-left:3px solid var(--rose)}

/* v8.5 light portal trial — layout unchanged, palette redesigned */
:root{
  --bg:#e7e4df;
  --panel:#fbfaf7;
  --panel2:#f4f1ec;
  --ink:#1c1f24;
  --muted:#68645f;
  --rose:#c88a79;
  --navy:#183a67;
  --line:rgba(28,31,36,.14);
}
body{background:var(--bg);color:var(--ink)}
.nav{background:rgba(15,17,21,.96);border-bottom:1px solid rgba(255,255,255,.10);color:#ece9e5}
.nav .nav-links a,.nav .btn.ghost{color:#ece9e5}
.hero{background:#0f1115;color:#ece9e5}
.hero .eyebrow{color:var(--rose)}
section{background:#e7e4df}
section:nth-of-type(even){background:#f3f1ed}
#products{background:#e7e4df}
#products .section-head{padding:28px 30px;background:#17191d;color:#f1eeea;border-left:5px solid var(--rose);margin-bottom:30px}
#products .section-head p{color:#c8c3bd}
#products .section-head .eyebrow{color:var(--rose)}
.category-tabs{margin-bottom:26px}
.tab{background:#f8f6f2;color:#2b2e33;border-color:#cbc6bf}
.tab:hover{border-color:var(--rose)}
.tab.active{background:var(--rose);color:#17191d;border-color:var(--rose)}
.product-grid{gap:24px}
.card{background:#fbfaf7;border:1px solid #cec9c2;box-shadow:0 8px 22px rgba(31,33,36,.08)}
.card:hover{border-color:rgba(200,138,121,.75);box-shadow:0 12px 28px rgba(31,33,36,.13)}
.card-media{background:#f4f1ec;border-bottom:1px solid #ded9d2}
.card-media img{object-fit:contain;background:#f4f1ec}
.card-body{background:#fbfaf7;color:#1f2227}
.card h3{color:#1f2227}
.card p{color:#45484d}
.meta{color:#77726d}
.price{color:#17191d}
.code{color:#a96151}
.light{background:#f4f1ec;color:#17191d}
.feature-grid{background:#d6d1ca}
.feature{background:#fbfaf7}
.finder{background:linear-gradient(135deg,#20242a,#111318);color:#f0ede9;border-color:rgba(255,255,255,.10)}
.finder p{color:#c3beb8!important}
.comparison{background:#fbfaf7;border:1px solid #d3cec7;padding:0 18px}
.comparison th,.comparison td{border-color:#ddd8d1;color:#292c31}
.comparison th{color:#a96151}
.notice{color:#6d6862}
#quote.light{background:#ece9e4}
.quote-box{background:#fbfaf7;border:1px solid #d4cfc8;box-shadow:0 10px 28px rgba(31,33,36,.08)}
footer{background:#0f1115;color:#ece9e5;border-top:0}
.footer-grid a,.footer-grid p{color:#aaa6a1!important}
.footer-grid h4{color:var(--rose)}
.footer-bottom-note{border-top-color:rgba(255,255,255,.10)}

/* Dark accent strips without returning to an all-black page */
#compare .section-head,#finder .eyebrow{color:var(--rose)}
#compare .section-head h2{color:#1d2025}
.quick-strip{background:#17191d;color:#fff}
.size-table th{background:#17191d;color:#fff}

/* Product pages retain the approved layout but share the lighter portal palette */
.product-page{background:#e9e6e1;color:#17191d}
.commerce-hero{background:#f7f5f1}
.main-image,.thumb{background:#f0ede8;border-color:#d5d0c9}
.main-image img,.thumb img{object-fit:contain;background:#f0ede8}
.story-section,.fit-section,.install-section{background:#fbfaf7}
.tabs-wrap{background:#e9e6e1}
.related-section{background:#e4e1dc}
.gallery-caption{background:#f3f0eb;border-color:#d8d2cb}
.product-page footer{background:#0f1115;color:#ece9e5}

@media(max-width:640px){
  #products .section-head{padding:22px 20px}
  .comparison{padding:0 10px}
}

/* v8.6 card background matching */
:root{
  --card-surface:#f0ede8;
}
.card{background:var(--card-surface)}
.card-body{background:var(--card-surface)}
.card-media{background:var(--card-surface);display:flex;align-items:center;justify-content:center}
.card-media img{background:var(--card-surface);object-fit:contain}


/* v9.0 production refinements */
@media(min-width:981px){
  .hero-copy{margin-left:256px}
}
.choice-section .eyebrow,
#compare .eyebrow,
#quote .eyebrow{
  font-size:16px;
  letter-spacing:.24em;
  font-weight:700;
}
#products .section-head > div > h2{margin-top:0}
.comparison table{min-width:0;table-layout:fixed}
.comparison th{white-space:nowrap}
.comparison td{vertical-align:middle}
.comparison tbody tr{transition:background .18s ease,box-shadow .18s ease;cursor:pointer}
.comparison tbody tr:hover{background:rgba(200,138,121,.10)}
.comparison tbody tr:focus{outline:2px solid var(--rose);outline-offset:-2px}
.comparison tbody tr td:first-child a{font-weight:600;color:#1c1f24}
.table-product-link{display:inline-flex;white-space:nowrap;color:var(--rose);font-weight:600}
@media(max-width:980px){.hero-copy{margin-left:0}}


/* v9.1 alignment and comparison refinements */
#finder .eyebrow{font-size:16px;letter-spacing:.24em;font-weight:700}
#compare .comparison{overflow-x:visible}
#compare .comparison table{width:100%;min-width:0;table-layout:fixed}
#compare .comparison th:nth-child(1),#compare .comparison td:nth-child(1){width:17%}
#compare .comparison th:nth-child(2),#compare .comparison td:nth-child(2){width:15%}
#compare .comparison th:nth-child(3),#compare .comparison td:nth-child(3){width:7%}
#compare .comparison th:nth-child(4),#compare .comparison td:nth-child(4){width:9%}
#compare .comparison th:nth-child(5),#compare .comparison td:nth-child(5){width:10%}
#compare .comparison th:nth-child(6),#compare .comparison td:nth-child(6){width:10%}
#compare .comparison th:nth-child(7),#compare .comparison td:nth-child(7){width:13%}
#compare .comparison th:nth-child(8),#compare .comparison td:nth-child(8){width:19%}
#compare .comparison th,#compare .comparison td{white-space:normal;overflow-wrap:anywhere}
@media(max-width:980px){.hero-copy{margin-left:0}#compare .comparison{overflow-x:auto}#compare .comparison table{min-width:920px}}


/* v9.2 professional product filtering */
.product-filter-panel{margin-bottom:34px;padding:22px 24px;background:#f0ede8;border:1px solid rgba(28,31,36,.12);border-left:4px solid var(--rose)}
.filter-row{display:grid;grid-template-columns:210px 1fr;gap:20px;align-items:start}
.filter-row+.filter-row{margin-top:16px;padding-top:16px;border-top:1px solid rgba(28,31,36,.1)}
.filter-label{font-size:13px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#4f4a45;padding-top:9px}
.filter-buttons{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.product-filter-panel .tab{background:#fbfaf7;color:#292722;border-color:rgba(28,31,36,.18);padding:9px 13px;font-size:13px;transition:.2s}
.product-filter-panel .tab:hover{border-color:var(--rose);box-shadow:0 0 0 1px rgba(200,138,121,.12)}
.product-filter-panel .tab.active{background:var(--rose);color:#17191d;border-color:var(--rose)}
.product-filter-panel .feature-filter.active{background:#17191d;color:#f6f2ed;border-color:#17191d}
.clear-filters{border:0;background:transparent;color:#8a5d50;font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:9px 4px}
.filter-status{font-size:12px;color:#6b6660;margin-top:12px;min-height:18px}
.product-filter-empty{grid-column:1/-1;padding:34px;text-align:center;background:#fbfaf7;border:1px dashed rgba(28,31,36,.22);color:#68645f}
@media(max-width:980px){.filter-row{grid-template-columns:1fr;gap:8px}.filter-label{padding-top:0}.hero-copy{margin-left:0}}
@media(max-width:640px){.product-filter-panel{padding:18px 16px}.product-filter-panel .tab{font-size:12px;padding:8px 11px}}

/* v9.4 filter label no-overlap refinement */
@media(min-width:981px){
  .filter-row{grid-template-columns:270px minmax(0,1fr);gap:26px}
  .filter-label{white-space:nowrap}
}


/* v9.5 homepage product-card image behavior
   Default: front-content image.
   Hover/focus: front-clean image plus centered transparent GmaxScreen logo. */
.card-media{
  position:relative;
  overflow:hidden;
  background:#f0ede8;
}
.card-media .card-product-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#f0ede8;
  transition:opacity .28s ease;
}
.card-media .card-product-content{opacity:1;z-index:1}
.card-media .card-product-clean{opacity:0;z-index:2}
.card-media .card-hover-logo{
  position:absolute;
  left:50%;
  top:50%;
  width:min(46%,220px);
  height:auto;
  object-fit:contain;
  transform:translate(-50%,-50%);
  opacity:0;
  z-index:3;
  pointer-events:none;
  transition:opacity .28s ease;
}
.card:hover .card-product-content,
.card:focus-within .card-product-content{opacity:0}
.card:hover .card-product-clean,
.card:focus-within .card-product-clean{opacity:1}
.card:hover .card-hover-logo,
.card:focus-within .card-hover-logo{opacity:.72}
@media (hover:none){
  .card:focus-within .card-product-content{opacity:1}
  .card:focus-within .card-product-clean,
  .card:focus-within .card-hover-logo{opacity:0}
}


/* v9.7 related-card logo centering and transparency fix
   Keep hover scaling on product images only; never transform the centered logo. */
.card:hover .card-product-image,
.card:focus-within .card-product-image{
  transform:scale(1.03);
}
.card-media .card-hover-logo,
.card:hover .card-hover-logo,
.card:focus-within .card-hover-logo{
  left:50%;
  top:50%;
  width:min(46%,220px);
  height:auto;
  max-width:46%;
  background:transparent !important;
  object-fit:contain;
  transform:translate(-50%,-50%) !important;
  transform-origin:center center;
}

/* v9.7 gallery enlargement */
.main-image{position:relative;cursor:zoom-in;outline-offset:4px}.gallery-zoom-icon{position:absolute;right:18px;bottom:18px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(15,17,21,.78);color:#fff;font-size:28px;line-height:1;pointer-events:none;box-shadow:0 6px 20px rgba(0,0,0,.22)}
body.lightbox-open{overflow:hidden}.gmax-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(8,9,11,.94);display:none;align-items:center;justify-content:center;padding:56px 90px}.gmax-lightbox.open{display:flex}.gmax-lightbox figure{margin:0;max-width:min(92vw,1700px);max-height:90vh;display:flex;flex-direction:column;align-items:center}.gmax-lightbox-image{max-width:100%;max-height:84vh;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.45)}.gmax-lightbox-counter{color:#fff;margin-top:12px;font-size:14px}.gmax-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;border-radius:50%;display:grid;place-items:center}.gmax-lightbox button:hover{background:rgba(255,255,255,.22)}.gmax-lightbox-close{right:28px;top:24px;width:48px;height:48px;font-size:34px}.gmax-lightbox-prev,.gmax-lightbox-next{top:50%;transform:translateY(-50%);width:58px;height:58px;font-size:48px}.gmax-lightbox-prev{left:24px}.gmax-lightbox-next{right:24px}@media(max-width:700px){.gmax-lightbox{padding:66px 18px}.gmax-lightbox-prev{left:8px}.gmax-lightbox-next{right:8px}.gmax-lightbox-prev,.gmax-lightbox-next{width:44px;height:44px;font-size:36px}}

/* v9.9 usability refinements */
#finder .finder select{background:#f4f1ed;color:#17191d;border-color:#cfc7bf;border-radius:6px;}
#finder .finder select option{background:#fff;color:#17191d;}
#quote .quote-box .btn{border-radius:999px;padding-left:28px;padding-right:28px;}

/* v9.9 paired-image hover */
#mainProductImage{transition:opacity .18s ease;}
.main-image:hover #mainProductImage{opacity:.98;}

.story-copy .story-headline{font-size:18px;line-height:1.45;font-weight:500;margin:10px 0 12px;color:#333}.story-copy p{max-width:720px}


/* Full GS-PLAN 4A Website Detail Content */
.full-4a-content .story-copy{align-self:center}
.full-4a-content .story-copy p{max-width:760px}
.story-points{margin:18px 0 0;padding-left:22px;display:grid;gap:7px;line-height:1.55;color:#333}
.story-subheading{margin:22px 0 4px;font-size:16px;letter-spacing:.02em;color:#222}
.selection-guidance{margin-top:24px;padding:18px 20px;border-left:3px solid #D4A493;background:#F7F4F0;border-radius:0 8px 8px 0}
.selection-guidance h4{margin:0 0 8px;font-size:16px}
.selection-guidance p{margin:0}
@media(max-width:760px){.story-points{padding-left:20px}.selection-guidance{padding:15px 16px}}

/* V10.1 — Four-unit product experience structure */
.full-4a-content .story-media{align-self:flex-start}
.full-4a-content .selection-guidance{margin-top:18px;padding:20px 22px;border:1px solid #dedbd6;background:#f7f5f2;color:#252525}
.full-4a-content .selection-guidance h4{margin:0 0 10px;font-size:16px;line-height:1.35;letter-spacing:.01em}
.full-4a-content .selection-guidance ul{margin:0;padding-left:19px}
.full-4a-content .selection-guidance li{margin:7px 0;line-height:1.55}
.full-4a-content .story-decision-points{margin-top:18px}
@media (max-width: 800px){.full-4a-content .selection-guidance{margin-top:14px;padding:17px 18px}}


/* =====================================================================
   V10.5 FINAL QA — GS-STD-005 Website Content Layout Standard
   Visual Balance First: content determines layout; large unused areas are
   not permitted. Layout A-H identifiers are written into each story row.
   ===================================================================== */
.story-section.full-4a-content{
  padding:58px 0 46px;
}
.full-4a-content .story-row{
  gap:clamp(34px,4vw,58px);
  margin-bottom:clamp(46px,5vw,64px);
}
.full-4a-content .story-row:last-child{margin-bottom:0}
.full-4a-content .story-copy{min-width:0}
.full-4a-content .story-copy h2,
.full-4a-content .story-full-header h2{
  text-wrap:balance;
}
.full-4a-content .story-copy p,
.full-4a-content .story-full-header .story-headline{
  text-wrap:pretty;
}
.full-4a-content .story-full-header{
  grid-column:1 / -1;
  order:-1;
  max-width:1120px;
  margin:0 0 -12px;
}
.full-4a-content .story-full-header h2{
  max-width:1100px;
  margin:8px 0;
  font-size:clamp(34px,4vw,48px);
  line-height:1.12;
  font-weight:400;
  letter-spacing:-.025em;
}
.full-4a-content .story-full-header .story-headline{
  max-width:920px;
  margin:10px 0 0;
  font-size:18px;
  line-height:1.48;
  font-weight:500;
  color:#333;
}
.full-4a-content .gs-layout.layout-e,
.full-4a-content .gs-layout.layout-f,
.full-4a-content .gs-layout.layout-g,
.full-4a-content .gs-layout.layout-h{
  align-items:start;
}
.full-4a-content .layout-f .story-media,
.full-4a-content .layout-h .story-media{order:2}
.full-4a-content .layout-f .story-copy,
.full-4a-content .layout-h .story-copy{order:1}
.full-4a-content .layout-c .story-media,
.full-4a-content .layout-d .story-media,
.full-4a-content .layout-g .story-media,
.full-4a-content .layout-h .story-media{align-self:start}
.full-4a-content .selection-guidance{
  margin-top:14px;
  padding:16px 18px;
  border:1px solid #e2dfda;
  background:#f8f6f3;
  box-shadow:none;
}
.full-4a-content .selection-guidance h4{margin-bottom:8px}
.full-4a-content .selection-guidance li{margin:5px 0;line-height:1.45}
.full-4a-content .story-decision-points{margin-top:16px}
@media(max-width:980px){
  .story-section.full-4a-content{padding:46px 0 38px}
  .full-4a-content .story-row,
  .full-4a-content .story-row.reverse{grid-template-columns:1fr;gap:24px}
  .full-4a-content .story-full-header{margin-bottom:0}
  .full-4a-content .layout-f .story-media,
  .full-4a-content .layout-h .story-media{order:0}
  .full-4a-content .layout-f .story-copy,
  .full-4a-content .layout-h .story-copy{order:0}
}




/* V10.6.4 — unified product headline standard */
.final-selection-notes{margin-top:18px;padding:14px 16px;border-left:3px solid var(--rose);background:#faf8f6;color:#555;font-size:14px;line-height:1.55}
.final-selection-notes p{margin:0 0 8px}.final-selection-notes p:last-child{margin-bottom:0}
.final-technical-note{margin:0 0 18px;padding:14px 16px;background:#fff;border:1px solid #ddd;line-height:1.55}
.final-commerce-guidance{margin:12px 0 0;padding:11px 13px;background:#f7f3f0;border-left:3px solid var(--rose);font-size:13px;line-height:1.45;color:#555}

.full-4a-content h2.standard-product-headline,
.application-showcase__heading.standard-product-headline{
  margin:8px 0;
  max-width:none;
  font-size:42px;
  line-height:1.12;
  font-weight:400;
  letter-spacing:-.025em;
  text-wrap:balance;
}
.full-4a-content .story-full-header{
  max-width:none;
}
@media(min-width:1180px){
  .full-4a-content h2.standard-product-headline,
  .application-showcase__heading.standard-product-headline{
    white-space:nowrap;
    text-wrap:nowrap;
  }
}
@media(max-width:1179px){
  .full-4a-content h2.standard-product-headline,
  .application-showcase__heading.standard-product-headline{
    white-space:normal;
    text-wrap:balance;
    font-size:clamp(32px,4vw,42px);
  }
}


/* V10.6.5 — GS-STD-005 V2.0 unified product detail layout */

/* Reduce vertical module spacing by approximately one third. */
.story-section.full-4a-content{
  padding:40px 0 32px;
}
.full-4a-content .story-row{
  gap:clamp(30px,3.2vw,48px);
  margin-bottom:clamp(32px,3.6vw,44px);
}
.full-4a-content .story-full-header{
  margin:0 0 -6px;
}

/* One shared headline system for WHY / WHAT / HOW / WHERE. */
.full-4a-content h2.standard-product-headline,
.application-showcase__heading.standard-product-headline{
  margin:6px 0 8px;
  font-size:42px;
  line-height:1.12;
  font-weight:400;
  letter-spacing:-.025em;
}

/* Section summary: one compact, full-width line on desktop. */
.full-4a-content .story-full-header .story-headline{
  max-width:none;
  margin:8px 0 0;
  font-size:15px;
  line-height:1.4;
  font-weight:300;
  color:#5e5e5e;
}
@media(min-width:1180px){
  .full-4a-content .story-full-header .story-headline{
    white-space:nowrap;
  }
}
@media(max-width:1179px){
  .full-4a-content .story-full-header .story-headline{
    white-space:normal;
  }
}

/* Tighter relationship between summary and media/content. */
.full-4a-content .story-full-header + .story-media,
.full-4a-content .story-full-header + .story-copy{
  margin-top:0;
}

@media(max-width:980px){
  .story-section.full-4a-content{
    padding:34px 0 28px;
  }
  .full-4a-content .story-row,
  .full-4a-content .story-row.reverse{
    gap:22px;
    margin-bottom:32px;
  }
}


/* V10.6.7 — commerce product-name overflow correction */
.buy-panel{
  min-width:0;
  container-type:inline-size;
}
.buy-panel h1{
  max-width:100%;
  font-size:clamp(34px,7cqw,46px);
  line-height:1.08;
  font-weight:450;
  letter-spacing:-.02em;
  white-space:nowrap;
  overflow:visible;
}
@media(max-width:980px){
  .buy-panel h1{
    font-size:clamp(36px,7vw,46px);
    white-space:normal;
    overflow-wrap:normal;
    text-wrap:balance;
  }
}
@media(max-width:640px){
  .buy-panel h1{
    font-size:38px;
    line-height:1.1;
  }
}


/* V10.6.8 Banner Brightness & Naming Test */
.hero-slide{
  background-color:rgba(255,255,255,.075);
  background-blend-mode:screen;
}
.hero-slide:after{
  background:linear-gradient(90deg,
    rgba(9,10,12,.70) 0%,
    rgba(9,10,12,.53) 27%,
    rgba(9,10,12,.22) 46%,
    rgba(9,10,12,.06) 62%,
    rgba(9,10,12,0) 76%);
}
.hero-copy{isolation:isolate;max-width:620px}
.hero-copy:before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-48px -100px -48px -70px;
  pointer-events:none;
  background:radial-gradient(ellipse at 20% 50%,rgba(8,10,12,.28) 0%,rgba(8,10,12,.12) 52%,transparent 76%);
}
.hero h1{font-size:clamp(48px,5vw,76px);text-shadow:0 2px 18px rgba(0,0,0,.24)}
.hero p{text-shadow:0 1px 10px rgba(0,0,0,.30)}
.nav{background:rgba(20,22,26,.94);border-bottom:1px solid rgba(255,255,255,.08)}
.hero-slide--floor-rise{background-color:rgba(255,255,255,.10)}
.hero-slide--living-room{background-color:rgba(255,255,255,.08)}
.hero-slide--platform,.hero-slide--collaboration{background-color:rgba(255,255,255,.12)}

/* V10.6.9 Responsive Banner Ratio Fix
   Desktop banner canvas and all home banner assets use the same 64:25 ratio (2560x1000).
   This prevents cover-based zoom/cropping on normal desktop and ultrawide widths. */
.hero{
  min-height:0;
  width:100%;
  aspect-ratio:64 / 25;
}
.hero-slide{
  background-size:100% 100%;
  background-position:center center;
  background-repeat:no-repeat;
}
.hero-copy{
  padding-top:clamp(72px,7.05vw,135px);
}
.hero-controls{
  bottom:clamp(18px,1.8vw,34px);
}

/* Laptop/tablet: use a taller viewport so headings and controls remain usable.
   The standardized source images include peripheral safe areas for this crop. */
@media(max-width:1180px){
  .hero{
    aspect-ratio:auto;
    min-height:620px;
  }
  .hero-slide{
    background-size:cover;
    background-position:center center;
  }
  .hero-copy{padding-top:105px}
}

/* Mobile: prioritize readable content and the centered subject. */
@media(max-width:640px){
  .hero{min-height:660px}
  .hero-slide{background-position:center center}
  .hero-copy{padding-top:84px}
}


/* V10.7.1 Account entry, dimension units, and responsive customer portal */
.account-entry{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;white-space:nowrap}
.account-avatar{width:34px;height:34px;border:1px solid rgba(255,255,255,.45);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:650;background:rgba(255,255,255,.08)}
.account-entry:hover .account-avatar,.account-entry.active .account-avatar{border-color:var(--rose);background:rgba(212,164,147,.18)}
.account-entry-label{font-size:13px}
.main-image{position:relative}
.dimension-unit-switch{position:absolute;left:16px;bottom:14px;z-index:4;display:none;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(15,17,21,.24);background:rgba(255,255,255,.92);box-shadow:0 3px 14px rgba(0,0,0,.10);font-size:12px;letter-spacing:.02em}
.dimension-unit-switch.visible{display:flex}
.dimension-unit-switch button{border:0;background:none;padding:0;color:#666;cursor:pointer;font:inherit}
.dimension-unit-switch button.active{color:#17191d;font-weight:700}
.dimension-unit-switch button:hover{color:var(--rose)}
.auth-page,.account-page{background:#f6f4f1;min-height:100vh}
.auth-shell{min-height:calc(100vh - 80px);display:grid;place-items:center;padding:60px 20px}
.auth-card{width:min(480px,100%);background:#fff;border:1px solid #ddd6cf;padding:34px}
.auth-card h1{margin:0 0 8px;font-size:38px;font-weight:450}.auth-card p{color:var(--muted)}
.form-stack{display:grid;gap:14px;margin-top:24px}.form-stack label{display:grid;gap:7px;font-size:13px}.form-stack input,.form-stack select{width:100%;padding:12px;border:1px solid #cfc8c1;background:#fff;font:inherit}.form-stack .btn{width:100%}.auth-links{display:flex;justify-content:space-between;gap:12px;margin-top:18px;font-size:13px}
.account-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 78px)}
.account-sidebar{background:#181a1e;color:#fff;padding:26px 18px;position:sticky;top:0;height:100vh;overflow:auto}
.account-user{display:flex;align-items:center;gap:12px;padding:8px 8px 22px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:14px}.account-user .account-avatar{width:44px;height:44px}.account-user strong{display:block}.account-user small{color:#aaa}
.account-nav-group{margin:18px 0 7px;padding:0 10px;color:#aa8a7f;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.account-nav a{display:flex;align-items:center;gap:10px;color:#d9d9d9;text-decoration:none;padding:10px;border-radius:3px;font-size:14px}.account-nav a:hover,.account-nav a.active{background:rgba(212,164,147,.16);color:#fff}.account-nav .danger{color:#e3aaa0}
.account-main{padding:36px clamp(22px,4vw,58px) 70px;min-width:0}.account-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.account-topbar h1{font-size:38px;font-weight:450;margin:0}.account-menu-toggle{display:none}
.portal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.portal-card{background:#fff;border:1px solid #ddd6cf;padding:20px}.portal-card .metric{font-size:30px;margin-top:10px}.portal-card p,.portal-card small{color:var(--muted)}
.portal-section{background:#fff;border:1px solid #ddd6cf;padding:24px;margin-top:20px}.portal-section h2{font-size:23px;font-weight:500;margin:0 0 16px}.portal-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.portal-action{border:1px solid #ddd6cf;padding:16px;text-decoration:none;color:#17191d}.portal-action:hover{border-color:var(--rose)}
.portal-table{width:100%;border-collapse:collapse}.portal-table th,.portal-table td{text-align:left;padding:12px 10px;border-bottom:1px solid #eee;font-size:13px}.portal-table th{color:#777;font-weight:500}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-grid label{display:grid;gap:7px;font-size:13px}.settings-grid input,.settings-grid select{padding:11px;border:1px solid #cfc8c1;background:#fff;font:inherit}.settings-actions{margin-top:22px;display:flex;gap:12px}.portal-placeholder{padding:28px;border:1px dashed #cfc8c1;color:#777;background:#faf9f7}
@media(max-width:1180px){.nav-links{display:none}.account-entry-label{display:none}.portal-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.account-shell{grid-template-columns:1fr}.account-sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;z-index:1000;transform:translateX(-105%);transition:.25s}.account-sidebar.open{transform:translateX(0)}.account-main{padding:24px 18px 60px}.account-menu-toggle{display:inline-flex}.portal-actions,.settings-grid{grid-template-columns:1fr}.account-topbar h1{font-size:30px}}
@media(max-width:560px){.nav-actions .btn.ghost,.language-selector{display:none}.portal-grid{grid-template-columns:1fr}.auth-card{padding:24px}.dimension-unit-switch{left:10px;bottom:10px}}

/* =========================================================
   V11.0.1 PLATFORM HEADER / ACCOUNT CONTEXT — REQUIRED STYLES
   ========================================================= */
.v11-header{position:sticky;top:0;z-index:1200;background:#1d1f23;color:#f3f0ed;border-bottom:1px solid rgba(255,255,255,.09);box-shadow:0 2px 14px rgba(0,0,0,.12)}
.v11-header *{box-sizing:border-box}
.v11-header-inner{width:min(var(--max),calc(100% - 36px));height:80px;margin:0 auto;display:flex;align-items:center;gap:26px;min-width:0}
.v11-logo{display:flex;align-items:center;flex:0 0 190px;min-width:150px}
.v11-logo img{display:block;width:100%;height:auto;max-height:54px;object-fit:contain}
.v11-primary-nav{display:flex;align-items:center;gap:22px;min-width:0;white-space:nowrap;font-size:13px}
.v11-primary-nav a{color:#f2efec;text-decoration:none;transition:color .2s}
.v11-primary-nav a:hover{color:var(--rose)}
.v11-header-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0}
.v11-language{height:42px;max-width:178px;padding:0 34px 0 12px;border:1px solid rgba(255,255,255,.20);border-radius:4px;background:#1a1c20;color:#fff;font:inherit;font-size:12px}
.v11-quote,.v11-signin,.v11-create{height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;border-radius:4px;white-space:nowrap;font-size:12px;font-weight:650;text-decoration:none}
.v11-quote,.v11-signin{border:1px solid rgba(255,255,255,.26);color:#fff;background:transparent}
.v11-create{border:1px solid var(--rose);background:var(--rose);color:#17191d}
.v11-auth-zone,.v11-auth-fallback,.v11-account-host{display:flex;align-items:center;gap:8px;min-width:0}
.v11-account-select,.v11-avatar-wrap{position:relative}
.v11-account-button{height:44px;min-width:188px;max-width:260px;padding:5px 10px 5px 12px;border:1px solid rgba(255,255,255,.22);border-radius:4px;background:#24272c;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;text-align:left}
.v11-account-label{display:block;min-width:0;line-height:1.1}
.v11-account-label small{display:block;color:#aaa49f;font-size:9px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:3px}
.v11-account-label strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650}
.v11-avatar{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.32);background:#34373d;color:#fff;font-weight:700;cursor:pointer}
.v11-dropdown{display:none;position:absolute;top:calc(100% + 10px);right:0;width:310px;max-height:min(560px,calc(100vh - 110px));overflow:auto;padding:9px;background:#fff;color:#202328;border:1px solid #d9d3cc;border-radius:6px;box-shadow:0 18px 45px rgba(0,0,0,.26);z-index:1400}
.v11-dropdown.open{display:block}
.v11-dropdown-title{display:grid;gap:2px;padding:9px 10px 11px;color:#605b56;font-size:12px}
.v11-dropdown-title strong{color:#202328;font-size:14px}
.v11-dropdown a,.v11-dropdown button{width:100%;display:block;border:0;background:transparent;color:#202328;text-align:left;text-decoration:none;padding:10px;border-radius:4px;font:inherit;font-size:13px;cursor:pointer}
.v11-dropdown a:hover,.v11-dropdown button:hover,.v11-account-option.active{background:#f0ede8}
.v11-account-option strong,.v11-account-option small{display:block}
.v11-account-option small{margin-top:2px;color:#77716c;font-size:11px}
.v11-dropdown hr{border:0;border-top:1px solid #e5e0db;margin:7px 0}
.v11-avatar-menu{width:250px}
.v11-menu-button{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:4px;background:transparent;color:#fff;font-size:20px}
.v11-mobile-panel{display:none;background:#202328;color:#fff;border-top:1px solid rgba(255,255,255,.1);padding:12px 18px 18px}
.v11-mobile-panel.open{display:grid;gap:3px}
.v11-mobile-panel .v11-primary-nav{display:grid;gap:3px}
.v11-mobile-panel a{padding:10px;border-radius:3px;color:#fff;text-decoration:none}
.v11-mobile-panel a:hover{background:rgba(255,255,255,.07)}
.v11-footer{background:#15171b;color:#ece9e5;border-top:1px solid rgba(255,255,255,.1)}

@media(max-width:1260px){
  .v11-header-inner{gap:16px;width:calc(100% - 24px)}
  .v11-logo{flex-basis:170px}
  .v11-primary-nav{gap:15px;font-size:12px}
  .v11-language{max-width:148px}
  .v11-account-button{min-width:160px;max-width:210px}
}
@media(max-width:1080px){
  .v11-header-inner>.v11-primary-nav{display:none}
  .v11-menu-button{display:inline-grid;place-items:center}
  .v11-header-inner{height:72px}
  .v11-logo{flex-basis:175px}
}
@media(max-width:760px){
  .v11-language,.v11-quote{display:none}
  .v11-header-inner{width:calc(100% - 20px);gap:8px}
  .v11-logo{flex:1 1 150px;max-width:180px}
  .v11-auth-fallback .v11-signin{display:none}
  .v11-account-button{min-width:0;width:150px}
  .v11-account-label small{display:none}
  .v11-dropdown{position:fixed;left:10px;right:10px;top:78px;width:auto;max-height:calc(100vh - 90px)}
}
@media(max-width:520px){
  .v11-logo{max-width:145px}
  .v11-account-button{width:116px;padding-left:8px}
  .v11-account-label strong{font-size:10px}
  .v11-create{padding:0 9px;font-size:11px}
  .v11-avatar{width:38px;height:38px}
}


/* =========================================================
   V11.0.6 PRE-LAUNCH BETA — GLOBAL CONSOLIDATION
   ========================================================= */
:root{
  --gmx-header-nav-font-size:15px;
  --gmx-header-nav-font-weight:500;
  --gmx-header-nav-line-height:1.35;
  --gmx-header-nav-gap:28px;
}
.v11-primary-nav,.nav-links{font-size:var(--gmx-header-nav-font-size)!important;font-weight:var(--gmx-header-nav-font-weight);line-height:var(--gmx-header-nav-line-height);gap:var(--gmx-header-nav-gap)!important}
.v11-primary-nav a,.nav-links a{font-weight:inherit}
@media(max-width:1260px){.v11-primary-nav,.nav-links{font-size:14px!important;gap:19px!important}}

/* Compact public product cards. */
.product-grid .card-body{padding:17px 20px 18px}
.product-grid .card .code{line-height:1.25;margin:0 0 5px}
.product-grid .card h3{margin:0 0 7px;line-height:1.14}
.product-grid .card p{margin:0 0 9px;line-height:1.35}
.product-grid .card .meta{line-height:1.25;margin-top:0}
.product-grid .card .price{margin-top:12px;line-height:1.2}
.home-compare-cta{padding:54px 0}
.compare-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}
.compare-cta-inner h2{font-size:36px;font-weight:450;margin:7px 0 8px}.compare-cta-inner p{max-width:760px;margin:0;color:#625e5a}
.compare-page-hero{padding:72px 0 44px;background:#f0ede8;color:#1d1f23}.compare-page-hero h1{font-size:52px;font-weight:450;margin:8px 0}.compare-page-hero p{font-size:17px;color:#625e5a;max-width:800px}.compare-page-section{padding-top:50px}

/* Pre-launch beta authentication and notification. */
.platform-preview-banner{position:sticky;top:80px;z-index:1150;display:flex;align-items:center;justify-content:center;gap:12px;min-height:38px;padding:7px 22px;background:#fff1c9;color:#382b08;border-bottom:1px solid #e5c566;font-size:13px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.platform-preview-banner strong{font-weight:700}.platform-preview-banner a{color:#6c4b00;text-decoration:underline;text-underline-offset:3px}
.preview-access-card{max-width:720px}.preview-callout{display:grid;gap:4px;padding:15px 16px;margin:22px 0;background:#f0ede8;border-left:4px solid var(--rose)}.preview-callout span{color:#625e5a}.auth-preview-actions{display:flex;gap:12px;flex-wrap:wrap}.preview-outline{color:#272425!important;border-color:#bdb5ae!important}.beta-login-card{max-width:660px}.remember-row{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important}.remember-row input{width:auto!important;margin:0!important}.login-error{padding:10px 12px;background:#fde8e6;color:#8a231c;border:1px solid #edb8b3;border-radius:6px}.beta-account-list{display:grid;gap:7px;margin-top:22px;padding:16px;background:#f0ede8;border:1px solid #ddd6cf}.beta-account-list>div{display:flex;justify-content:space-between;gap:20px;font-size:13px}.beta-account-list code{color:#6f3527}.beta-account-list small{color:#6b6661;margin-top:5px}

/* Dimension image vertical tool group: zoom above, units below. */
.main-image.dimension-active .gallery-zoom-icon{bottom:84px}
.dimension-unit-switch{left:auto!important;right:16px!important;bottom:14px!important;display:none;flex-direction:column;gap:6px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.dimension-unit-switch.visible{display:flex}
.dimension-unit-switch button{width:44px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(15,17,21,.28)!important;border-radius:7px!important;background:rgba(255,255,255,.96)!important;color:#4d4946!important;font-size:12px!important;font-weight:500!important;box-shadow:0 3px 12px rgba(0,0,0,.10)}
.dimension-unit-switch button.active{background:var(--rose)!important;border-color:var(--rose)!important;color:#fff!important;font-weight:600!important}
.dimension-unit-switch button:hover{border-color:var(--rose)!important;color:var(--rose)!important}.dimension-unit-switch button.active:hover{color:#fff!important}
.gallery-zoom-icon{right:16px;bottom:18px;width:42px;height:42px;font-size:25px}
@media(max-width:1080px){.platform-preview-banner{top:72px}}
@media(max-width:760px){.platform-preview-banner{position:relative;top:auto;align-items:flex-start;flex-wrap:wrap;justify-content:flex-start}.compare-cta-inner{align-items:flex-start;flex-direction:column}.beta-account-list>div{display:grid;gap:2px}}


/* =========================================================
   V11.1 LEGAL & COMPLIANCE CENTER
   ========================================================= */
.legal-page,.legal-center-page{background:#f6f4f1;color:#1b1d20}.legal-hero{padding:72px 0 54px;background:linear-gradient(135deg,#f1e7e2 0%,#f7f5f1 55%,#edf3ed 100%);border-bottom:1px solid #ddd6cf}.legal-hero h1{font-size:clamp(40px,5vw,64px);font-weight:500;letter-spacing:-.035em;margin:10px 0 14px}.legal-hero p{max-width:850px;font-size:18px;line-height:1.65;color:#5d5955}.legal-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.legal-meta span{display:inline-flex;align-items:center;min-height:30px;padding:5px 11px;border:1px solid #d3c7bf;border-radius:999px;background:rgba(255,255,255,.72);font-size:12px;color:#5b5652}.legal-layout-wrap{padding:48px 0 80px}.legal-layout{display:grid;grid-template-columns:270px minmax(0,820px);gap:44px;align-items:start;justify-content:center}.legal-sidebar{position:sticky;top:104px;display:grid;gap:3px;max-height:calc(100vh - 130px);overflow:auto;padding:14px;background:#ede9e4;border:1px solid #ddd6cf;border-radius:14px}.legal-center-home{font-size:15px;font-weight:600;color:#17191d;padding:10px 11px;margin-bottom:6px;text-decoration:none;border-bottom:1px solid #d4ccc5}.legal-side-link{font-size:13px;line-height:1.35;color:#57524e;text-decoration:none;padding:8px 10px;border-radius:7px}.legal-side-link:hover{background:#fff;color:#17191d}.legal-side-link.active{background:#f3e2da;color:#6f3527;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.legal-document{min-width:0;background:#fff;border:1px solid #ddd6cf;border-radius:16px;padding:clamp(26px,4vw,52px);box-shadow:0 14px 40px rgba(27,25,23,.06)}.legal-review-note,.legal-center-notice{display:grid;gap:6px;padding:16px 18px;border:1px solid #dfc4b8;border-left:4px solid var(--rose);background:#fff7f3;border-radius:8px;margin-bottom:32px}.legal-review-note span,.legal-center-notice p{font-size:13px;line-height:1.55;color:#665d57;margin:0}.legal-section{padding:4px 0 26px;border-bottom:1px solid #ece7e2;margin-bottom:25px}.legal-section:last-of-type{border-bottom:0}.legal-section h2{font-size:24px;font-weight:520;letter-spacing:-.015em;margin:0 0 14px}.legal-section p,.legal-section li{font-size:15px;line-height:1.75;color:#403d3a}.legal-section ul{padding-left:22px}.legal-section a,.legal-document-footer a{color:#744131;text-underline-offset:3px}.legal-document-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;margin-top:22px;padding-top:22px;border-top:1px solid #ddd6cf}.legal-inline-button,.footer-link-button{border:0;background:none;padding:0;color:#744131;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;text-align:left}.legal-table-wrap{overflow:auto;border:1px solid #ddd6cf;border-radius:10px}.legal-table{width:100%;border-collapse:collapse;background:#fff}.legal-table th,.legal-table td{padding:13px 15px;text-align:left;border-bottom:1px solid #ece7e2;font-size:13px;vertical-align:top}.legal-table th{background:#f1eee9;font-weight:600}.legal-center-section{padding:48px 0 80px}.legal-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.legal-card{display:block;min-height:205px;padding:24px;border:1px solid #ddd6cf;border-radius:14px;background:#fff;color:#17191d;text-decoration:none;transition:.2s}.legal-card:hover{transform:translateY(-2px);border-color:#cda99a;box-shadow:0 12px 30px rgba(30,25,22,.08)}.legal-card span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#8a6253}.legal-card h2{font-size:21px;font-weight:520;margin:12px 0 10px}.legal-card p{font-size:13px;line-height:1.6;color:#68625d;margin:0}.legal-center-bottom{display:flex;justify-content:flex-end;gap:12px;margin-top:26px}.footer-grid-expanded{grid-template-columns:minmax(240px,1.6fr) repeat(4,minmax(130px,1fr));gap:30px}.v11-footer{padding-bottom:0}.v11-footer a,.footer-link-button{display:block;margin:8px 0;color:var(--muted);font-size:13px;text-decoration:none}.v11-footer a:hover,.footer-link-button:hover{color:var(--rose)}.footer-brand p{color:var(--muted);max-width:390px}.footer-mark{font-size:12px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding:18px 0}.footer-bottom .wrap{display:flex;justify-content:space-between;gap:22px;color:#aaa39d;font-size:11px;line-height:1.5}.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:2000;display:none;align-items:center;justify-content:space-between;gap:24px;max-width:1180px;margin:auto;padding:18px 20px;background:#fff;border:1px solid #d7cfc8;border-radius:14px;box-shadow:0 20px 60px rgba(18,17,16,.22)}.cookie-banner.open{display:flex}.cookie-banner strong{font-size:16px}.cookie-banner p{margin:5px 0 0;max-width:720px;color:#615c57;font-size:13px;line-height:1.5}.cookie-banner-actions,.cookie-actions{display:flex;gap:9px;flex-wrap:wrap}.cookie-modal{position:fixed;inset:0;z-index:2100;display:none;place-items:center;padding:20px;background:rgba(12,13,15,.58)}.cookie-modal.open{display:grid}.cookie-dialog{position:relative;width:min(620px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:30px;background:#fff;border-radius:16px;box-shadow:0 30px 90px rgba(0,0,0,.32)}.cookie-dialog h2{font-size:30px;margin:7px 0 10px}.cookie-dialog>p{color:#625d58;line-height:1.55}.cookie-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:28px;cursor:pointer}.cookie-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-top:1px solid #ece7e2}.cookie-row span{display:grid;gap:4px}.cookie-row small{color:#6a6560}.cookie-row input{width:20px;height:20px;accent-color:#4f8d5a}.cookie-actions{justify-content:flex-end;margin-top:22px}.cookie-policy-link{text-align:right;font-size:12px}.cookie-policy-link a{color:#744131}
@media(max-width:1050px){.legal-card-grid{grid-template-columns:repeat(2,1fr)}.footer-grid-expanded{grid-template-columns:repeat(3,1fr)}.footer-brand{grid-column:1/-1}.legal-layout{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:760px){.legal-layout{grid-template-columns:1fr}.legal-sidebar{position:relative;top:auto;max-height:none;grid-template-columns:repeat(2,1fr)}.legal-center-home{grid-column:1/-1}.legal-card-grid{grid-template-columns:1fr}.footer-grid-expanded{grid-template-columns:repeat(2,1fr)}.footer-bottom .wrap{flex-direction:column}.cookie-banner{align-items:flex-start;flex-direction:column}.cookie-banner-actions{width:100%}.cookie-dialog{padding:25px 20px}.cookie-actions{justify-content:stretch}.cookie-actions .btn{flex:1}.legal-hero{padding:52px 0 40px}}
@media(max-width:480px){.legal-sidebar{grid-template-columns:1fr}.footer-grid-expanded{grid-template-columns:1fr}.cookie-banner-actions{display:grid;grid-template-columns:1fr;width:100%}}

/* =========================================================
   V11.1.1 LEGAL DOCUMENTATION LAYOUT REFINEMENT
   Left-aligned legal hero, wider documentation canvas, and
   optional two-column article flow on ultra-wide displays.
   ========================================================= */
.legal-hero .wrap{
  width:min(1680px,calc(100% - 80px));
  margin-inline:auto;
  text-align:left;
}
.legal-hero .eyebrow,
.legal-hero h1,
.legal-hero p,
.legal-hero .legal-meta{
  margin-left:0;
  margin-right:auto;
  text-align:left;
}
.legal-hero p{max-width:980px}
.legal-layout-wrap>.wrap{
  width:min(1680px,calc(100% - 80px));
}
.legal-layout{
  grid-template-columns:minmax(250px,300px) minmax(0,1fr);
  gap:36px;
  justify-content:stretch;
  width:100%;
}
.legal-sidebar{
  top:100px;
  border-radius:12px;
}
.legal-document{
  width:100%;
  max-width:none;
}
.legal-section h2,
.legal-section p,
.legal-section li,
.legal-review-note,
.legal-document-footer{
  text-align:left;
}

/* Wide documentation mode: keep navigation fixed at left and
   arrange independent legal sections in two readable columns. */
@media(min-width:1680px){
  .legal-layout-wrap>.wrap,
  .legal-hero .wrap{width:min(1760px,calc(100% - 112px))}
  .legal-layout{grid-template-columns:300px minmax(0,1fr);gap:42px}
  .legal-document{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:32px;
    row-gap:0;
    padding:42px 44px;
  }
  .legal-document>.legal-review-note,
  .legal-document>.legal-document-footer{
    grid-column:1/-1;
  }
  .legal-document>.legal-section{
    min-width:0;
    align-self:start;
    margin-bottom:22px;
    padding:4px 0 22px;
  }
  .legal-document>.legal-section:last-of-type{border-bottom:1px solid #ece7e2}
  .legal-document>.legal-section:only-of-type{grid-column:1/-1}
}

@media(max-width:1180px){
  .legal-hero .wrap,
  .legal-layout-wrap>.wrap{width:min(var(--max),calc(100% - 48px))}
  .legal-layout{grid-template-columns:230px minmax(0,1fr);gap:28px}
}
@media(max-width:760px){
  .legal-hero .wrap,
  .legal-layout-wrap>.wrap{width:min(100% - 28px,var(--max))}
  .legal-layout{grid-template-columns:1fr}
  .legal-sidebar{position:relative;top:auto}
  .legal-document{padding:24px 20px}
}

/* =========================================================
   V11.1.2 LEGAL GRID, READING COMFORT & NAVIGATION STABILITY
   ========================================================= */

/* Keep Legal Center landing hero and body on the same canvas. */
.legal-center-page .legal-hero .wrap,
.legal-center-page .legal-center-section > .wrap{
  width:min(1680px,calc(100% - 80px));
  margin-inline:auto;
}

/* Legal documentation hero and body share one outer grid. */
.legal-page .legal-hero .wrap,
.legal-page .legal-layout-wrap > .wrap{
  width:min(1680px,calc(100% - 80px));
  margin-inline:auto;
}

/* Give every shaded legal content block consistent breathing room. */
.legal-document > .legal-section{
  box-sizing:border-box;
  padding:24px;
  margin:0 0 24px;
  border:1px solid #e4ded8;
  border-radius:10px;
  background:#f3f1ee;
}
.legal-document > .legal-section:last-of-type{
  border-bottom:1px solid #e4ded8;
}
.legal-document > .legal-section h2{
  margin:0 0 14px;
  line-height:1.28;
}
.legal-document > .legal-section p{
  margin:0 0 12px;
}
.legal-document > .legal-section p:last-child,
.legal-document > .legal-section ul:last-child,
.legal-document > .legal-section ol:last-child{
  margin-bottom:0;
}
.legal-document > .legal-section ul,
.legal-document > .legal-section ol{
  margin-top:10px;
  margin-bottom:12px;
  padding-left:24px;
}
.legal-document > .legal-section li + li{
  margin-top:6px;
}

/* Notice cards use the same comfortable spacing system. */
.legal-review-note,
.legal-center-notice{
  padding:20px 22px;
}

/* Legal landing cards keep equal interior spacing. */
.legal-card{
  padding:26px;
}

/* Prevent focus/navigation scripts from visually jumping legal pages. */
.legal-page,
.legal-center-page{
  overflow-anchor:none;
}
.legal-sidebar{
  overflow-anchor:none;
}

@media(min-width:1680px){
  .legal-center-page .legal-hero .wrap,
  .legal-center-page .legal-center-section > .wrap,
  .legal-page .legal-hero .wrap,
  .legal-page .legal-layout-wrap > .wrap{
    width:min(1760px,calc(100% - 112px));
  }
  .legal-document > .legal-section{
    padding:24px 26px;
    margin-bottom:24px;
  }
}

@media(max-width:1180px){
  .legal-center-page .legal-hero .wrap,
  .legal-center-page .legal-center-section > .wrap,
  .legal-page .legal-hero .wrap,
  .legal-page .legal-layout-wrap > .wrap{
    width:min(var(--max),calc(100% - 48px));
  }
}

@media(max-width:760px){
  .legal-center-page .legal-hero .wrap,
  .legal-center-page .legal-center-section > .wrap,
  .legal-page .legal-hero .wrap,
  .legal-page .legal-layout-wrap > .wrap{
    width:min(100% - 28px,var(--max));
  }
  .legal-document > .legal-section{
    padding:20px;
  }
  .legal-review-note,
  .legal-center-notice,
  .legal-card{
    padding:20px;
  }
}


/* V11.1.3 Legal App Shell: fixed chrome, fixed navigation, independently scrolling document */
.legal-app-page{overflow:hidden;background:#f6f4f1}
.legal-app-page .v11-header{position:relative;top:auto}
.legal-app-page .platform-preview-banner{position:relative;top:auto}
.legal-app-shell{height:calc(100vh - var(--legal-top-offset,118px));min-height:520px;display:flex;flex-direction:column;overflow:hidden}
.legal-app-hero{flex:0 0 auto;padding:28px 0 24px;background:linear-gradient(135deg,#f1e7e2 0%,#f7f5f1 55%,#edf3ed 100%);border-bottom:1px solid #ddd6cf}
.legal-app-hero .wrap,.legal-app-grid{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.legal-app-hero h1{font-size:clamp(34px,3.2vw,52px);margin:6px 0 8px;line-height:1.08}
.legal-app-hero p{font-size:16px;line-height:1.55;max-width:820px;margin:0}
.legal-app-hero .legal-meta{margin-top:15px}
.legal-app-workspace{flex:1 1 auto;min-height:0;padding:28px 0;background:#f6f4f1;overflow:hidden}
.legal-app-grid{height:100%;display:grid;grid-template-columns:270px minmax(0,1fr);gap:36px;align-items:stretch}
.legal-app-page .legal-sidebar{position:relative;top:auto;height:100%;max-height:none;overflow:auto;align-content:start}
.legal-content-pane{height:100%;min-width:0;overflow:hidden;background:#fff;border:1px solid #ddd6cf;border-radius:16px;box-shadow:0 14px 40px rgba(27,25,23,.06)}
.legal-document-frame{display:block;width:100%;height:100%;border:0;background:#fff}
.legal-fragment{margin:0;background:#fff;color:#1b1d20;font-family:Inter,Arial,Helvetica,sans-serif;overflow-y:auto}
.legal-fragment-main{padding:36px 44px 52px}
.legal-fragment .legal-document{max-width:1040px;margin:0 auto;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}
.legal-fragment .legal-section{padding:22px 24px 26px;background:#f3f1ee;border:0;border-radius:8px;margin-bottom:20px}
.legal-fragment .legal-section h2{margin-top:0}
.legal-fragment .legal-review-note{margin-bottom:26px;padding:19px 22px}
@media(min-width:1500px){.legal-app-grid{grid-template-columns:280px minmax(0,1060px);justify-content:space-between}.legal-fragment .legal-document{max-width:1000px}}
@media(max-width:900px){.legal-app-page{overflow:auto}.legal-app-shell{height:auto;min-height:0;overflow:visible}.legal-app-workspace{overflow:visible}.legal-app-grid{height:auto;grid-template-columns:1fr}.legal-app-page .legal-sidebar{height:auto;max-height:none;grid-template-columns:repeat(2,minmax(0,1fr))}.legal-content-pane{height:70vh;min-height:560px}.legal-fragment-main{padding:28px 24px 42px}}
@media(max-width:520px){.legal-app-hero .wrap,.legal-app-grid{width:calc(100% - 28px)}.legal-app-page .legal-sidebar{grid-template-columns:1fr}.legal-content-pane{height:68vh;min-height:500px}.legal-fragment-main{padding:22px 16px 34px}.legal-fragment .legal-section{padding:20px 18px}}


/* =========================================================
   V11.1.4 LEGAL PAGE-TYPE SEPARATION
   Landing page remains a normal card directory; individual
   legal documents use the fixed app-shell reading layout.
   ========================================================= */
.legal-center-page{
  overflow:auto;
  min-height:100vh;
  background:#f6f4f1;
}
.legal-center-page main{
  display:block;
  height:auto;
  overflow:visible;
}
.legal-center-page .legal-center-hero,
.legal-center-page .legal-center-section{
  position:relative;
  height:auto;
  overflow:visible;
}
.legal-center-page .legal-center-section > .wrap{
  width:min(var(--max),calc(100% - 48px));
  margin-inline:auto;
}
.legal-center-page .legal-card-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

/* Document pages: top chrome and hero remain visible while the
   left navigation and right document pane manage their own scroll. */
.legal-app-page{
  height:100vh;
  overflow:hidden;
}
.legal-app-page .legal-app-shell{
  height:calc(100vh - var(--legal-top-offset,118px));
  overflow:hidden;
}
.legal-app-page .legal-app-hero{
  flex:0 0 auto;
}
.legal-app-page .legal-app-workspace{
  flex:1 1 auto;
  min-height:0;
  overflow:hidden;
}
.legal-app-page .legal-app-grid{
  min-height:0;
}
.legal-app-page .legal-sidebar,
.legal-app-page .legal-content-pane{
  min-height:0;
}

@media(max-width:980px){
  .legal-center-page .legal-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .legal-center-page .legal-center-section > .wrap{width:calc(100% - 28px)}
  .legal-center-page .legal-card-grid{grid-template-columns:1fr}
}

/* =========================================================
   V11.1.5 LEGAL ALIGNMENT & READING FLOW
   - Legal landing hero aligns with the card/content grid.
   - Document chrome remains fixed while the workspace is the
     only vertical scroll region.
   - Sidebar shows the complete directory without its own scroll.
   - Document pane grows with the loaded legal content.
   ========================================================= */

/* Legal Center landing page: one shared, narrower reading grid. */
.legal-center-page .legal-hero .wrap,
.legal-center-page .legal-center-section > .wrap{
  width:min(1360px,calc(100% - 64px)) !important;
  margin-inline:auto !important;
}

/* Individual legal documents use a full-height app frame. */
.legal-app-page{
  height:100vh;
  overflow:hidden;
}
.legal-app-page .legal-app-shell{
  height:calc(100vh - var(--legal-top-offset,118px));
  min-height:0;
  overflow:hidden;
}
.legal-app-page .legal-app-hero{
  flex:0 0 auto;
  padding:24px 0 21px;
}
.legal-app-page .legal-app-hero .wrap,
.legal-app-page .legal-app-grid{
  width:min(1360px,calc(100% - 64px));
  margin-inline:auto;
}
.legal-app-page .legal-app-workspace{
  flex:1 1 auto;
  min-height:0;
  padding:24px 0 34px;
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-gutter:stable;
}
.legal-app-page .legal-app-grid{
  height:auto;
  min-height:100%;
  grid-template-columns:280px minmax(0,1fr);
  gap:36px;
  align-items:start;
}

/* Full directory: no nested scrollbar. It remains visible while
   the workspace content moves beneath the fixed hero. */
.legal-app-page .legal-sidebar{
  position:sticky;
  top:0;
  height:auto;
  max-height:none;
  overflow:visible;
  align-self:start;
  padding:12px 14px 14px;
}
.legal-app-page .legal-center-home{
  padding:8px 10px 10px;
  margin-bottom:4px;
  font-size:14px;
}
.legal-app-page .legal-side-link{
  padding:5px 9px;
  font-size:12px;
  line-height:1.22;
}

/* The document is not a short, independently scrolling box. */
.legal-app-page .legal-content-pane{
  height:auto;
  min-height:100%;
  overflow:visible;
  align-self:stretch;
}
.legal-app-page .legal-document-frame{
  display:block;
  width:100%;
  height:720px;
  min-height:100%;
  border:0;
  overflow:hidden;
}
.legal-fragment{
  overflow:hidden;
}
.legal-fragment-main{
  padding:36px 44px 48px;
}

@media(max-width:1100px){
  .legal-center-page .legal-hero .wrap,
  .legal-center-page .legal-center-section > .wrap,
  .legal-app-page .legal-app-hero .wrap,
  .legal-app-page .legal-app-grid{
    width:min(var(--max),calc(100% - 48px)) !important;
  }
  .legal-app-page .legal-app-grid{
    grid-template-columns:245px minmax(0,1fr);
    gap:26px;
  }
  .legal-app-page .legal-side-link{font-size:11.5px;padding:4px 7px}
}

@media(max-width:900px){
  .legal-app-page{height:auto;overflow:auto}
  .legal-app-page .legal-app-shell{height:auto;overflow:visible}
  .legal-app-page .legal-app-workspace{overflow:visible}
  .legal-app-page .legal-app-grid{grid-template-columns:1fr}
  .legal-app-page .legal-sidebar{position:relative;top:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-app-page .legal-center-home{grid-column:1/-1}
  .legal-app-page .legal-content-pane{min-height:0}
}

@media(max-width:680px){
  .legal-center-page .legal-hero .wrap,
  .legal-center-page .legal-center-section > .wrap,
  .legal-app-page .legal-app-hero .wrap,
  .legal-app-page .legal-app-grid{
    width:calc(100% - 28px) !important;
  }
  .legal-app-page .legal-sidebar{grid-template-columns:1fr}
  .legal-fragment-main{padding:24px 18px 34px}
}

/* V11.2.0 — unified Website / Platform / Legal footer architecture */
.footer-grid-expanded{grid-template-columns:minmax(240px,1.55fr) repeat(3,minmax(130px,1fr)) minmax(330px,2.15fr);align-items:start}
.footer-heading-link{display:inline!important;margin:0!important;color:var(--rose)!important;font-size:inherit!important;font-weight:inherit;text-decoration:none!important}
.footer-heading-link:hover{text-decoration:underline!important;text-underline-offset:4px}
.footer-legal-grid{display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:8px 28px;align-items:start}
.footer-legal-grid>div{min-width:0}
.footer-legal-grid a{line-height:1.35}
@media(max-width:1180px){.footer-grid-expanded{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-brand{grid-column:1/-1}.footer-legal{grid-column:span 2}}
@media(max-width:760px){.footer-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}.footer-legal{grid-column:1/-1}}
@media(max-width:520px){.footer-grid-expanded{grid-template-columns:1fr}.footer-brand,.footer-legal{grid-column:auto}.footer-legal-grid{grid-template-columns:1fr 1fr;gap:6px 20px}}
@media(max-width:390px){.footer-legal-grid{grid-template-columns:1fr}}


/* V11.2.1 — contextual footer rules */
.footer-grid h4,
.footer-grid h4 a,
.footer-heading-link{color:var(--rose)!important}

.portal-compact-footer{
  min-height:44px;
  margin-top:34px;
  padding:0 32px;
  border-top:1px solid rgba(255,255,255,.12);
  background:#15171b;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
  color:rgba(255,255,255,.62);
  font-size:13px;
  font-weight:400;
  line-height:1.35;
  box-sizing:border-box;
}
.portal-compact-footer>span,
.portal-compact-footer nav,
.portal-compact-footer a,
.portal-compact-footer .footer-link-button{align-self:center}
.portal-compact-footer nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.portal-compact-footer a,
.portal-compact-footer .footer-link-button{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#c58a73;
  font-size:13px;
  font-weight:400;
  line-height:1.35;
  text-decoration:none;
}
.portal-compact-footer a:hover,
.portal-compact-footer .footer-link-button:hover{
  color:#e0a48d;
  text-decoration:underline;
  text-underline-offset:3px;
}

.legal-compact-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  min-height:44px;
  margin-top:18px;
  padding:0 18px;
  border-top:1px solid #ddd6cf;
  color:#77706a;
  font-size:12px;
  line-height:1.4;
  box-sizing:border-box;
}
.legal-compact-footer nav{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.legal-compact-footer a{color:#744131;text-decoration:none}
.legal-compact-footer a:hover{text-decoration:underline;text-underline-offset:3px}

@media(max-width:760px){
  .portal-compact-footer,
  .legal-compact-footer{
    min-height:auto;
    align-items:flex-start;
    flex-direction:column;
    gap:9px;
    padding:12px 18px;
  }
  .portal-compact-footer a,
  .portal-compact-footer .footer-link-button{min-height:30px}
}
