/* ==========================================================================
   STARVEIL FACADE — International Facades. Engineered & Delivered.
   Design system: international editorial · ink navy / warm stone / brass accent
   Placeholder imagery is rendered as tinted blocks; replace with photography.
   ========================================================================== */

/* Self-hosted Latin subsets. Arabic families are loaded only by a future
   Arabic build, so the English site does not pay for unused glyphs. */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 600;font-display:block;src:url("../fonts/inter-latin-400-600.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500 700;font-display:block;src:url("../fonts/cormorant-garamond-latin-500-700.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}



:root{
  --ink:#131c28;
  --ink-2:#2a3644;
  --sub:#5c6a78;
  --line:#e5e7ea;
  --bg:#faf8f3;
  --card:#ffffff;
  --navy:#24576a;
  --navy-deep:#153b4b;
  --footer:#0f303b;
  --footer-title:#f7f3e9;
  --brass:#c1a260;
  --gold-text:#84672d;
  --brass-soft:#f6efdf;
  --pearl:#fdfcf9;
  --sand:#f2ede3;
  --mist:#e9efef;
  --ok:#1a7f5e;
  --serif:"Cormorant Garamond","Songti SC",Georgia,serif;
  --sans:"Inter","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  --arabic:"Noto Kufi Arabic","Segoe UI",Tahoma,sans-serif;
  --arabic-heading:"Alexandria","Noto Kufi Arabic","Segoe UI",Tahoma,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.75;font-size:16px;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:var(--navy);text-decoration:none;}
a:hover{color:var(--gold-text);}
ul{padding-left:1.2em;}
li{margin-bottom:.4em;}

.container{max-width:1160px;margin:0 auto;padding:0 28px;}
.container.narrow{max-width:860px;}

/* ---------- typography ---------- */
.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-text);font-weight:600;margin-bottom:14px;}
h1.display{font-family:var(--serif);font-weight:600;font-size:clamp(34px,5vw,58px);line-height:1.12;letter-spacing:.005em;}
h2.section-title{font-family:var(--serif);font-weight:600;font-size:clamp(26px,3.4vw,38px);line-height:1.2;margin-bottom:14px;}
h3{font-family:var(--serif);font-weight:600;font-size:22px;margin-bottom:10px;}
.lead{font-size:18px;color:var(--ink-2);max-width:46em;}
.section-sub{color:var(--sub);max-width:44em;margin-bottom:8px;}
.hero .hero-inner.page-hero-inner{padding:90px 0 80px;}
.hero-eyebrow-gold{color:#e1cc96;}
.hero-lead-spaced{margin-top:18px;}
.hero .hero-cta .hero-ghost-button{color:#fff!important;border-color:rgba(255,255,255,.72);}
.action-row{display:flex;gap:14px;margin-top:24px;flex-wrap:wrap;}
.footer-domain{color:rgba(255,255,255,.45);}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px;}
.brand{display:flex;align-items:center;gap:13px;white-space:nowrap;}
.brand .wordmark{display:flex;gap:7px;font-family:var(--serif);font-size:20px;font-weight:700;line-height:1;letter-spacing:.12em;color:var(--navy-deep);}
.brand .wordmark>span:last-child{color:var(--gold-text);}
.brand .tag{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:#806524;border-left:1px solid rgba(176,141,62,.42);padding:3px 0 3px 12px;}
.nav{display:flex;align-items:center;gap:26px;}
.nav a{font-size:14px;letter-spacing:.04em;color:var(--ink-2);font-weight:500;}
.language-switcher{display:inline-flex;align-items:center;gap:6px;padding:4px;border:1px solid rgba(21,59,75,.18);border-radius:999px;background:rgba(255,255,255,.72);white-space:nowrap;direction:ltr;}
.language-switcher a,.language-switcher span{display:grid;place-items:center;min-width:30px;height:27px;padding:0 8px;border-radius:999px;font-size:10.5px!important;line-height:1;letter-spacing:.02em!important;color:var(--navy-deep);}
.language-switcher [aria-current="page"]{background:var(--navy-deep);color:#fff;font-weight:600;}
.language-switcher a:hover{background:var(--brass-soft);color:var(--gold-text);}
.nav a:hover{color:var(--navy);}
.nav a.active{color:var(--navy);font-weight:600;}
.nav .btn{margin-left:6px;}
.nav-toggle{display:none;width:34px;height:30px;padding:6px 3px;background:none;border:0;cursor:pointer;flex-direction:column;justify-content:space-between;align-items:center;}
.nav-toggle span{display:block;width:25px;height:1.5px;background:var(--ink);transition:transform .2s ease,opacity .2s ease;}
.nav-toggle.is-open span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.nav-toggle.is-open span:nth-child(2){opacity:0;}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}

/* ---------- buttons ---------- */
.btn{display:inline-block;background:var(--navy);color:#fff !important;font-size:13.5px;font-weight:600;letter-spacing:.06em;padding:13px 26px;border-radius:2px;border:1px solid var(--navy);transition:all .2s ease;}
.btn:hover{background:var(--navy-deep);border-color:var(--navy-deep);}
.btn.ghost{background:transparent;color:var(--ink) !important;border:1px solid var(--ink);}
.btn.ghost:hover{border-color:var(--navy);color:var(--navy) !important;}
.btn.light{background:#fff;color:var(--navy) !important;border-color:#fff;}
.btn.light:hover{background:var(--brass-soft);border-color:var(--brass-soft);color:var(--ink) !important;}
.btn.small{padding:9px 18px;font-size:12.5px;}

/* ---------- hero ---------- */
.hero{position:relative;color:#fff;overflow:hidden;}
.hero .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.hero .hero-ph{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(6,24,36,.86) 0%,rgba(8,32,45,.7) 36%,rgba(10,40,53,.25) 66%,rgba(7,27,38,.09) 100%),
  linear-gradient(0deg,rgba(5,21,31,.25),transparent 54%);}
[dir="rtl"] .hero .hero-ph{background:
  linear-gradient(270deg,rgba(6,24,36,.86) 0%,rgba(8,32,45,.7) 36%,rgba(10,40,53,.25) 66%,rgba(7,27,38,.09) 100%),
  linear-gradient(0deg,rgba(5,21,31,.25),transparent 54%);}
.hero .hero-inner{position:relative;padding:120px 0 110px;max-width:720px;}
.hero h1{color:#fff;text-shadow:0 2px 22px rgba(2,15,23,.18);}
.hero .lead{color:rgba(255,255,255,.88);}
.hero .hero-cta{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap;}
.projects-hero .hero-photo{object-position:center 48%;filter:saturate(.94) contrast(1.02) brightness(1.03);}
.contact-hero .hero-photo{object-position:center 47%;filter:saturate(.9) contrast(1.01) brightness(1.04);}
.resources-hero .hero-photo{object-position:center 52%;filter:saturate(.9) contrast(1.01) brightness(1.07);}
.luminous-hero .hero-photo{filter:saturate(.96) contrast(1.02) brightness(1.14);}
.luminous-hero .hero-ph{background:
  linear-gradient(90deg,rgba(4,17,27,.68) 0%,rgba(7,27,38,.5) 38%,rgba(8,31,42,.14) 70%,rgba(5,20,29,.04) 100%),
  linear-gradient(0deg,rgba(4,17,25,.18),transparent 55%);}
[dir="rtl"] .luminous-hero .hero-ph{background:
  linear-gradient(270deg,rgba(4,17,27,.68) 0%,rgba(7,27,38,.5) 38%,rgba(8,31,42,.14) 70%,rgba(5,20,29,.04) 100%),
  linear-gradient(0deg,rgba(4,17,25,.18),transparent 55%);}

/* ---------- placeholder image blocks ---------- */
.ph{position:relative;background:linear-gradient(150deg,#dfe5ea 0%,#c9d4dd 48%,#b9c7d3 100%);border-radius:3px;overflow:hidden;display:flex;align-items:flex-end;min-height:200px;}
.ph::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 2px,transparent 2px 14px);}
.ph .ph-label{position:relative;z-index:2;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(19,28,40,.55);background:rgba(255,255,255,.72);padding:6px 12px;margin:12px;border-radius:2px;}
.ph.warm{background:linear-gradient(150deg,#e9e2d4 0%,#d8cbb4 55%,#c6b79c 100%);}
.ph.dark{background:linear-gradient(150deg,#31414f 0%,#22303c 60%,#18222c 100%);}
.ph.dark .ph-label{color:rgba(255,255,255,.7);background:rgba(19,28,40,.45);}
.ph.tall{min-height:420px;}
.ph.sq{aspect-ratio:1/1;min-height:0;}
.ph>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ---------- licensed real photography ---------- */
.media-frame{position:relative;overflow:hidden;background:#dfe4e6;border-radius:3px;min-height:260px;}
.media-frame.tall{min-height:380px;}
.media-frame.sq{aspect-ratio:1/1;min-height:0;}
.media-frame img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.media-frame figcaption,.project-card-media span{position:absolute;left:14px;bottom:14px;z-index:2;max-width:calc(100% - 28px);padding:7px 10px;background:rgba(12,32,41,.82);color:rgba(255,255,255,.88);font-size:9px;line-height:1.45;letter-spacing:.12em;text-transform:uppercase;}
.media-stack{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;min-height:380px;}
.media-stack .media-frame{min-height:380px;}
.media-stack .media-frame:last-child{min-height:0;}
.project-card-media{position:relative;min-height:200px;overflow:hidden;background:var(--navy-deep);}
.project-card-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .35s ease;}
.card:hover .project-card-media img{transform:scale(1.025);}
.card-img{position:relative;overflow:hidden;background:#dfe4e6;min-height:180px;}
.card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
.card:hover .card-img img{transform:scale(1.025);}
.project-gallery{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-bottom:34px;}
.project-gallery-main{min-height:340px;}
.project-gallery-side{display:grid;gap:20px;}
.project-gallery-side .media-frame{min-height:160px;}
.media-disclosure{font-size:11px;color:var(--sub);margin:-18px 0 30px;}

/* ---------- sections ---------- */
section.block{padding:78px 0;}
section.block.tight{padding:56px 0;}
.bg-white{background:var(--card);}
.bg-tint{background:#f0f2f4;}
.grid{display:grid;gap:26px;}
.grid.c2{grid-template-columns:repeat(2,1fr);}
.grid.c3{grid-template-columns:repeat(3,1fr);}
.grid.c4{grid-template-columns:repeat(4,1fr);}
.grid.c5{grid-template-columns:repeat(5,1fr);}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px;flex-wrap:wrap;}

/* ---------- cards ---------- */
.card{background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;display:flex;flex-direction:column;}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(19,28,40,.10);}
.card .card-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1;}
.card .card-kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.card h4{font-family:var(--serif);font-size:20px;font-weight:600;line-height:1.3;}
.card p{font-size:14px;color:var(--sub);}
.card .card-meta{font-size:12.5px;color:var(--sub);border-top:1px solid var(--line);padding-top:10px;margin-top:auto;display:flex;gap:14px;flex-wrap:wrap;}
.card .card-meta b{color:var(--ink-2);font-weight:600;}

/* ---------- trust bar ---------- */
.trustbar{background:var(--navy-deep);color:#fff;padding:34px 0;}
.trustbar .grid.c4{gap:18px;}
.trust-item{border-left:2px solid var(--brass);padding-left:16px;}
.trust-item .num{font-family:var(--serif);font-size:30px;font-weight:600;line-height:1.1;}
.trust-item .lbl{font-size:12.5px;color:rgba(255,255,255,.72);letter-spacing:.04em;}

/* ---------- category / system entries ---------- */
.entry{position:relative;color:#fff;overflow:hidden;border-radius:4px;min-height:280px;display:flex;align-items:flex-end;padding:22px;transition:transform .25s ease;}
.entry:hover{transform:translateY(-4px);}
.entry .entry-bg{position:absolute;inset:0;}
.entry .entry-body{position:relative;z-index:2;}
.entry h4{font-family:var(--serif);font-size:22px;font-weight:600;margin-bottom:4px;}
.entry p{font-size:13px;color:rgba(255,255,255,.82);margin-bottom:10px;}
.entry .entry-link{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#fff;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:2px;}

/* ---------- filters ---------- */
.filters{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:30px;padding:18px 20px;background:var(--card);border:1px solid var(--line);border-radius:4px;align-items:center;}
.resource-search{display:flex;align-items:center;gap:10px;flex:1 1 300px;min-width:240px;}
.resource-search span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);white-space:nowrap;}
.resource-search input{width:100%;min-width:0;border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 12px;border-radius:2px;font:inherit;font-size:13.5px;}
.resource-search input:focus{outline:2px solid rgba(193,162,96,.48);outline-offset:1px;border-color:var(--brass);}
.filter-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.filter-group .fg-label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);margin-right:6px;}
.chip{font-size:12.5px;font-weight:500;color:var(--ink-2);border:1px solid var(--line);background:#fff;padding:7px 15px;border-radius:20px;cursor:pointer;transition:all .15s ease;}
.chip:hover{border-color:var(--navy);}
.chip.on{background:var(--navy);color:#fff;border-color:var(--navy);}

/* ---------- case detail ---------- */
.meta-bar{display:flex;flex-wrap:wrap;gap:0;background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden;margin-top:-46px;position:relative;z-index:5;}
.meta-item{flex:1 1 160px;padding:16px 20px;border-right:1px solid var(--line);}
.meta-item:last-child{border-right:none;}
.meta-item .k{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);margin-bottom:4px;}
.meta-item .v{font-size:13.5px;font-weight:600;color:var(--ink);}
.datapills{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 26px;}
.pill{background:var(--brass-soft);border:1px solid #e3d5b3;color:#7a5f22;font-size:13px;font-weight:600;padding:8px 16px;border-radius:20px;}
.narrative p{margin-bottom:18px;font-size:16.5px;color:var(--ink-2);max-width:46em;}
.narrative .dropcap::first-letter{font-family:var(--serif);font-size:52px;float:left;line-height:.85;padding:6px 10px 0 0;color:var(--navy);font-weight:600;}
.outcome-list li{margin-bottom:10px;}
.outcome-list li::marker{color:var(--brass);}
blockquote.case-quote{border-left:3px solid var(--brass);padding:6px 0 6px 24px;margin:30px 0;font-family:var(--serif);font-size:21px;line-height:1.5;color:var(--ink-2);font-style:italic;}
blockquote.case-quote cite{display:block;font-family:var(--sans);font-style:normal;font-size:13px;color:var(--sub);margin-top:12px;letter-spacing:.04em;}

/* ---------- steps ---------- */
.step{display:grid;grid-template-columns:120px 1fr;gap:30px;padding:34px 0;border-bottom:1px solid var(--line);}
.step:first-of-type{border-top:1px solid var(--line);}
.step .num{font-family:var(--serif);font-size:54px;font-weight:600;color:var(--gold-text);line-height:1;}
.step h3{margin-bottom:8px;}
.step p{color:var(--ink-2);max-width:44em;}

/* ---------- spec table ---------- */
table.spec{width:100%;border-collapse:collapse;font-size:14px;background:var(--card);}
table.spec th{background:var(--navy);color:#fff;text-align:left;padding:12px 16px;font-weight:600;font-size:13px;letter-spacing:.05em;}
table.spec td{padding:12px 16px;border:1px solid var(--line);vertical-align:top;}
table.spec td:first-child{font-weight:600;width:26%;color:var(--ink);}
table.spec td:nth-child(2){width:34%;color:var(--ink-2);}
table.spec td:nth-child(3){color:var(--sub);font-size:13.5px;}
.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);background:#fff;}
.table-scroll table.spec{min-width:780px;}

/* ---------- certification anchors ---------- */
.cert-row{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0;}
.cert-badge{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--ok);padding:11px 18px;border-radius:3px;font-size:13px;font-weight:600;color:var(--ink-2);}
.cert-badge span{color:var(--ok);font-size:15px;}

/* ---------- FAQ ---------- */
details.faq{background:var(--card);border:1px solid var(--line);border-radius:4px;margin-bottom:12px;overflow:hidden;}
details.faq[id]{scroll-margin-top:100px;}
details.faq:target{border-color:var(--brass);box-shadow:0 0 0 2px rgba(193,162,96,.16);}
details.faq summary{cursor:pointer;padding:18px 22px;font-weight:600;font-size:15.5px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;}
details.faq summary::-webkit-details-marker{display:none;}
details.faq summary::after{content:"+";font-size:20px;color:var(--brass);font-weight:400;flex-shrink:0;}
details.faq[open] summary::after{content:"–";}
details.faq .faq-body{padding:0 22px 20px;color:var(--ink-2);font-size:15px;max-width:52em;}
.faq-cat{margin:36px 0 18px;}
.faq-cat:first-of-type{margin-top:0;}
.faq-cat h3{font-family:var(--serif);font-size:24px;}
.faq-cat .eyebrow{margin-bottom:4px;}

/* ---------- forms ---------- */
.form-wrap{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:38px 40px;}
.contact-main-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:start;}
.full-width-button{width:100%;text-align:center;}
.response-icon{font-size:18px;}
.contact-promise-title{font-family:var(--serif);font-size:22px;}
.contact-timeline-step{grid-template-columns:70px 1fr;padding:18px 0;}
.contact-timeline-step .num{font-size:30px;}
.contact-timeline-step .small{margin:0;}
.contact-timeline-last{border-bottom:0;}
.role-layout{gap:50px;align-items:center;}
.role-question.section-title{font-size:28px;}
.gcc-content-layout{gap:52px;align-items:center;}
.gcc-factor-title{font-family:var(--serif);}
.gcc-system-media{min-height:210px;}
.gcc-delivery-layout{gap:50px;align-items:center;}
.gcc-delivery-title{font-family:var(--serif);font-size:30px;}
.gcc-case-media{min-height:220px;}
.article-detail-block.block{padding-top:48px;}
h1.article-detail-title{font-size:clamp(30px,4vw,44px);}
.article-detail-excerpt{font-size:17px;}
.article-inline-cta{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;}
.article-inline-cta h3{font-family:var(--serif);font-size:24px;}
.article-inline-cta-button{display:block;width:100%;text-align:center;}
.related-guides-title.section-title{font-size:26px;}
.article-related-systems{border-top:1px solid var(--line);}
.article-related-head{align-items:flex-end;}
.article-related-head>p{max-width:430px;color:var(--sub);font-size:13.5px;}
.article-system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;}
.article-system-grid.single{grid-template-columns:minmax(0,570px);}
.article-system-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--pearl);border:1px solid var(--line);border-radius:4px;color:var(--ink)!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
.article-system-card:hover,.article-system-card:focus-visible{transform:translateY(-4px);border-color:rgba(132,103,45,.42);box-shadow:0 16px 36px rgba(19,28,40,.1);}
.article-system-card:focus-visible{outline:3px solid rgba(193,162,96,.45);outline-offset:3px;}
.article-system-media{position:relative;aspect-ratio:16/8.7;overflow:hidden;background:var(--navy-deep);}
.article-system-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
.article-system-card:hover .article-system-media img{transform:scale(1.025);}
.article-system-copy{display:flex;flex-direction:column;flex:1;padding:24px 25px 25px;}
.article-system-copy .card-kicker{color:var(--gold-text);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.article-system-copy h3{margin:8px 0 9px;font-size:25px;line-height:1.25;}
.article-system-copy p{color:var(--sub);font-size:14px;line-height:1.7;}
.article-system-link{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:auto;padding-top:19px;color:var(--navy);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;}
.article-system-link b{font-size:17px;transition:transform .2s ease;}
.article-system-card:hover .article-system-link b{transform:translateX(4px);}
.article-final-review{border-top:1px solid var(--line);}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.field{display:flex;flex-direction:column;gap:7px;}
.field.full{grid-column:1/-1;}
.field label{font-size:13px;font-weight:600;color:var(--ink-2);letter-spacing:.02em;}
.field .hint{font-size:12px;color:var(--sub);font-weight:400;}
.field input,.field select,.field textarea{font-family:var(--sans);font-size:14.5px;padding:12px 14px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);transition:border .15s;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);}
.radio-row{display:flex;gap:16px;flex-wrap:wrap;}
.radio-opt{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-2);border:1px solid var(--line);padding:10px 16px;border-radius:3px;cursor:pointer;}
.radio-opt input{accent-color:var(--navy);}
.fieldset-reset{min-width:0;margin:0;padding:0;border:0;}
.fieldset-reset legend{margin-bottom:7px;color:var(--ink-2);font-size:13px;font-weight:600;letter-spacing:.02em;}
.field-help{color:var(--sub);font-size:11.5px;line-height:1.5;}
.promise{display:flex;gap:14px;align-items:flex-start;background:var(--brass-soft);border:1px solid #e3d5b3;border-radius:4px;padding:16px 20px;margin-top:22px;font-size:13.5px;color:#6b551f;}
.promise b{color:#54421a;}
.form-note{font-size:12.5px;color:var(--sub);margin-top:14px;}

/* ---------- article ---------- */
.article-layout{display:grid;grid-template-columns:220px 1fr;gap:46px;align-items:start;}
.article-toc{position:sticky;top:96px;font-size:13px;border-left:2px solid var(--line);padding-left:18px;}
.article-toc .toc-title{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--sub);margin-bottom:10px;}
.article-toc a{display:block;color:var(--sub);padding:4px 0;}
.article-toc a:hover{color:var(--navy);}
.article-body h2{font-family:var(--serif);font-size:27px;margin:36px 0 12px;font-weight:600;}
.article-body p{margin-bottom:16px;color:var(--ink-2);font-size:16px;max-width:44em;}
.article-body ul{margin-bottom:16px;color:var(--ink-2);}
.article-meta{display:flex;gap:16px;font-size:12.5px;color:var(--sub);margin:14px 0 26px;flex-wrap:wrap;}
.article-meta span{border:1px solid var(--line);border-radius:20px;padding:4px 13px;background:#fff;}
.article-hero{position:relative;overflow:hidden;aspect-ratio:16/8;margin:28px 0 8px;background:var(--mist);border-radius:3px;}
.article-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ---------- secure enquiry form ---------- */
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
.file-input-accessible{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;}
.file-picker{display:flex;align-items:center;min-height:46px;border:1px solid var(--line);border-radius:3px;background:#fff;overflow:hidden;}
.file-picker-button{align-self:stretch;display:flex;align-items:center;flex:0 0 auto;padding:0 15px;background:var(--brass-soft);color:var(--navy-deep)!important;cursor:pointer;font-size:12px!important;font-weight:600!important;letter-spacing:.03em!important;}
.file-picker-button:hover{background:#eee1c3;}
.file-picker-selection{min-width:0;padding:0 13px;color:var(--sub);font-size:12.5px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.file-input-accessible:focus-visible+.file-picker{outline:2px solid var(--navy);outline-offset:2px;}
.form-status{margin-top:16px;padding:13px 15px;border:1px solid var(--line);font-size:13px;line-height:1.55;}
.form-status[data-state="success"]{color:#135f47;background:#eef8f4;border-color:#9dcdbd;}
.form-status[data-state="error"]{color:#8a2f25;background:#fff3f1;border-color:#deb2ac;}
.form-wrap button[aria-busy="true"]{cursor:wait;opacity:.72;}
.form-trust-note{margin:10px 0 0!important;color:var(--sub);font-size:11px!important;line-height:1.55!important;text-align:center;}
#photos{scroll-margin-top:118px;transition:background .25s ease,box-shadow .25s ease;}
#photos:target{margin:-10px;padding:10px;background:var(--brass-soft);box-shadow:0 0 0 1px rgba(132,103,45,.26);}

/* ---------- inline CTA band ---------- */
.cta-band{background:var(--navy-deep);color:#fff;padding:64px 0;position:relative;overflow:hidden;}
.cta-band::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 85% 20%,rgba(176,141,62,.22),transparent 55%);}
.cta-band .inner{position:relative;display:flex;justify-content:space-between;align-items:center;gap:36px;flex-wrap:wrap;}
.cta-band h2{font-family:var(--serif);font-size:clamp(24px,3vw,34px);font-weight:600;line-height:1.25;}
.cta-band p{color:rgba(255,255,255,.75);margin-top:8px;max-width:34em;}

/* ---------- footer ---------- */
footer.site-footer{background:var(--footer);color:rgba(255,255,255,.68);padding:56px 0 30px;font-size:13.5px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:40px;margin-bottom:40px;}
footer .wordmark{font-family:var(--serif);font-size:22px;letter-spacing:.12em;color:var(--footer-title);font-weight:700;}
footer .slogan{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-top:6px;}
footer h5{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--footer-title);margin-bottom:14px;font-weight:600;}
footer a{color:rgba(255,255,255,.68);display:block;padding:3px 0;}
footer a:hover{color:var(--footer-title);}
.footer-systems a{font-size:12.5px;line-height:1.45;padding:2px 0;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px;color:rgba(255,255,255,.5);}

/* ---------- utility ---------- */
.mt-0{margin-top:0;} .mt-8{margin-top:8px;} .mt-16{margin-top:16px;} .mt-24{margin-top:24px;} .mt-34{margin-top:34px;} .mt-48{margin-top:48px;}
.mb-0{margin-bottom:0;} .mb-16{margin-bottom:16px;} .mb-24{margin-bottom:24px;} .mb-34{margin-bottom:34px;}
.text-sub{color:var(--sub);}
.small{font-size:13px;}
.tag{display:inline-block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;padding:4px 10px;border-radius:2px;}
.tag.new{background:#e4efe9;color:var(--ok);}
.tag.reno{background:var(--brass-soft);color:#7a5f22;}
.divider{height:1px;background:var(--line);border:none;margin:34px 0;}
.crumb{font-size:12.5px;color:var(--sub);margin:26px 0 8px;}
.crumb a{color:var(--sub);} .crumb a:hover{color:var(--navy);}
.hero-crumb{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;margin:25px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.24);color:rgba(255,255,255,.62);font-size:11.5px;letter-spacing:.04em;line-height:1.4;white-space:nowrap;overflow-x:auto;scrollbar-width:none;}
.hero-crumb::-webkit-scrollbar{display:none;}
.hero-crumb a{color:rgba(255,255,255,.72);}
.hero-crumb a:hover{color:#fff;}
.hero-crumb [aria-current="page"]{color:rgba(255,255,255,.9);}
.hero-crumb .crumb-sep{color:rgba(255,255,255,.36);}
.page-breadcrumb{display:flex;align-items:center;gap:9px;max-width:100%;white-space:nowrap;overflow-x:auto;scrollbar-width:none;}
.page-breadcrumb::-webkit-scrollbar{display:none;}
.page-breadcrumb .crumb-sep{color:#aab1b6;}
.page-breadcrumb [aria-current="page"]{color:var(--ink-2);}

/* ---------- responsive ---------- */
@media (max-width:960px){
  .contact-grid{grid-template-columns:1fr!important;gap:42px!important;}
  .inline-cta-grid{grid-template-columns:1fr!important;gap:24px!important;}
  .grid.c4,.grid.c5{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .article-layout{grid-template-columns:1fr;gap:24px;}
  .article-toc{display:block;position:static;width:100%;overflow-x:auto;border-left:0;border-bottom:1px solid var(--line);padding:0 0 12px;scrollbar-width:thin;}
  .article-toc .toc-title{margin-bottom:8px;}
  .article-toc #artToc{display:flex;gap:20px;width:max-content;min-width:100%;}
  .article-toc a{white-space:nowrap;padding:4px 0;}
  .nav{position:fixed;top:72px;left:0;right:0;max-height:calc(100vh - 72px);overflow-y:auto;overscroll-behavior:contain;background:#fff;flex-direction:column;align-items:flex-start;padding:22px 28px;gap:16px;border-bottom:1px solid var(--line);display:none;}
  .nav.open{display:flex;}
  .nav-toggle{display:block;background:none;border:none;font-size:22px;cursor:pointer;color:var(--ink);}
}
@media (max-width:640px){
  .form-wrap{padding:28px 22px;}
  .contact-grid{gap:34px!important;}
  .radio-row{display:grid;grid-template-columns:1fr;gap:10px;}
  .grid.c2,.grid.c3,.grid.c4,.grid.c5{grid-template-columns:1fr;}
  .form-grid{grid-template-columns:1fr;}
  .step{grid-template-columns:1fr;gap:10px;}
  .meta-item{flex:1 1 100%;border-right:none;border-bottom:1px solid var(--line);}
  .hero .hero-inner{padding:80px 0 70px;}
  .section-head{flex-direction:column;align-items:flex-start;}
  .footer-grid{grid-template-columns:1fr;gap:30px;}
  .resource-search{flex-basis:100%;}
}

/* ---------- dropdown navigation (2026-08 restructure) ---------- */
.nav{gap:clamp(20px,1.8vw,30px);}
.nav-item{position:relative;}
.nav-top{position:relative;padding:24px 0 23px;font-size:14px;letter-spacing:.035em;color:var(--ink-2);font-weight:500;display:inline-block;}
.nav-top::after{content:"";position:absolute;left:50%;right:50%;bottom:17px;height:1px;background:var(--brass);transition:left .2s ease,right .2s ease;}
.nav-item:hover>.nav-top::after,.nav-item:focus-within>.nav-top::after,.nav-item.active>.nav-top::after{left:0;right:0;}
.nav-item:hover .nav-top,.nav-item.active .nav-top{color:var(--navy);font-weight:600;}
.submenu{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--line);box-shadow:0 20px 44px rgba(10,42,65,.14);padding:16px 0;min-width:238px;z-index:60;border-radius:2px;}
.submenu.two-col{min-width:470px;padding:20px 24px;gap:8px 30px;}
.submenu.systems-menu{left:50%;min-width:900px;padding:0;overflow:hidden;transform:translateX(-50%);}
.nav-item:hover .submenu,.nav-item:focus-within .submenu{display:block;}
.nav-item.is-open>.submenu{display:block;}
.submenu.two-col{display:none;}
.nav-item:hover .submenu.two-col,.nav-item:focus-within .submenu.two-col{display:grid;grid-template-columns:1fr 1fr;}
.nav-item.is-open>.submenu.two-col{display:grid;grid-template-columns:1fr 1fr;}
.submenu a{display:block;padding:8px 20px;font-size:13.5px;color:var(--ink-2);white-space:nowrap;}
.submenu a:hover{color:var(--navy);background:var(--tint);}
.submenu .sub-head{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);padding:4px 0 10px;font-weight:600;}
.submenu .sub-cta{margin-top:10px;border-top:1px solid var(--line);color:var(--navy) !important;font-weight:600;padding-top:14px !important;white-space:normal;line-height:1.45;}
.systems-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:25px 28px 22px;}
.systems-menu-group{min-width:0;padding-inline:26px;border-inline-start:1px solid var(--line);}
.systems-menu-group:first-child{padding-inline-start:0;border-inline-start:none;}
.systems-menu-group:last-child{padding-inline-end:0;}
.systems-menu-group>summary{list-style:none;pointer-events:none;}
.systems-menu-group>summary::-webkit-details-marker{display:none;}
.systems-menu-grid .sub-head{min-height:34px;padding:4px 0 10px;line-height:1.4;}
.systems-menu-grid a{padding:8px 0;line-height:1.45;white-space:normal;}
.systems-menu-actions{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:12px 28px;border-top:1px solid var(--line);background:var(--pearl);}
.systems-menu-actions a{padding:7px 0;color:var(--navy-deep);font-size:12.5px;font-weight:600;letter-spacing:.04em;text-transform:none;}
.systems-menu-actions .systems-compare{margin-left:auto;color:var(--navy);}
.systems-menu-actions .systems-compare span{display:inline-block;margin-left:7px;transition:transform .2s ease;}
.systems-menu-actions .systems-compare:hover span{transform:translateX(4px);}
.nav-cta{margin-left:8px;}
.nav-quick{display:none;}

@media (min-width:961px){
  .nav{height:100%;}
  .nav-item{display:flex;align-items:center;height:100%;}
}

/* ---------- sticky in-page anchor nav ---------- */
.anchor-nav{position:sticky;top:72px;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);z-index:40;}
.anchor-nav .container{display:flex;gap:28px;overflow-x:auto;scrollbar-width:none;}
.anchor-nav .container::-webkit-scrollbar{display:none;}
.anchor-nav a{font-size:12.5px;letter-spacing:.06em;color:var(--ink-2);font-weight:600;padding:15px 0;white-space:nowrap;border-bottom:2px solid transparent;}
.anchor-nav a:hover{color:var(--navy);border-color:var(--navy);}

/* ---------- system compare table ---------- */
.compare-note{font-size:13px;color:var(--sub);margin-top:10px;}

/* ---------- product system catalogue ---------- */
.product-catalog{scroll-margin-top:100px;}
.product-catalog-head{display:grid;grid-template-columns:minmax(420px,.95fr) minmax(360px,1.05fr);gap:90px;align-items:end;margin-bottom:44px;}
.product-catalog-head h2{font-size:clamp(38px,4.1vw,56px);line-height:1.02;}
.product-catalog-head>p{max-width:590px;margin:0 0 5px;font-size:15px;line-height:1.8;color:var(--sub);}
.product-system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
.product-system-card{position:relative;display:flex;flex-direction:column;min-width:0;color:var(--ink);background:#fff;border:1px solid #dfe3e4;box-shadow:0 14px 38px rgba(15,41,52,.06);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.product-system-card:hover{color:var(--ink);transform:translateY(-5px);border-color:rgba(132,103,45,.5);box-shadow:0 22px 48px rgba(15,41,52,.12);}
.product-system-card:focus-visible{outline:3px solid #d3b467;outline-offset:4px;}
.product-system-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#d8dddf;}
.product-system-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,18,29,.04),rgba(5,18,29,.3));pointer-events:none;}
.product-system-media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(1.02);transition:transform .65s ease,filter .35s ease;}
.product-system-card:hover .product-system-media img{transform:scale(1.035);filter:saturate(1) contrast(1.03);}
.product-system-number{position:absolute;z-index:1;left:22px;top:22px;display:grid;place-items:center;width:48px;height:48px;background:rgba(12,38,50,.92);color:#e1cc96;font-family:var(--serif);font-size:18px;border:1px solid rgba(225,204,150,.42);}
.product-system-body{display:flex;flex-direction:column;flex:1;padding:31px 32px 29px;}
.product-system-kicker{font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:.15em;color:var(--gold-text);font-weight:600;}
.product-system-card h3{font-size:31px;line-height:1.06;margin:10px 0 13px;transition:color .25s ease;}
.product-system-card:hover h3{color:var(--gold-text);}
.product-system-truth{font-size:14px;line-height:1.7;color:var(--ink-2);max-width:42em;}
.product-system-facts{display:grid;grid-template-columns:1fr 1fr;margin:25px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.product-system-facts>div{padding:17px 18px 18px 0;}
.product-system-facts>div+div{padding-left:18px;border-left:1px solid var(--line);}
.product-system-facts dt{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--sub);}
.product-system-facts dd{font-size:12px;line-height:1.55;color:var(--ink-2);margin-top:6px;}
.product-system-link{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:25px;font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--navy-deep);font-weight:600;}
.product-system-link b{font-size:17px;font-weight:400;transition:transform .25s ease;}
.product-system-card:hover .product-system-link b{transform:translate(3px,-3px);}
.system-advisor{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(360px,1.25fr) auto;gap:45px;align-items:center;margin-top:36px;padding:30px 34px;background:linear-gradient(110deg,#f3ecde,#eaf0ef);border-left:4px solid var(--gold-text);}
.system-advisor>div>span{display:block;margin-bottom:7px;font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--gold-text);font-weight:600;}
.system-advisor h3{font-size:25px;line-height:1.08;}
.system-advisor p{font-size:13px;line-height:1.7;color:var(--sub);}
.system-advisor .text-link{white-space:nowrap;}
.gcc-system-story{margin-top:82px;padding-top:72px;border-top:1px solid var(--line);scroll-margin-top:95px;}
.gcc-story-head{display:grid;grid-template-columns:minmax(380px,.95fr) minmax(360px,1.05fr);gap:80px;align-items:end;margin-bottom:36px;}
.gcc-story-head h2{font-size:clamp(34px,3.8vw,50px);line-height:1.04;max-width:650px;}
.gcc-story-head>p{font-size:14px;line-height:1.8;color:var(--sub);max-width:590px;}
.gcc-story-list{border-top:1px solid rgba(19,28,40,.2);}
.gcc-story-row{display:grid;grid-template-columns:54px minmax(0,1fr) 190px;gap:22px;align-items:center;padding:27px 20px 27px 0;border-bottom:1px solid rgba(19,28,40,.18);border-left:3px solid transparent;scroll-margin-top:96px;transition:background .25s ease,border-color .25s ease;}
.gcc-story-row:target{background:var(--brass-soft);border-left-color:var(--gold-text);}
.gcc-story-row>span{font-family:var(--serif);font-size:20px;color:var(--gold-text);}
.gcc-story-row h3{font-size:25px;line-height:1.08;margin-bottom:7px;}
.gcc-story-row p{font-size:13px;line-height:1.65;color:var(--sub);max-width:660px;}
.gcc-story-row em{font-size:9.5px;line-height:1.55;text-transform:uppercase;letter-spacing:.12em;color:var(--sub);font-style:normal;text-align:right;}
.gcc-story-cta{margin-top:30px;}

/* ---------- narrative system detail pages ---------- */
.product-family{scroll-margin-top:96px;}
.product-family+.product-family{margin-top:78px;padding-top:70px;border-top:1px solid var(--line);}
.product-family-head{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(340px,1.05fr);gap:72px;align-items:end;margin-bottom:36px;}
.product-family-head h2{font-size:clamp(34px,3.8vw,50px);line-height:1.05;}
.product-family-head>p{max-width:620px;color:var(--sub);font-size:14.5px;line-height:1.8;}
.product-system-card[id]{scroll-margin-top:98px;}
.system-story-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);gap:76px;align-items:start;}
.system-story-copy .story-lead{font-family:var(--serif);font-size:clamp(25px,2.7vw,34px);font-weight:600;line-height:1.25;color:var(--ink);margin-bottom:24px;}
.system-story-copy p{max-width:48em;margin-bottom:18px;color:var(--ink-2);font-size:16px;}
.system-story-aside{padding:28px 30px;background:var(--sand);border-top:3px solid var(--gold-text);}
.system-story-aside h3{font-size:24px;margin-bottom:14px;}
.system-story-aside ul{padding-left:18px;}
.system-story-aside li{font-size:13.5px;line-height:1.65;color:var(--ink-2);margin-bottom:11px;}
.system-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px;}
.system-option{padding:27px 26px 29px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--brass);}
.system-option span{display:block;margin-bottom:15px;font-family:var(--serif);font-size:17px;color:var(--gold-text);}
.system-option h3{font-size:23px;line-height:1.15;}
.system-option p{font-size:13.5px;line-height:1.7;color:var(--sub);}
.system-performance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0 38px;}
.system-performance{padding:26px 26px 28px;background:var(--navy-deep);color:#fff;}
.system-performance h3{font-size:21px;color:#fff;}
.system-performance p{font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.74);}
.spec-scroll{overflow-x:auto;border:1px solid var(--line);background:#fff;}
.spec-scroll table.spec{min-width:720px;}
.system-pair-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px;}
.system-pair-link{display:flex;flex-direction:column;gap:8px;min-height:275px;padding:25px 26px;color:var(--ink);background:#fff;border:1px solid var(--line);overflow:hidden;transition:transform .2s ease,border-color .2s ease;}
.system-pair-link::before{content:"";display:block;height:112px;flex:0 0 112px;margin:-25px -26px 11px;background:center/cover no-repeat var(--mist);filter:saturate(.88) contrast(1.02);}
.system-pair-link[href*="stick-curtain-wall"]::before{background-image:url("library/systems/stick-curtain-wall-detail.webp");}
.system-pair-link[href*="structural-glazing"]::before{background-image:url("library/systems/structural-glazing-detail.webp");}
.system-pair-link[href*="unitized-curtain-wall"]::before{background-image:url("library/systems/unitized-curtain-wall.webp");}
.system-pair-link[href*="renovation-facade"]::before{background-image:url("library/systems/renovation-completed-reference.webp");}
.system-pair-link[href*="bipv-glass-facade"]::before{background-image:url("library/systems/bipv-glass-facade-hero.webp");}
.system-pair-link[href*="luminous-facade"]::before{background-image:url("library/systems/luminous-facade-hero.webp");}
.system-pair-link[href*="mashrabia-facade"]::before{background-image:url("library/systems/mashrabiya-facade-hero.webp");}
.system-pair-link[href*="sliding-folding-glass-walls"]::before{background-image:url("library/systems/sliding-folding-glass-walls-hero.webp");}
.system-pair-link[href*="glass-rooflights-skylights"]::before{background-image:url("library/systems/rooflights-skylights-hero.webp");}
.system-pair-link:hover{transform:translateY(-3px);border-color:rgba(132,103,45,.55);color:var(--ink);}
.system-pair-link small{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.system-pair-link strong{font-family:var(--serif);font-size:23px;line-height:1.15;}
.system-pair-link span{margin-top:auto;font-size:12.5px;color:var(--sub);}
.system-visual-note{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--sub);margin-top:10px;}
.product-related-media{min-height:170px;}
.system-faq{max-width:900px;}
.spec-request{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:18px 20px;background:var(--brass-soft);border-left:3px solid var(--brass);}
.spec-request span{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.spec-request strong{display:block;margin-top:3px;font-family:var(--serif);font-size:19px;line-height:1.3;}
.spec-request .text-link{flex:0 0 auto;}
.compare-table{min-width:1040px!important;}
.compare-table th,.compare-table td{width:auto!important;}
.compare-table td:first-child{min-width:170px;}
.compare-table td:last-child{min-width:210px;}
.compare-level{display:inline-block;min-width:56px;padding:2px 7px;background:var(--brass-soft);color:#6c541d;font-size:11px;font-weight:700;letter-spacing:.08em;text-align:center;}
.compare-cost-key{display:flex;flex-wrap:wrap;gap:10px 24px;margin:-4px 0 22px;padding:14px 18px;background:rgba(255,255,255,.76);border:1px solid rgba(132,103,45,.2);}
.compare-cost-key span{display:inline-flex;align-items:center;gap:8px;color:var(--sub);font-size:12px;font-weight:600;}
.compare-cost-key b{min-width:42px;color:#6c541d;letter-spacing:.08em;}
.compare-cost{display:inline-flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:122px;}
.compare-cost small{color:var(--sub);font-size:10px;font-weight:600;line-height:1.3;letter-spacing:.02em;}
.role-insight{display:grid;grid-template-columns:1fr auto;gap:4px 18px;align-items:center;margin-top:24px;padding:16px 18px;border:1px solid var(--line);background:var(--pearl);color:var(--ink);}
.role-insight span{grid-column:1/-1;font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.role-insight strong{font-family:var(--serif);font-size:19px;line-height:1.25;}
.role-insight b{font-size:12px;color:var(--navy);white-space:nowrap;}
.hero-disclosure{max-width:660px;margin-top:20px;padding-left:14px;border-left:2px solid rgba(217,196,138,.72);color:rgba(255,255,255,.75);font-size:12px;line-height:1.6;}

/* ---------- certification & compliance explainer ---------- */
.compliance-page section[id]{scroll-margin-top:126px;}
.compliance-hero .hero-photo{object-position:center 51%;filter:saturate(.86) contrast(1.02) brightness(1.04);}
.compliance-hero .compliance-hero-inner{padding:90px 0 80px;}
.compliance-hero-kicker{color:#e1cc96;}
.compliance-hero .lead{margin-top:18px;}
.compliance-hero-audience{max-width:690px;margin-top:19px;padding-inline-start:14px;border-inline-start:2px solid rgba(225,204,150,.72);color:rgba(255,255,255,.82);font-size:12.5px;line-height:1.65;}
.compliance-reviewed{max-width:690px;margin-top:9px;color:rgba(255,255,255,.68);font-size:11.5px;line-height:1.6;}
.compliance-role-paths{background:var(--pearl);border-bottom:1px solid var(--line);}
.compliance-role-paths .container{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr));align-items:stretch;gap:0;}
.compliance-role-paths .container>span{align-self:center;padding-inline-end:26px;font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-text);font-weight:700;white-space:nowrap;}
.compliance-role-paths a{display:flex;flex-direction:column;justify-content:center;min-height:75px;padding:15px 23px;border-inline-start:1px solid var(--line);color:var(--ink);transition:background .2s ease,color .2s ease;}
.compliance-role-paths a:hover{background:var(--brass-soft);color:var(--navy-deep);}
.compliance-role-paths strong{font-family:var(--serif);font-size:17px;line-height:1.2;}
.compliance-role-paths small{margin-top:4px;color:var(--sub);font-size:10.5px;line-height:1.4;}
.compliance-section-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,1fr);gap:50px;align-items:end;}
.compliance-section-intro .section-sub{max-width:620px;}
.compliance-evidence-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;list-style:none;border:1px solid var(--line);background:#fff;box-shadow:0 14px 34px rgba(19,28,40,.055);}
.compliance-evidence-flow>li{position:relative;min-width:0;margin:0;padding:29px 24px 31px;border-block-start:4px solid var(--brass);}
.compliance-evidence-flow>li+li{border-inline-start:1px solid var(--line);}
.compliance-evidence-flow>li:not(:last-child)::after{content:"";position:absolute;z-index:2;inset-inline-end:-7px;top:44px;width:12px;height:12px;background:#fff;border-block-start:1px solid var(--line);border-inline-end:1px solid var(--line);transform:rotate(45deg);}
.evidence-layer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px;}
.evidence-layer-number{font-family:var(--serif);font-size:29px;line-height:1;color:var(--gold-text);}
.evidence-layer-status{max-width:105px;padding:4px 7px;background:var(--brass-soft);color:#6c541d;font-size:8.5px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase;text-align:center;font-weight:700;}
.compliance-evidence-flow h3{font-size:21px;line-height:1.17;}
.compliance-evidence-flow p{color:var(--sub);font-size:13px;line-height:1.72;}
.compliance-table caption{padding:12px 16px;background:var(--pearl);border-bottom:1px solid var(--line);color:var(--sub);font-size:11px;line-height:1.5;letter-spacing:.08em;text-align:left;text-transform:uppercase;}
.compliance-page table.spec tbody th{width:26%;padding:12px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:14px;line-height:1.75;letter-spacing:0;text-align:left;vertical-align:top;}
.compliance-cell-link{font-weight:600;text-decoration:underline;text-decoration-color:rgba(132,103,45,.38);text-underline-offset:3px;}
.table-swipe-hint{display:none;margin-top:8px;color:var(--sub);font-size:11px;line-height:1.4;}
.compliance-scenario{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(260px,.75fr) minmax(360px,1.3fr);gap:26px;align-items:center;padding:25px 28px;background:#fff;border:1px solid var(--line);border-inline-start:4px solid var(--gold-text);}
.compliance-scenario .card-kicker{font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-text);font-weight:700;}
.compliance-scenario h3{margin:0;font-size:22px;line-height:1.2;}
.compliance-scenario p{color:var(--sub);font-size:13.5px;line-height:1.72;}
.compliance-mid-cta{padding:40px 0;background:var(--sand);border-block:1px solid rgba(132,103,45,.18);}
.compliance-mid-cta .container{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:50px;align-items:center;}
.compliance-mid-cta span{font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-text);font-weight:700;}
.compliance-mid-cta h2{margin-top:4px;font-family:var(--serif);font-size:clamp(23px,2.5vw,31px);line-height:1.2;}
.compliance-mid-cta p{max-width:700px;margin-top:5px;color:var(--sub);font-size:13.5px;}
.compliance-document-layout{align-items:start;}
.document-checklist{padding:0;list-style:none;}
.document-checklist li{position:relative;margin:0;padding:10px 0 10px 31px;border-bottom:1px solid var(--line);color:var(--ink-2);font-size:14px;}
.document-checklist li:first-child{border-top:1px solid var(--line);}
.document-checklist li::before{content:"✓";position:absolute;left:4px;top:10px;color:var(--gold-text);font-weight:700;}
.compliance-final-action{text-align:end;}
.compliance-final-action p{max-width:360px;margin:9px 0 0;margin-inline-start:auto;color:rgba(255,255,255,.68);font-size:10.5px;line-height:1.55;}


@media (max-width:960px){
  .nav{gap:0;height:auto;}
  .nav-item{display:block;width:100%;height:auto;}
  .nav-toggle{display:flex;}
  .nav-top{padding:12px 0;display:block;border-top:1px solid var(--line);}
  .nav-top::after{display:none;}
  .nav-item.active .nav-top{border-top-color:var(--navy);}
  .submenu,.submenu.two-col{display:block;position:static;box-shadow:none;border:none;padding:0 0 10px 18px;min-width:0;border-radius:0;background:transparent;}
  .nav-item:hover .submenu,.nav-item:focus-within .submenu,.nav-item.is-open>.submenu,.nav-item:hover .submenu.two-col,.nav-item:focus-within .submenu.two-col,.nav-item.is-open>.submenu.two-col{display:block;grid-template-columns:none;}
  .submenu a{padding:7px 0;white-space:normal;}
  .submenu a:hover{background:transparent;}
  .submenu .sub-head{padding-top:14px;}
  .submenu .sub-cta{border-top:1px solid var(--line);margin-top:8px;}
  .submenu.systems-menu{left:auto;right:auto;min-width:0;padding:0 0 10px 18px;overflow:visible;transform:none;}
  .systems-menu-grid{display:block;padding:0;}
  .submenu.systems-menu .systems-menu-grid{max-height:48vh;overflow-y:auto;overscroll-behavior:contain;padding-inline-end:10px;}
  .systems-menu-group{padding:0;border:0;}
  .systems-menu-group>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:auto;cursor:pointer;}
  .systems-menu-group>summary::after{content:"−";font-size:15px;line-height:1;color:var(--gold-text);}
  .systems-menu-group:not([open])>summary::after{content:"+";}
  .systems-menu-grid .sub-head{min-height:0;padding:14px 0 8px;}
  .systems-menu-actions{align-items:flex-start;flex-direction:column;gap:0;padding:10px 0 0;border-top:1px solid var(--line);background:transparent;}
  .systems-menu-actions a{width:100%;padding:7px 0;}
  .systems-menu-actions .systems-compare{margin-left:0;}
  .nav-cta{margin:14px 0 4px;display:inline-block;}
  .nav-quick{display:flex;gap:22px;width:100%;padding-top:14px;margin-top:6px;border-top:1px solid var(--line);}
  .nav-quick a{font-size:13.5px;font-weight:600;color:var(--navy);}
  .anchor-nav{top:72px;}
  .product-catalog-head{grid-template-columns:1fr;gap:24px;margin-bottom:36px;}
  .product-catalog-head>p{max-width:680px;}
  .system-advisor{grid-template-columns:1fr 1fr;gap:22px 34px;}
  .system-advisor .text-link{grid-column:1/-1;justify-self:start;}
  .gcc-story-head{grid-template-columns:1fr;gap:22px;}.gcc-story-head>p{max-width:680px;}.gcc-story-row{grid-template-columns:45px minmax(0,1fr) 160px;}
  .product-family-head,.system-story-intro{grid-template-columns:1fr;gap:24px;}
  .system-option-grid,.system-performance-grid,.system-pair-grid{grid-template-columns:1fr 1fr;}
  .spec-request{align-items:flex-start;flex-direction:column;gap:14px;}
  .compliance-role-paths .container{grid-template-columns:repeat(3,minmax(0,1fr));}
  .compliance-role-paths .container>span{grid-column:1/-1;padding:12px 0 4px;}
  .compliance-role-paths a:first-of-type{border-inline-start:0;}
  .compliance-section-intro{grid-template-columns:1fr;gap:20px;}
  .compliance-evidence-flow{grid-template-columns:repeat(2,minmax(0,1fr));}
  .compliance-evidence-flow>li:nth-child(3){border-inline-start:0;border-block-start-color:var(--gold-text);border-top:1px solid var(--line);}
  .compliance-evidence-flow>li:nth-child(2)::after{display:none;}
  .compliance-scenario{grid-template-columns:1fr 1fr;}
  .compliance-scenario p{grid-column:1/-1;}
}

@media (max-width:680px){
  .compliance-hero .compliance-hero-inner{padding:72px 0 62px;}
  .compliance-role-paths .container{grid-template-columns:1fr;}
  .compliance-role-paths .container>span{grid-column:auto;padding:12px 0 5px;}
  .compliance-role-paths a,.compliance-role-paths a:first-of-type{min-height:0;padding:13px 0;border-inline-start:0;border-top:1px solid var(--line);}
  .compliance-evidence-flow{grid-template-columns:1fr;}
  .compliance-evidence-flow>li,.compliance-evidence-flow>li:nth-child(3){padding:25px 21px 27px;border-block-start:1px solid var(--line);border-inline-start:4px solid var(--brass);}
  .compliance-evidence-flow>li:first-child{border-block-start:0;}
  .compliance-evidence-flow>li:not(:last-child)::after{display:none;}
  .evidence-layer-status{max-width:none;}
  .table-swipe-hint{display:block;}
  .compliance-scenario{grid-template-columns:1fr;gap:12px;padding:22px 20px;}
  .compliance-scenario p{grid-column:auto;}
  .compliance-mid-cta .container{grid-template-columns:1fr;gap:22px;align-items:start;}
  .compliance-mid-cta .btn{justify-self:start;}
  .compliance-final-action{text-align:start;}
  .compliance-final-action p{margin-inline-start:0;}
}

[dir="rtl"] .compliance-page table.spec caption,[dir="rtl"] .compliance-page table.spec tbody th{text-align:right;}
[dir="rtl"] .compliance-evidence-flow>li:not(:last-child)::after{transform:rotate(-135deg);}
[dir="rtl"] .document-checklist li{padding-left:0;padding-right:31px;}
[dir="rtl"] .document-checklist li::before{left:auto;right:4px;}

@media (max-width:1180px) and (min-width:961px){
  .brand .tag{display:none;}
  .nav{gap:18px;}
  .nav-cta{display:none;}
}

/* ==========================================================================
   HOME — editorial international facade landing page
   ========================================================================== */

.skip-link{position:fixed;left:20px;top:-80px;z-index:100;background:#fff;color:var(--ink);padding:10px 16px;border:2px solid var(--brass);font-weight:600;transition:top .2s ease;}
.skip-link:focus{top:14px;}
.home-page{background:var(--pearl);}
.home-page main{overflow:hidden;}
.home-page a:focus-visible,.home-page button:focus-visible{outline:3px solid #d3b467;outline-offset:4px;}
.home-page .container{max-width:1280px;padding-left:42px;padding-right:42px;}
.home-page .site-header{background:rgba(253,252,249,.97);border-color:rgba(21,59,75,.12);}
.home-page .header-inner{height:82px;max-width:1500px;gap:clamp(36px,3.8vw,64px);}
.home-page .brand{gap:13px;flex:0 0 auto;}
.home-page .brand .wordmark{display:flex;gap:7px;font-size:20px;color:var(--navy-deep);line-height:1;}
.home-page .brand .wordmark>span:last-child{color:var(--gold-text);}
.home-page .brand .tag{border-left:1px solid rgba(176,141,62,.42);color:#806524;padding:3px 0 3px 12px;letter-spacing:.15em;}
.home-page .nav{flex:1;justify-content:flex-end;gap:clamp(25px,2.25vw,38px);}
.home-page .nav a{font-size:14px;}
.home-page .submenu a{font-size:13.5px;}
.home-page .nav-top{position:relative;padding:30px 0 29px;letter-spacing:.035em;font-weight:500;}
.home-page .nav-top::after{content:"";position:absolute;left:50%;right:50%;bottom:21px;height:1px;background:var(--brass);transition:left .2s ease,right .2s ease;}
.home-page .nav-item:hover>.nav-top::after,.home-page .nav-item:focus-within>.nav-top::after{left:0;right:0;}
.home-page .nav-cta{padding:11px 19px;margin-left:8px;white-space:nowrap;font-size:13px!important;box-shadow:0 5px 16px rgba(10,42,65,.12);}
.home-page .btn{border-radius:0;text-transform:none;}
.home-page .nav-toggle{width:34px;height:30px;padding:6px 3px;flex-direction:column;justify-content:space-between;align-items:center;}
.home-page .nav-toggle span{display:block;width:25px;height:1.5px;background:var(--ink);transition:transform .2s ease,opacity .2s ease;}
.home-page .nav-toggle.is-open span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.home-page .nav-toggle.is-open span:nth-child(2){opacity:0;}
.home-page .nav-toggle.is-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}

.home-title{font-family:var(--serif);font-size:clamp(34px,4vw,54px);font-weight:600;line-height:1.04;letter-spacing:-.015em;}
.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:13px;font-weight:600;letter-spacing:.04em;border-bottom:1px solid rgba(19,28,40,.35);padding-bottom:4px;transition:gap .2s ease,color .2s ease,border-color .2s ease;}
.text-link:hover{gap:17px;color:var(--gold-text);border-color:var(--brass);}
.light-link{color:#fff;border-color:rgba(255,255,255,.5);}
.light-link:hover{color:#fff;border-color:#fff;}
.editorial-head{align-items:end;margin-bottom:50px;}
.editorial-head>div{max-width:760px;}
.editorial-head>p{max-width:390px;color:var(--sub);font-size:15px;line-height:1.65;}

.home-hero{position:relative;min-height:720px;color:#fff;background:var(--navy-deep);}
.home-hero-image,.home-hero-shade{position:absolute;inset:0;width:100%;height:100%;}
.home-hero-image{object-fit:cover;object-position:center center;filter:saturate(.96) contrast(1.01) brightness(1.05);}
.home-hero-shade{background:linear-gradient(90deg,rgba(3,15,25,.86) 0%,rgba(5,22,34,.7) 34%,rgba(7,27,42,.22) 63%,rgba(5,19,30,.08) 100%),linear-gradient(0deg,rgba(5,18,29,.3),transparent 52%);}
.home-hero-layout{position:relative;z-index:2;min-height:720px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);align-items:end;gap:72px;padding-top:80px!important;padding-bottom:72px!important;}
.home-hero-copy{max-width:710px;}
.home-hero .eyebrow{color:#d6bd7c;margin-bottom:23px;}
.home-hero h1.display{font-size:clamp(58px,6.1vw,88px);line-height:.92;letter-spacing:-.02em;text-wrap:balance;}
.hero-intro{font-size:18px;line-height:1.7;color:rgba(255,255,255,.82);max-width:590px;margin-top:26px;}
.home-hero .hero-cta{display:flex;align-items:center;gap:28px;margin-top:36px;flex-wrap:wrap;}
.home-hero .btn{padding:14px 23px;}
.hero-note{display:flex;align-items:center;gap:11px;margin-top:30px;font-size:12px;line-height:1.5;color:rgba(255,255,255,.64);letter-spacing:.02em;}
.hero-note>span{width:22px;height:1px;background:var(--brass);flex:0 0 auto;}
.hero-project-note{align-self:end;justify-self:end;width:260px;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.35);margin-bottom:2px;}
.hero-project-note .mini-label{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#d6bd7c;margin-bottom:10px;}
.hero-project-note strong{display:block;font-family:var(--serif);font-size:40px;font-weight:600;line-height:1;color:#fff;}
.hero-project-note p{font-size:12.5px;line-height:1.55;color:rgba(255,255,255,.64);margin-top:10px;}

.proof-strip{position:relative;isolation:isolate;background:var(--mist);color:var(--ink);border-top:1px solid rgba(21,59,75,.1);border-bottom:1px solid rgba(21,59,75,.1);overflow:hidden;}
.proof-strip::before{content:"";position:absolute;z-index:-2;inset:0;background:url("home-fabrication.webp") center 54%/cover no-repeat;opacity:.1;filter:grayscale(.3) saturate(.5);}
.proof-strip::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(246,248,246,.97),rgba(232,239,239,.91));}
.proof-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);}
.proof-item{min-height:112px;display:flex;align-items:center;gap:17px;padding:24px 24px;border-right:1px solid rgba(21,59,75,.12);}
.proof-item:first-child{border-left:1px solid rgba(21,59,75,.12);}
.proof-item{color:var(--ink);transition:background .2s ease;}
.proof-item:hover{color:var(--ink);background:rgba(255,255,255,.58);}
.proof-item strong{font-family:var(--serif);font-size:26px;font-weight:600;color:#a88743;}
.proof-item span{font-size:11.5px;line-height:1.55;letter-spacing:.045em;color:#40545c;text-transform:uppercase;}
.proof-item:hover span{color:var(--navy-deep);}

.home-intro{padding:106px 0 98px;background:var(--pearl);}
.intro-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr);gap:clamp(52px,6vw,88px);align-items:center;}
.intro-content .home-title{max-width:650px;}
.intro-visual{position:relative;overflow:hidden;min-height:500px;background:var(--navy-deep);}
.intro-visual img{width:100%;height:100%;min-height:500px;object-fit:cover;object-position:center;transition:transform .6s ease;}
.intro-visual:hover img{transform:scale(1.02);}
.intro-visual figcaption{position:absolute;left:0;bottom:0;background:rgba(8,31,47,.88);color:#fff;padding:11px 16px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;}
.intro-copy{margin-top:28px;max-width:570px;}
.intro-copy p{font-size:17px;line-height:1.75;color:var(--ink-2);margin-bottom:24px;}

.service-flow{padding:96px 0 104px;background:#fff;}
.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.flow-step{position:relative;padding:22px 26px 35px 0;min-height:470px;border-right:1px solid var(--line);display:flex;flex-direction:column;color:var(--ink);}
.flow-step:not(:first-child){padding-left:26px;}
.flow-step:last-child{border-right:none;padding-right:0;}
.flow-step:hover{color:var(--ink);}
.flow-step:focus-visible{outline:3px solid rgba(193,162,96,.65);outline-offset:6px;}
.flow-num{font-size:10px;letter-spacing:.16em;color:var(--sub);}
.flow-icon{font-family:var(--serif);font-size:39px;color:var(--brass);height:70px;display:flex;align-items:center;margin-top:22px;}
.flow-image{aspect-ratio:4/3;margin:17px 0 22px;overflow:hidden;background:#dfe4e6;}
.flow-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease;}
.flow-step:hover .flow-image img,.flow-step:focus-visible .flow-image img{transform:scale(1.035);}
.flow-step:nth-child(1) .flow-image img{object-position:62% center;}
.flow-step:nth-child(2) .flow-image img{object-position:54% center;}
.flow-step:nth-child(3) .flow-image img{object-position:57% center;}
.flow-step:nth-child(4) .flow-image img{object-position:58% center;}
.flow-step h3{font-size:27px;line-height:1.1;margin:0 0 13px;}
.flow-step p{font-size:14px;line-height:1.7;color:var(--sub);margin-bottom:24px;}
.flow-link{font-size:12px;font-weight:600;color:var(--ink);margin-top:auto;}
.flow-step:hover .flow-link,.flow-step:focus-visible .flow-link{color:var(--gold-text);}

.featured-work{padding:108px 0;background:var(--sand);}
.featured-project{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.75fr);background:#fff;min-height:510px;}
.featured-project-image{position:relative;overflow:hidden;background:var(--navy-deep);min-height:510px;}
.featured-project-image img{width:100%;height:100%;object-fit:cover;object-position:67% center;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.featured-project-image::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,18,28,.58),transparent 48%);}
.featured-project-image:hover img{transform:scale(1.025);}
.featured-project-image>span{position:absolute;z-index:2;left:28px;bottom:24px;color:#fff;font-size:10px;letter-spacing:.17em;text-transform:uppercase;}
.featured-project-copy{padding:52px 48px;display:flex;flex-direction:column;justify-content:center;}
.project-index{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);margin-bottom:27px;}
.featured-project-copy h3{font-size:40px;line-height:1;margin-bottom:8px;}
.featured-project-copy .project-location{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--sub);margin-bottom:24px;}
.featured-project-copy>p:not(.project-location){font-size:15px;line-height:1.75;color:var(--ink-2);}
.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0;}
.project-facts div{border-top:1px solid var(--line);padding-top:11px;}
.project-facts dt{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--sub);}
.project-facts dd{font-size:12.5px;font-weight:600;color:var(--ink);margin-top:4px;}
.featured-project-copy .text-link{align-self:flex-start;}
.project-list{margin-top:26px;border-top:1px solid rgba(19,28,40,.18);}
.project-list-item{display:grid;grid-template-columns:50px minmax(260px,1fr) 180px 28px;gap:22px;align-items:center;padding:21px 4px;border-bottom:1px solid rgba(19,28,40,.18);color:var(--ink);transition:padding .2s ease,background .2s ease;}
.project-list-item:hover{color:var(--ink);padding-left:12px;background:rgba(255,255,255,.35);}
.project-list-no{font-family:var(--serif);font-size:19px;color:var(--gold-text);}
.project-list-item strong{display:block;font-family:var(--serif);font-size:21px;font-weight:600;}
.project-list-item small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--sub);margin-top:3px;}
.project-list-item>span:nth-last-child(2){font-size:12px;color:var(--sub);}
.project-list-arrow{font-size:18px;color:var(--ink)!important;}

.systems-home{padding:108px 0;background:#fff;}
.systems-layout{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(520px,1.25fr);gap:100px;align-items:start;}
.systems-sticky{position:sticky;top:118px;}
.systems-sticky p{font-size:16px;color:var(--sub);line-height:1.75;margin:24px 0 28px;max-width:420px;}
.systems-visual{aspect-ratio:4/3;margin:30px 0 24px;overflow:hidden;background:#e2e6e8;}
.systems-visual img{width:100%;height:100%;object-fit:cover;object-position:57% center;transition:transform .55s ease;}
.systems-visual:hover img{transform:scale(1.025);}
.system-list{border-top:1px solid var(--line);}
.system-row{display:grid;grid-template-columns:45px minmax(260px,1fr) 145px 24px;gap:18px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);color:var(--ink);}
.system-row:hover{color:var(--ink);}
.system-no{font-family:var(--serif);font-size:18px;color:var(--gold-text);}
.system-row h3{font-size:25px;line-height:1.1;margin:0 0 6px;transition:color .2s ease;}
.system-row:hover h3{color:var(--gold-text);}
.system-row p{font-size:13px;line-height:1.5;color:var(--sub);}
.system-use{font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;color:var(--sub);}
.system-arrow{font-size:17px;transition:transform .2s ease;}
.system-row:hover .system-arrow{transform:translate(3px,-3px);}
.standards-panel{display:flex;align-items:center;gap:10px 12px;flex-wrap:wrap;padding:23px 0;border-bottom:1px solid var(--line);}
.standards-panel>span{width:100%;font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--sub);margin-bottom:3px;}
.standards-panel>a{font-size:10.5px;letter-spacing:.06em;color:var(--ink-2);border:1px solid #d7dadd;padding:7px 10px;background:#fff;}
.standards-panel>a:hover{border-color:var(--brass);color:#806524;}
.standards-panel .standards-more{margin-left:auto;border-color:transparent;padding-right:0;font-weight:600;}
.gcc-home-banner{display:grid;grid-template-columns:155px minmax(0,1fr) auto;gap:32px;align-items:center;margin-top:38px;padding:24px 27px;color:var(--ink);background:linear-gradient(105deg,#f5efe3 0%,#eaf0ef 100%);border:1px solid rgba(21,59,75,.13);border-left:3px solid var(--gold-text);transition:background .25s ease,border-color .25s ease;}
.gcc-home-banner:hover{color:var(--ink);background:linear-gradient(105deg,#f8f2e7 0%,#edf4f2 100%);border-color:rgba(132,103,45,.46);}
.gcc-banner-label{font-size:9.5px;line-height:1.5;text-transform:uppercase;letter-spacing:.16em;color:var(--gold-text);font-weight:600;}
.gcc-home-banner strong{display:block;font-family:var(--serif);font-size:22px;line-height:1.1;font-weight:600;}
.gcc-home-banner p{margin-top:6px;max-width:720px;font-size:12.5px;line-height:1.65;color:var(--sub);}
.gcc-home-banner .gcc-mashrabiya-note{margin-top:10px;padding-top:9px;border-top:1px solid rgba(21,59,75,.14);font-size:11.5px;}
.gcc-mashrabiya-note b{color:var(--gold-text);font-weight:700;}
.gcc-banner-link{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:10.5px;text-transform:uppercase;letter-spacing:.11em;color:var(--navy-deep);font-weight:600;}
.gcc-banner-link b{font-size:16px;font-weight:400;transition:transform .2s ease;}
.gcc-home-banner:hover .gcc-banner-link b{transform:translateX(4px);}

.project-fit{padding:0 0 104px;background:#fff;}
.fit-panel{background:linear-gradient(135deg,#f4efe5 0%,#eaf0ef 100%);color:var(--ink);padding:72px;border:1px solid rgba(21,59,75,.1);}
.fit-panel .eyebrow{color:#9b7c3d;}
.fit-panel .home-title{font-size:clamp(32px,3.4vw,48px);}
.fit-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:end;margin-bottom:42px;}
.fit-lede{max-width:600px;margin:0 0 4px;font-size:14px;line-height:1.8;color:#5e7077;}
.fit-cards{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(21,59,75,.15);border-left:1px solid rgba(21,59,75,.15);}
.fit-card{min-height:248px;display:grid;grid-template-columns:44% 1fr;color:var(--ink);background:rgba(255,255,255,.38);border-right:1px solid rgba(21,59,75,.15);border-bottom:1px solid rgba(21,59,75,.15);transition:background .25s ease;overflow:hidden;}
.fit-card:hover{color:var(--navy-deep);background:rgba(255,255,255,.84);}
.fit-card-media{min-width:0;height:100%;overflow:hidden;border-right:1px solid rgba(21,59,75,.14);background:#d9d3c8;}
.fit-card-media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(.98);transition:transform .55s ease,filter .3s ease;}
.fit-card:hover .fit-card-media img{transform:scale(1.035);filter:saturate(1) contrast(1);}
.fit-card-copy{min-width:0;padding:24px 22px;display:flex;flex-direction:column;}
.fit-index{font-size:10px;letter-spacing:.14em;color:#9b7c3d;}
.fit-card strong{font-family:var(--serif);font-size:23px;line-height:1.12;font-weight:600;margin-top:auto;}
.fit-card em{font-size:11px;line-height:1.58;color:#65757b;font-style:normal;margin-top:9px;}

.insights-home{padding:98px 0 108px;background:#faf8f3;}
.insights-visual{position:relative;height:330px;margin:-8px 0 34px;overflow:hidden;background:#d9d3c8;}
.insights-visual img{width:100%;height:100%;object-fit:cover;object-position:center 52%;transition:transform .6s ease;}
.insights-visual:hover img{transform:scale(1.02);}
.insights-visual figcaption{position:absolute;left:0;bottom:0;max-width:420px;padding:14px 20px;background:rgba(248,246,240,.92);color:var(--ink-2);font-size:10px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;}
.insight-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(19,28,40,.22);border-bottom:1px solid rgba(19,28,40,.22);}
.insight-item{position:relative;padding:30px 32px 34px 0;min-height:335px;color:var(--ink);display:flex;flex-direction:column;border-right:1px solid rgba(19,28,40,.18);}
.insight-item:not(:first-child){padding-left:32px;}
.insight-item:last-child{border-right:none;padding-right:0;}
.insight-item:hover{color:var(--ink);}
.insight-index{font-family:var(--serif);font-size:20px;color:var(--gold-text);margin-bottom:32px;}
.insight-meta{font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--sub);}
.insight-item h3{font-size:27px;line-height:1.1;margin:18px 0 14px;max-width:340px;transition:color .2s ease;}
.insight-item:hover h3{color:var(--gold-text);}
.insight-item p{font-size:13.5px;line-height:1.7;color:var(--sub);margin-bottom:26px;}
.insight-item .text-link{align-self:flex-start;margin-top:auto;}

.home-cta{position:relative;background:var(--navy-deep);color:#fff;padding:92px 0;overflow:hidden;}
.home-cta::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,50,63,.96) 0%,rgba(21,59,75,.84) 52%,rgba(21,59,75,.34) 100%),url("home-delivery.webp") center 55%/cover no-repeat;}
.home-cta::after{content:"";position:absolute;right:-10%;top:-80%;width:620px;height:620px;border:1px solid rgba(176,141,62,.2);border-radius:50%;box-shadow:0 0 0 100px rgba(176,141,62,.025),0 0 0 200px rgba(176,141,62,.018);}
.home-cta-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:80px;align-items:end;}
.home-cta .eyebrow{color:#d6bd7c;}
.home-cta h2{font-family:var(--serif);font-size:clamp(42px,5vw,66px);line-height:1;font-weight:600;}
.home-cta p{max-width:650px;color:rgba(255,255,255,.68);font-size:15px;line-height:1.7;margin-top:18px;}
.home-cta-actions{display:flex;flex-direction:column;gap:15px;align-items:flex-start;}
.cta-trust-copy{display:grid;gap:5px;max-width:330px;}
.cta-trust-copy span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.68);}
.cta-trust-copy small{font-size:11px;line-height:1.5;color:rgba(255,255,255,.52);}

@media (max-width:1100px){
  .home-page .brand .tag{display:none;}
  .home-page .header-inner{gap:30px;}
  .home-page .nav{gap:22px;}
  .home-page .nav-cta{display:none;}
  .home-hero-layout{grid-template-columns:1fr auto;gap:35px;}
  .flow-grid{grid-template-columns:repeat(2,1fr);}
  .flow-step{padding:28px!important;min-height:450px;border-bottom:1px solid var(--line);}
  .flow-step:nth-child(2){border-right:none;}.flow-step:nth-child(n+3){border-bottom:none;}
  .systems-layout{gap:60px;}
  .fit-panel{padding:58px;}.fit-intro{gap:50px;}.fit-card{grid-template-columns:40% 1fr;}
}

@media (max-width:960px){
  .home-page .container{padding-left:28px;padding-right:28px;}
  .home-page .nav-toggle{display:flex;}
  .home-page .nav{top:82px;max-height:calc(100vh - 82px);overflow-y:auto;padding-top:13px;padding-bottom:32px;}
  .home-page .nav a{font-size:14.5px;}
  .home-page .submenu a{font-size:13.5px;}
  .home-page .nav-top{padding:13px 0;}
  .home-page .nav-top::after{display:none;}
  .home-page .nav-cta{display:inline-block;}
  .home-hero,.home-hero-layout{min-height:660px;}
  .home-hero-layout{grid-template-columns:1fr;align-items:end;padding-bottom:60px!important;}
  .hero-project-note{display:none;}
  .home-hero-copy{max-width:670px;}
  .home-hero h1.display{font-size:clamp(54px,9vw,74px);}
  .proof-grid{grid-template-columns:repeat(2,1fr);}
  .proof-item:nth-child(3){border-left:1px solid rgba(21,59,75,.12);}
  .proof-item:nth-child(-n+2){border-bottom:1px solid rgba(21,59,75,.12);}
  .intro-grid{grid-template-columns:1fr;gap:35px;}
  .home-intro{padding:95px 0;}
  .flow-grid{grid-template-columns:repeat(2,1fr);}
  .flow-step{padding:28px!important;min-height:460px;border-bottom:1px solid var(--line);}
  .flow-step:nth-child(2){border-right:none;}.flow-step:nth-child(n+3){border-bottom:none;}
  .featured-project{grid-template-columns:1fr;}.featured-project-image{min-height:430px;}.featured-project-copy{padding:42px;}
  .systems-layout{grid-template-columns:1fr;gap:50px;}.systems-sticky{position:static;}.systems-sticky p{max-width:620px;}
  .gcc-home-banner{grid-template-columns:130px minmax(0,1fr);}.gcc-banner-link{grid-column:2;justify-self:start;}
  .fit-panel{padding:54px;}.fit-intro{grid-template-columns:1fr;gap:22px;margin-bottom:36px;}.fit-lede{max-width:680px;}.fit-cards{grid-template-columns:1fr;}.fit-card{grid-template-columns:38% 1fr;min-height:220px;}
  .home-cta-inner{grid-template-columns:1fr;gap:36px;}.home-cta-actions{flex-direction:row;align-items:center;flex-wrap:wrap;}
}

@media (max-width:680px){
  .home-page .container{padding-left:20px;padding-right:20px;}
  .home-page .header-inner{height:66px;}
  .home-page .brand .wordmark{font-size:17px;letter-spacing:.1em;}
  .home-page .nav{top:66px;max-height:calc(100vh - 66px);}
  .home-hero,.home-hero-layout{min-height:640px;}
  .home-hero-image{object-position:62% center;}
  .home-hero-shade{background:linear-gradient(90deg,rgba(3,15,25,.86),rgba(4,19,30,.48)),linear-gradient(0deg,rgba(3,15,25,.5),transparent 55%);}
  .home-hero-layout{padding-top:60px!important;padding-bottom:45px!important;}
  .home-hero h1.display{font-size:clamp(47px,15vw,64px);}
  .hero-intro{font-size:15.5px;line-height:1.65;margin-top:22px;}
  .home-hero .hero-cta{align-items:flex-start;flex-direction:column;gap:20px;margin-top:28px;}
  .hero-note{font-size:10.5px;margin-top:23px;}
  .proof-item{min-height:102px;padding:18px 12px;gap:10px;}
  .proof-item strong{font-size:21px;}.proof-item span{font-size:9px;}
  .home-title{font-size:clamp(32px,10vw,43px);}
  .home-intro{padding:78px 0 72px;}.intro-copy p{font-size:15px;}
  .intro-visual,.intro-visual img{min-height:330px;}
  .service-flow,.featured-work,.systems-home,.insights-home{padding:72px 0;}
  .editorial-head{margin-bottom:34px;}
  .flow-grid{grid-template-columns:1fr;}
  .flow-step{min-height:0;padding:26px 0!important;border-right:none!important;border-bottom:1px solid var(--line)!important;}
  .flow-step:last-child{border-bottom:none!important;}
  .flow-icon{height:45px;margin-top:14px;}.flow-step h3{margin-top:10px;}.flow-step p{margin-bottom:18px;}
  .featured-project-image{min-height:300px;}.featured-project-copy{padding:32px 24px;}.featured-project-copy h3{font-size:34px;}
  .project-facts{grid-template-columns:1fr;gap:10px;}.project-list-item{grid-template-columns:35px 1fr 20px;gap:10px;}.project-list-item>span:nth-last-child(2){display:none;}
  .system-row{grid-template-columns:34px 1fr 20px;gap:9px;padding:23px 0;}.system-use{display:none;}.system-row h3{font-size:22px;}
  .systems-visual{margin-top:24px;}
  .standards-panel .standards-more{width:100%;margin-left:0;padding-left:0;}
  .gcc-home-banner{grid-template-columns:1fr;gap:12px;margin-top:28px;padding:22px 20px;}.gcc-banner-link{grid-column:auto;margin-top:3px;}
  .project-fit{padding:0 0 72px;}.project-fit .container{padding:0;}.fit-panel{padding:52px 20px;}.fit-intro{margin-bottom:30px;}.fit-card{grid-template-columns:36% 1fr;min-height:178px;}.fit-card-media{height:100%;aspect-ratio:auto;border-right:1px solid rgba(21,59,75,.14);border-bottom:none;}.fit-card-copy{min-height:0;padding:22px 20px;}
  .insight-list{grid-template-columns:1fr;}.insight-item,.insight-item:not(:first-child){padding:26px 0;min-height:0;border-right:none;border-bottom:1px solid rgba(19,28,40,.18);}.insight-item:last-child{border-bottom:none;}.insight-index{margin-bottom:18px;}.insight-item p{margin-bottom:22px;}
  .insights-visual{height:250px;margin-bottom:24px;}
  .home-cta{padding:70px 0;}.home-cta h2{font-size:44px;}.home-cta-actions{align-items:flex-start;flex-direction:column;}.home-cta::after{display:none;}
}

@media (max-width:420px){
  .fit-card{grid-template-columns:1fr;}
  .fit-card-media{height:auto;aspect-ratio:16/9;border-right:none;border-bottom:1px solid rgba(21,59,75,.14);}
  .fit-card-copy{min-height:150px;}
}

/* ========================================================================== 
   APPROACH — four controlled facade handoffs
   ========================================================================== */
.approach-page{background:var(--pearl);}
.approach-page .skip-link{z-index:100;}
.approach-hero{min-height:590px;}
.approach-hero .hero-photo{object-position:center 48%;filter:saturate(.9) contrast(1.03) brightness(1.05);}
.approach-hero .hero-ph{background:linear-gradient(90deg,rgba(6,22,31,.86) 0%,rgba(8,30,41,.7) 38%,rgba(10,37,48,.26) 66%,rgba(10,30,39,.08) 100%),linear-gradient(0deg,rgba(5,21,29,.3),transparent 56%);}
[dir="rtl"] .approach-hero .hero-ph{background:linear-gradient(270deg,rgba(6,22,31,.86) 0%,rgba(8,30,41,.7) 38%,rgba(10,37,48,.26) 66%,rgba(10,30,39,.08) 100%),linear-gradient(0deg,rgba(5,21,29,.3),transparent 56%);}
.approach-hero .hero-inner{max-width:750px;padding:96px 0 84px;}
.approach-hero .lead{max-width:670px;margin-top:20px;font-size:19px;line-height:1.65;}
.approach-hero-link{display:inline-flex;align-items:center;gap:10px;color:#fff;border-bottom:1px solid rgba(255,255,255,.52);padding:9px 0 5px;font-size:13px;font-weight:600;letter-spacing:.04em;}
.approach-hero-link:hover{color:#ecdba8;border-color:#ecdba8;}
.approach-hero-link span{transition:transform .2s ease;}
.approach-hero-link:hover span{transform:translateY(3px);}
.approach-hero .hero-disclosure{max-width:610px;margin-top:25px;color:rgba(255,255,255,.68);}

.approach-intro{padding-bottom:50px!important;scroll-margin-top:120px;}
.approach-story-head{display:grid;grid-template-columns:minmax(340px,.95fr) minmax(360px,1.05fr);gap:90px;align-items:end;}
.approach-story-head h2{max-width:650px;font-size:clamp(36px,4vw,52px);line-height:1.04;}
.approach-story-head>p{max-width:610px;color:var(--sub);font-size:15px;line-height:1.85;}
.approach-intake{display:grid;grid-template-columns:1fr 1fr auto;gap:0;margin-top:42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--pearl);}
.approach-intake>div{padding:25px 30px 27px;border-inline-end:1px solid var(--line);}
.approach-intake span{display:block;margin-bottom:7px;font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.approach-intake strong{display:block;max-width:390px;font-family:var(--serif);font-size:19px;line-height:1.32;font-weight:600;}
.approach-intake .text-link{align-self:center;margin:0 28px;white-space:nowrap;}

.approach-process{padding:0 0 88px;}
.approach-chapter{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:clamp(50px,7vw,94px);align-items:center;padding:88px 0;border-top:1px solid rgba(19,28,40,.16);scroll-margin-top:112px;}
.approach-chapter:nth-child(even) .approach-chapter-media{order:2;}
.approach-chapter-media{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--mist);box-shadow:0 20px 48px rgba(14,43,53,.1);}
.approach-chapter-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 64%,rgba(5,21,29,.42));pointer-events:none;}
.approach-chapter-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.02);transition:transform .6s ease,filter .35s ease;}
.approach-chapter:hover .approach-chapter-media img{transform:scale(1.022);filter:saturate(.98) contrast(1.03);}
.approach-chapter-media figcaption{position:absolute;z-index:2;inset-inline-start:18px;bottom:16px;max-width:calc(100% - 36px);color:rgba(255,255,255,.9);font-size:9px;line-height:1.45;letter-spacing:.12em;text-transform:uppercase;}
.approach-chapter-copy{min-width:0;}
.approach-chapter-no{display:flex;align-items:baseline;gap:13px;margin-bottom:20px;font-family:var(--serif);font-size:31px;line-height:1;color:var(--gold-text);}
.approach-chapter-no span{font-family:var(--sans);font-size:9.5px;letter-spacing:.17em;text-transform:uppercase;color:var(--sub);font-weight:600;}
.approach-chapter h2{font-family:var(--serif);font-size:clamp(31px,3.2vw,43px);font-weight:600;line-height:1.08;margin-bottom:21px;}
.approach-chapter-copy>p{font-size:15.5px;line-height:1.82;color:var(--ink-2);}
.approach-checks{display:grid;gap:9px;margin:24px 0 0;padding:0;list-style:none;}
.approach-checks li{position:relative;padding-inline-start:19px;margin:0;color:var(--sub);font-size:13px;line-height:1.55;}
.approach-checks li::before{content:"";position:absolute;inset-inline-start:0;top:.68em;width:7px;height:1px;background:var(--brass);}
.approach-detail{position:relative;margin-top:25px;padding:5px 0 4px 20px;border-inline-start:2px solid var(--navy);}
.approach-detail>span{display:block;margin-bottom:6px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.approach-detail p{font-size:13px;line-height:1.7;color:var(--sub);}
.approach-anchor-target{position:absolute;scroll-margin-top:118px;}
.approach-gate{margin-top:28px;padding:18px 20px;background:linear-gradient(105deg,#f5efe3,#edf2f1);border-inline-start:3px solid var(--gold-text);}
.approach-gate span{display:block;margin-bottom:5px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.approach-gate strong{display:block;font-family:var(--serif);font-size:18px;line-height:1.35;font-weight:600;}

.approach-support{scroll-margin-top:106px;}
.support-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:42px;}
.support-level{display:flex;flex-direction:column;min-height:360px;padding:30px 29px 28px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy);box-shadow:0 12px 34px rgba(15,48,59,.05);}
.support-level.is-focus{border-top-color:var(--gold-text);background:linear-gradient(180deg,#fff 0%,#fdfaf3 100%);}
.support-level-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;}
.support-level-head span{font-family:var(--serif);font-size:27px;line-height:1;color:var(--gold-text);}
.support-level-head em{font-style:normal;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--sub);}
.support-level h3{font-size:27px;line-height:1.08;margin-bottom:17px;}
.support-level>p{font-size:13.5px;line-height:1.75;color:var(--sub);}
.support-level dl{margin-top:auto;padding-top:24px;border-top:1px solid var(--line);}
.support-level dt{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);font-weight:600;}
.support-level dd{margin-top:6px;font-size:12.5px;line-height:1.55;color:var(--ink-2);}
.approach-scope-note{margin-top:22px;padding:17px 20px;border:1px solid #e0d3b5;background:var(--brass-soft);color:#695321;font-size:12.5px;line-height:1.7;}
.approach-scope-note strong{color:#4e3d18;}

.approach-regions{scroll-margin-top:106px;}
.approach-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px;}
.approach-region-grid article{min-height:350px;padding:39px 40px;background:var(--navy-deep);color:#fff;border-top:3px solid var(--brass);}
.approach-region-grid article:last-child{background:#f1eee6;color:var(--ink);border-top-color:var(--navy);}
.approach-region-grid article>span{display:block;margin-bottom:26px;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#d8c17d;font-weight:600;}
.approach-region-grid article:last-child>span{color:var(--gold-text);}
.approach-region-grid h3{max-width:470px;font-size:31px;line-height:1.12;color:inherit;}
.approach-region-grid p{max-width:490px;margin:17px 0 30px;color:rgba(255,255,255,.7);font-size:13.5px;line-height:1.75;}
.approach-region-grid article:last-child p{color:var(--sub);}
.approach-region-grid article:first-child .text-link{color:#fff;border-color:rgba(255,255,255,.42);}
.approach-region-grid article:first-child .text-link:hover{color:#e6d39d;border-color:#e6d39d;}
.approach-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.approach-principles>div{display:grid;grid-template-columns:34px 1fr;gap:5px 13px;padding:25px 27px;border-inline-end:1px solid var(--line);}
.approach-principles>div:last-child{border-inline-end:none;}
.approach-principles span{grid-row:1/3;font-family:var(--serif);font-size:21px;color:var(--gold-text);}
.approach-principles strong{font-family:var(--serif);font-size:20px;line-height:1.2;}
.approach-principles p{font-size:12px;line-height:1.6;color:var(--sub);}

@media (max-width:960px){
  .approach-hero{min-height:560px;}
  .approach-hero .hero-photo{object-position:61% center;}
  .approach-story-head{grid-template-columns:1fr;gap:22px;}
  .approach-story-head>p{max-width:700px;}
  .approach-intake{grid-template-columns:1fr 1fr;}
  .approach-intake>div:nth-child(2){border-inline-end:0;}
  .approach-intake .text-link{grid-column:1/-1;justify-self:start;margin:0;padding:20px 30px 18px;}
  .approach-chapter{grid-template-columns:1fr;gap:34px;padding:68px 0;}
  .approach-chapter:nth-child(even) .approach-chapter-media{order:0;}
  .approach-chapter-copy{max-width:720px;}
  .support-levels{grid-template-columns:1fr;}
  .support-level{min-height:0;}
  .approach-region-grid{grid-template-columns:1fr;}
  .approach-region-grid article{min-height:0;}
}

@media (max-width:640px){
  .approach-hero{min-height:610px;}
  .approach-hero .hero-photo{object-position:68% center;}
  .approach-hero .hero-ph{background:linear-gradient(90deg,rgba(6,22,31,.88),rgba(8,30,41,.6)),linear-gradient(0deg,rgba(5,21,29,.52),transparent 58%);}
  .approach-hero .hero-inner{padding:76px 0 64px;}
  .approach-hero .lead{font-size:16px;}
  .approach-hero .hero-cta{align-items:flex-start;flex-direction:column;gap:16px;}
  .approach-intro{padding-bottom:34px!important;}
  .approach-intake{grid-template-columns:1fr;margin-top:30px;}
  .approach-intake>div,.approach-intake>div:nth-child(2){padding:21px 20px;border-inline-end:0;border-bottom:1px solid var(--line);}
  .approach-intake .text-link{grid-column:auto;margin:0;padding:18px 20px 16px;}
  .approach-process{padding-bottom:58px;}
  .approach-chapter{padding:54px 0;}
  .approach-chapter-media{aspect-ratio:4/3;}
  .approach-chapter h2{font-size:32px;}
  .approach-gate{padding:16px 17px;}
  .support-level{padding:26px 23px 24px;}
  .approach-region-grid article{padding:31px 25px;}
  .approach-region-grid h3{font-size:28px;}
  .approach-principles{grid-template-columns:1fr;}
  .approach-principles>div{padding:21px 5px;border-inline-end:0;border-bottom:1px solid var(--line);}
  .approach-principles>div:last-child{border-bottom:0;}
}

/* ---------- Services page: capability and deliverables ---------- */
.services-page{background:var(--pearl);}
.services-hero{min-height:620px;}
.services-hero .hero-photo{object-position:center 52%;filter:saturate(.9) contrast(1.03) brightness(1.06);}
.services-hero .hero-ph{background:linear-gradient(90deg,rgba(5,20,30,.88) 0%,rgba(7,27,39,.74) 35%,rgba(8,33,45,.32) 62%,rgba(7,26,36,.08) 100%),linear-gradient(0deg,rgba(4,18,26,.31),transparent 56%);}
.services-hero .hero-inner{max-width:770px;padding:104px 0 86px;}
.services-hero .lead{max-width:700px;margin-top:20px;font-size:19px;line-height:1.65;}
.services-hero-link{display:inline-flex;align-items:center;gap:10px;padding:9px 0 5px;color:#fff;border-bottom:1px solid rgba(255,255,255,.52);font-size:13px;font-weight:600;letter-spacing:.04em;}
.services-hero-link:hover{color:#ecdba8;border-color:#ecdba8;}
.services-hero-link span{transition:transform .2s ease;}
.services-hero-link:hover span{transform:translateY(3px);}

.services-proof{background:var(--navy-deep);color:#fff;border-top:1px solid rgba(255,255,255,.1);}
.services-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
.services-proof-grid>div{min-height:126px;padding:29px 28px 27px;border-inline-end:1px solid rgba(255,255,255,.13);}
.services-proof-grid>div:first-child{border-inline-start:1px solid rgba(255,255,255,.13);}
.services-proof-grid span{display:block;margin-bottom:12px;color:#d7c080;font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.services-proof-grid strong{display:block;max-width:240px;font-family:var(--serif);font-size:20px;line-height:1.28;font-weight:600;}

.services-intro{scroll-margin-top:108px;}
.services-story-head{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(360px,1.05fr);gap:90px;align-items:start;}
.services-story-head h2{max-width:680px;font-size:clamp(38px,4vw,53px);line-height:1.04;}
.services-story-head>div:last-child,.services-story-head>p{max-width:610px;color:var(--sub);font-size:15px;line-height:1.82;}
.services-story-head>div:last-child p+p{margin-top:15px;}
.service-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:50px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.service-entry-grid>a{min-height:265px;padding:31px 30px 28px;color:var(--ink);border-inline-end:1px solid var(--line);transition:background .25s ease,color .25s ease;}
.service-entry-grid>a:first-child{border-inline-start:1px solid var(--line);}
.service-entry-grid>a:hover{color:var(--ink);background:var(--tint);}
.service-entry-grid span{display:block;color:var(--gold-text);font-size:9.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.service-entry-grid h3{margin:30px 0 16px;font-size:27px;line-height:1.12;}
.service-entry-grid p{font-size:13px;line-height:1.7;color:var(--sub);}

.services-chapters{padding:0 0 92px;background:#fff;}
.service-scope-chapter{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr);gap:clamp(50px,7vw,94px);align-items:center;padding:92px 0;border-top:1px solid rgba(19,28,40,.16);scroll-margin-top:108px;}
.service-scope-chapter:nth-child(even) .service-scope-media{order:2;}
.service-scope-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--mist);box-shadow:0 22px 52px rgba(14,43,53,.1);}
.service-scope-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 68%,rgba(5,21,29,.44));pointer-events:none;}
.service-scope-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.02);transition:transform .65s ease,filter .35s ease;}
.service-scope-chapter:hover .service-scope-media img{transform:scale(1.022);filter:saturate(.98) contrast(1.03);}
.service-scope-media figcaption,.services-support-layout figcaption,.services-renovation-layout figcaption{position:absolute;z-index:2;inset-inline-start:18px;bottom:15px;max-width:calc(100% - 36px);color:rgba(255,255,255,.9);font-size:9px;line-height:1.45;letter-spacing:.12em;text-transform:uppercase;}
.service-scope-copy{min-width:0;}
.service-scope-kicker{display:flex;align-items:baseline;gap:14px;margin-bottom:20px;color:var(--gold-text);font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.service-scope-kicker span{font-family:var(--serif);font-size:31px;line-height:1;letter-spacing:0;}
.service-scope-copy h2{max-width:620px;margin-bottom:20px;font-size:clamp(31px,3.1vw,43px);line-height:1.08;}
.service-scope-copy>p{max-width:620px;margin-bottom:13px;color:var(--ink-2);font-size:14.5px;line-height:1.82;}
.service-deliverables{margin-top:24px;padding:20px 22px;background:var(--pearl);border-top:1px solid var(--line);}
.service-deliverables>span{display:block;margin-bottom:11px;color:var(--gold-text);font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.service-deliverables ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 22px;margin:0;padding:0;list-style:none;}
.service-deliverables li{position:relative;padding-inline-start:15px;color:var(--sub);font-size:12px;line-height:1.55;}
.service-deliverables li::before{content:"";position:absolute;inset-inline-start:0;top:.7em;width:6px;height:1px;background:var(--brass);}
.service-result{margin-top:18px;padding-inline-start:18px;border-inline-start:3px solid var(--gold-text);}
.service-result span{display:block;margin-bottom:4px;color:var(--gold-text);font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.service-result strong{display:block;font-family:var(--serif);font-size:18px;line-height:1.35;font-weight:600;}

.services-support{color:#fff;background:var(--navy-deep);scroll-margin-top:106px;}
.services-support-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:70px;align-items:center;}
.services-support-layout figure{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0b2632;}
.services-support-layout figure::after,.services-renovation-layout figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 67%,rgba(5,21,29,.48));pointer-events:none;}
.services-support-layout img,.services-renovation-layout img{width:100%;height:100%;object-fit:cover;}
.services-support-layout h2{margin:10px 0 21px;color:#fff;font-size:clamp(37px,4vw,52px);line-height:1.05;}
.services-support-layout p{max-width:540px;color:rgba(255,255,255,.7);font-size:14.5px;line-height:1.8;}
.services-support-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:46px;border-top:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17);}
.services-support-levels article{min-height:255px;padding:29px 30px;border-inline-end:1px solid rgba(255,255,255,.17);}
.services-support-levels article:first-child{border-inline-start:1px solid rgba(255,255,255,.17);}
.services-support-levels span{display:block;margin-bottom:27px;color:#d9c48a;font-size:9.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.services-support-levels h3{color:#fff;font-size:26px;line-height:1.12;}
.services-support-levels p{margin-top:15px;color:rgba(255,255,255,.65);font-size:12.5px;line-height:1.7;}
.services-support-note{margin-top:22px;padding:16px 19px;color:#dfd1a6;background:rgba(217,196,138,.08);border:1px solid rgba(217,196,138,.25);font-size:12px;line-height:1.65;}

.services-renovation{scroll-margin-top:106px;}
.services-renovation-layout{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);gap:80px;align-items:center;}
.services-renovation-layout>div>p{max-width:610px;margin-top:20px;color:var(--sub);font-size:14.5px;line-height:1.82;}
.services-renovation-layout figure{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--mist);box-shadow:0 22px 52px rgba(14,43,53,.1);}
.services-renovation-facts{display:grid;gap:0;margin:29px 0 25px;border-top:1px solid var(--line);}
.services-renovation-facts>div{display:grid;grid-template-columns:82px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid var(--line);}
.services-renovation-facts span{color:var(--gold-text);font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.services-renovation-facts strong{font-family:var(--serif);font-size:17px;line-height:1.35;font-weight:600;}

.services-boundary{scroll-margin-top:106px;}
.services-scope-table{margin-top:42px;background:#fff;border:1px solid var(--line);}
.services-scope-table table{min-width:900px;}
.services-scope-table th:first-child{width:18%;}
.services-scope-table th:nth-child(2),.services-scope-table th:nth-child(3){width:41%;}
.services-scope-table td{font-size:12.5px;line-height:1.6;vertical-align:top;}
.services-scope-table td:first-child{color:var(--navy);font-weight:600;}
.services-next-step{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px;padding:25px 28px;color:#fff;background:var(--navy);}
.services-next-step span{display:block;margin-bottom:5px;color:#d9c48a;font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.services-next-step strong{font-family:var(--serif);font-size:20px;line-height:1.3;font-weight:600;}
.services-next-step .btn.ghost{flex:0 0 auto;color:#fff;border-color:rgba(255,255,255,.48);}
.services-next-step .btn.ghost:hover{color:var(--navy);background:#fff;border-color:#fff;}

.services-regions{padding:0 0 110px;background:var(--tint);}
.services-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.services-region-grid article{min-height:375px;padding:48px 46px;background:#fff;border-top:3px solid var(--navy);}
.services-region-grid article:first-child{color:#fff;background:var(--navy-deep);border-top-color:var(--brass);}
.services-region-grid article>span{display:block;margin-bottom:34px;color:var(--gold-text);font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.services-region-grid article:first-child>span{color:#d9c48a;}
.services-region-grid h2{max-width:560px;font-size:31px;line-height:1.12;}
.services-region-grid article:first-child h2{color:#fff;}
.services-region-grid p{max-width:560px;margin:18px 0 28px;color:var(--sub);font-size:13px;line-height:1.75;}
.services-region-grid article:first-child p{color:rgba(255,255,255,.68);}
.services-region-grid article:first-child .text-link{color:#fff;border-color:rgba(255,255,255,.42);}

@media (max-width:960px){
  .services-hero{min-height:590px;}
  .services-hero .hero-photo{object-position:61% center;}
  .services-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .services-proof-grid>div:nth-child(3){border-inline-start:1px solid rgba(255,255,255,.13);border-top:1px solid rgba(255,255,255,.13);}
  .services-proof-grid>div:nth-child(4){border-top:1px solid rgba(255,255,255,.13);}
  .services-story-head{grid-template-columns:1fr;gap:24px;}
  .services-story-head>div:last-child,.services-story-head>p{max-width:720px;}
  .service-entry-grid{grid-template-columns:1fr;}
  .service-entry-grid>a{min-height:0;border-inline-start:1px solid var(--line);border-bottom:1px solid var(--line);}
  .service-entry-grid>a:last-child{border-bottom:0;}
  .service-entry-grid h3{margin-top:17px;}
  .service-scope-chapter{grid-template-columns:1fr;gap:36px;padding:70px 0;}
  .service-scope-chapter:nth-child(even) .service-scope-media{order:0;}
  .service-scope-copy{max-width:760px;}
  .services-support-layout,.services-renovation-layout{grid-template-columns:1fr;gap:36px;}
  .services-support-levels{grid-template-columns:1fr;}
  .services-support-levels article,.services-support-levels article:first-child{min-height:0;border-inline-start:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17);}
  .services-support-levels article:last-child{border-bottom:0;}
  .services-next-step{align-items:flex-start;flex-direction:column;}
  .services-region-grid{grid-template-columns:1fr;}
  .services-region-grid article{min-height:0;}
}

@media (max-width:640px){
  .services-hero{min-height:650px;}
  .services-hero .hero-photo{object-position:69% center;}
  .services-hero .hero-ph{background:linear-gradient(90deg,rgba(5,20,30,.9),rgba(7,27,39,.62)),linear-gradient(0deg,rgba(4,18,26,.52),transparent 58%);}
  .services-hero .hero-inner{padding:78px 0 65px;}
  .services-hero .lead{font-size:16px;}
  .services-hero .hero-cta{align-items:flex-start;flex-direction:column;gap:16px;}
  .services-proof-grid{grid-template-columns:1fr;}
  .services-proof-grid>div,.services-proof-grid>div:nth-child(3){min-height:0;padding:22px 18px;border-inline-start:1px solid rgba(255,255,255,.13);border-top:1px solid rgba(255,255,255,.13);}
  .services-proof-grid>div:first-child{border-top:0;}
  .service-entry-grid>a{padding:26px 22px;}
  .service-entry-grid h3{font-size:24px;}
  .service-scope-chapter{padding:55px 0;}
  .service-scope-media{aspect-ratio:4/3;}
  .service-scope-copy h2{font-size:31px;}
  .service-deliverables ul{grid-template-columns:1fr;}
  .services-support-layout figure,.services-renovation-layout figure{aspect-ratio:4/3;}
  .services-support-levels article{padding:25px 22px;}
  .services-renovation-facts>div{grid-template-columns:1fr;gap:6px;}
  .services-next-step{padding:23px 21px;}
  .services-region-grid article{padding:34px 25px;}
  .services-region-grid h2{font-size:28px;}
}

[dir="rtl"] .services-proof-grid,[dir="rtl"] .service-entry-grid,[dir="rtl"] .service-scope-chapter,[dir="rtl"] .services-support-layout,[dir="rtl"] .services-support-levels,[dir="rtl"] .services-renovation-layout,[dir="rtl"] .services-story-head,[dir="rtl"] .services-region-grid{direction:rtl;}
[dir="rtl"] .services-hero .hero-ph{background:linear-gradient(270deg,rgba(5,20,30,.88) 0%,rgba(7,27,39,.74) 35%,rgba(8,33,45,.32) 62%,rgba(7,26,36,.08) 100%),linear-gradient(0deg,rgba(4,18,26,.31),transparent 56%);}
[dir="rtl"] .services-hero-link span{transform:scaleX(-1);}
[dir="rtl"] .services-hero-link:hover span{transform:scaleX(-1) translateY(3px);}

/* ---------- Projects / managed narrative library ---------- */
.project-library-proof{color:#fff;background:var(--navy-deep);border-top:1px solid rgba(255,255,255,.1);}
.project-library-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
.project-library-proof-grid>div{min-height:120px;padding:27px 25px;border-inline-end:1px solid rgba(255,255,255,.14);}
.project-library-proof-grid>div:first-child{border-inline-start:1px solid rgba(255,255,255,.14);}
.project-library-proof-grid span{display:block;margin-bottom:10px;color:#d9c48a;font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.project-library-proof-grid strong{display:block;color:#fff;font-family:var(--serif);font-size:20px;line-height:1.3;font-weight:600;}
.project-feature-head,.project-library-head{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(340px,.7fr);gap:clamp(45px,7vw,94px);align-items:end;}
.project-feature-head>p,.project-library-head>p{color:var(--sub);font-size:14px;line-height:1.8;}
.project-feature-story{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);margin-top:47px;background:var(--pearl);border:1px solid var(--line);}
.project-feature-media{position:relative;min-height:540px;overflow:hidden;background:var(--navy-deep);}
.project-feature-media::after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(0deg,rgba(4,18,28,.63),transparent 43%);pointer-events:none;}
.project-feature-media img{width:100%;height:100%;position:absolute;inset:0;}
.project-feature-image{z-index:1;object-fit:cover;object-position:76% center;transition:transform .65s cubic-bezier(.2,.7,.2,1);}
.project-feature-media:hover .project-feature-image{transform:scale(1.012);}
.project-feature-media>span{position:absolute;z-index:3;inset-inline-start:27px;bottom:23px;color:#fff;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.project-feature-copy{padding:50px 46px;display:flex;flex-direction:column;justify-content:center;}
.project-feature-index{margin-bottom:25px;color:var(--gold-text);font-size:9.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.project-feature-copy h3{font-size:clamp(35px,4vw,48px);line-height:1.02;}
.project-feature-location{margin:10px 0 23px;color:var(--sub);font-size:10px;letter-spacing:.11em;text-transform:uppercase;}
.project-feature-copy>p:not(.project-feature-location){color:var(--ink-2);font-size:14.5px;line-height:1.78;}
.project-feature-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0;}
.project-feature-facts>div{padding-top:11px;border-top:1px solid var(--line);}
.project-feature-facts dt{color:var(--sub);font-size:8.5px;letter-spacing:.13em;text-transform:uppercase;}
.project-feature-facts dd{margin-top:5px;color:var(--ink);font-size:11.5px;font-weight:600;line-height:1.45;}
.project-feature-copy .text-link{align-self:flex-start;}
.project-library-section{padding-top:100px;}
.project-filter-panel{margin-top:43px;background:#fff;border:1px solid var(--line);}
.project-filter-primary{display:grid;grid-template-columns:minmax(410px,1.25fr) minmax(250px,.8fr) auto;gap:18px;align-items:end;padding:20px;}
.project-evidence-filter{min-width:0;margin:0;padding:0;border:0;}
.project-evidence-filter legend,.project-filter-field>span{display:block;margin-bottom:8px;color:var(--gold-text);font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.project-evidence-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
.evidence-tab{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:9px 13px;color:var(--ink-2);background:#fff;border:1px solid var(--line);border-inline-end:0;cursor:pointer;font-size:11.5px;font-weight:600;transition:color .16s ease,background .16s ease,border-color .16s ease;}
.evidence-tab:last-child{border-inline-end:1px solid var(--line);}
.evidence-tab:hover{color:var(--navy);background:var(--tint);}
.evidence-tab.on{color:#fff;background:var(--navy);border-color:var(--navy);}
.evidence-tab small{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;color:var(--sub);background:var(--tint);border-radius:11px;font-size:9px;line-height:1;}
.evidence-tab.on small{color:var(--navy);background:#fff;}
.project-filter-field{position:relative;display:block;min-width:0;}
.project-filter-field::after{content:"⌄";position:absolute;inset-inline-end:14px;bottom:13px;color:var(--gold-text);font-size:14px;line-height:1;pointer-events:none;}
.project-filter-field select{width:100%;height:44px;padding:0 40px 0 14px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:0;appearance:none;cursor:pointer;font:inherit;font-size:11.5px;font-weight:600;}
[dir="rtl"] .project-filter-field select{padding:0 14px 0 40px;}
.project-filter-field select:focus,.evidence-tab:focus-visible,.project-filter-more:focus-visible,.project-active-filters button:focus-visible{outline:2px solid rgba(176,141,62,.52);outline-offset:2px;}
.project-filter-more{display:flex;align-items:center;justify-content:center;gap:9px;min-width:154px;height:44px;padding:0 17px;color:var(--navy);background:var(--brass-soft);border:1px solid #ddcca1;cursor:pointer;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.project-filter-more small{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:#fff;background:var(--gold-text);border-radius:50%;font-size:9px;letter-spacing:0;}
.project-filter-more small[hidden]{display:none;}
.project-filter-more b{font-size:15px;font-weight:500;line-height:1;transition:transform .2s ease;}
.project-filter-more[aria-expanded="true"] b{transform:rotate(180deg);}
.project-filter-advanced{padding:22px 20px 19px;background:var(--tint);border-top:1px solid var(--line);}
.project-filter-advanced[hidden]{display:none;}
.project-filter-advanced-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.project-filter-advanced-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);}
.project-filter-advanced-footer p{color:var(--sub);font-size:10.5px;line-height:1.55;}
.project-filter-advanced-footer button{padding:7px 0;color:var(--navy);background:transparent;border:0;border-bottom:1px solid rgba(21,59,75,.38);cursor:pointer;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
.project-active-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px;}
.project-active-filters[hidden]{display:none;}
.project-active-label{margin-inline-end:4px;color:var(--sub);font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.project-active-filters button{display:flex;align-items:center;gap:8px;padding:7px 9px;color:var(--navy);background:#fff;border:1px solid var(--line);cursor:pointer;font-size:10.5px;}
.project-active-filters button small{color:var(--gold-text);font-size:7.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
.project-active-filters button b{color:var(--sub);font-size:14px;font-weight:400;line-height:1;}
.project-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 19px;}
.project-library-toolbar p{color:var(--sub);font-size:11px;letter-spacing:.11em;text-transform:uppercase;}
.project-filter-reset{padding:5px 0;color:var(--navy);background:transparent;border:0;border-bottom:1px solid rgba(21,59,75,.35);cursor:pointer;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;}
.project-filter-reset[hidden]{display:none;}
.case-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.case-library-card{display:flex;flex-direction:column;min-width:0;color:var(--ink);background:#fff;border:1px solid var(--line);transition:transform .25s ease,box-shadow .25s ease;}
.case-library-card:hover{color:var(--ink);transform:translateY(-3px);box-shadow:0 18px 44px rgba(14,43,53,.1);}
.case-library-media{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--mist);}
.case-library-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease;}
.case-library-card:hover .case-library-media img{transform:scale(1.02);}
.case-record-badge{position:absolute;inset-inline-start:13px;top:13px;padding:7px 9px;color:#fff;background:rgba(10,34,46,.82);font-size:8px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;}
.case-record-badge.delivered{color:#fff;background:rgba(128,94,24,.9);}
.case-library-body{display:flex;flex:1;flex-direction:column;padding:25px 23px 22px;}
.case-library-kicker{display:flex;align-items:baseline;gap:10px;color:var(--gold-text);font-size:8.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;}
.case-library-kicker span{font-family:var(--serif);font-size:20px;letter-spacing:0;}
.case-library-body h3{margin-top:17px;font-size:27px;line-height:1.08;}
.case-library-location{margin-top:8px;color:var(--sub);font-size:9px;letter-spacing:.1em;text-transform:uppercase;}
.case-library-brief{display:-webkit-box;margin-top:17px;overflow:hidden;color:var(--ink-2);font-size:12.5px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:3;}
.case-library-meta{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:22px;padding-top:13px;border-top:1px solid var(--line);color:var(--sub);font-size:9px;line-height:1.45;letter-spacing:.06em;text-transform:uppercase;}
.case-library-meta span:last-child{text-align:end;}
.case-library-link{margin-top:auto;padding-top:22px;color:var(--navy);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;}
.case-library-link span{display:inline-block;margin-inline-start:5px;transition:transform .2s ease;}
.case-library-card:hover .case-library-link span{transform:translateX(4px);}
.project-empty{padding:42px 24px;text-align:center;color:var(--sub);background:#fff;border:1px solid var(--line);}

@media (max-width:960px){
  .project-library-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .project-library-proof-grid>div:nth-child(3){border-inline-start:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14);}
  .project-library-proof-grid>div:nth-child(4){border-top:1px solid rgba(255,255,255,.14);}
  .project-feature-head,.project-library-head{grid-template-columns:1fr;gap:24px;}
  .project-feature-story{grid-template-columns:1fr;}
  .project-feature-media{min-height:0;aspect-ratio:3/2;}
  .case-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .project-filter-primary{grid-template-columns:minmax(0,1fr) auto;}
  .project-evidence-filter{grid-column:1/-1;}
  .project-filter-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .project-filter-advanced-grid .project-filter-field:last-child{grid-column:1/-1;}
}

@media (max-width:640px){
  .project-library-proof-grid{grid-template-columns:1fr;}
  .project-library-proof-grid>div,.project-library-proof-grid>div:nth-child(3),.project-library-proof-grid>div:nth-child(4){min-height:0;padding:22px 18px;border-inline-start:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14);}
  .project-library-proof-grid>div:first-child{border-top:0;}
  .project-feature-media{min-height:0;aspect-ratio:3/2;}
  .project-feature-copy{padding:32px 23px;}
  .project-feature-facts{grid-template-columns:1fr;}
  .project-filter-primary{grid-template-columns:1fr;padding:17px 16px;}
  .project-evidence-filter{grid-column:auto;}
  .evidence-tab{padding:8px 9px;font-size:10.5px;}
  .evidence-tab small{min-width:21px;padding:0 5px;}
  .project-filter-more{width:100%;}
  .project-filter-advanced{padding:19px 16px 17px;}
  .project-filter-advanced-grid{grid-template-columns:1fr;}
  .project-filter-advanced-grid .project-filter-field:last-child{grid-column:auto;}
  .project-filter-advanced-footer{align-items:flex-start;flex-direction:column;gap:12px;}
  .project-active-label{flex-basis:100%;}
  .project-library-toolbar{align-items:flex-start;}
  .case-library-grid{grid-template-columns:1fr;}
}

[dir="rtl"] .project-library-proof-grid,[dir="rtl"] .project-feature-head,[dir="rtl"] .project-feature-story,[dir="rtl"] .project-feature-facts,[dir="rtl"] .project-library-head,[dir="rtl"] .project-filter-panel,[dir="rtl"] .case-library-grid,[dir="rtl"] .case-library-meta{direction:rtl;}
[dir="rtl"] .case-library-card:hover .case-library-link span{transform:scaleX(-1) translateX(4px);}

/* ---------- Project / unified case-study template ---------- */
.project-case-hero{position:relative;display:flex;align-items:flex-end;min-height:700px;overflow:hidden;color:#fff;background:var(--navy-deep);}
.project-case-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.project-case-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,17,26,.94) 0%,rgba(5,24,35,.82) 41%,rgba(5,23,34,.35) 72%,rgba(3,17,26,.13) 100%),linear-gradient(0deg,rgba(3,17,26,.66),transparent 58%);}
.project-case-hero-inner{position:relative;z-index:2;padding:125px 0 62px;}
.project-case-hero-inner .eyebrow{color:#d9c48a;}
.project-case-hero-inner .display{max-width:820px;color:#fff;font-size:clamp(54px,7vw,86px);line-height:.96;}
.project-case-hero-inner .lead{max-width:720px;margin-top:21px;color:rgba(255,255,255,.78);font-size:16px;line-height:1.72;}
.project-case-hero-inner .hero-crumb{margin-top:36px;}
.project-case-tags{display:flex;gap:9px;margin-top:25px;flex-wrap:wrap;}
.project-case-tags span{padding:7px 11px;color:rgba(255,255,255,.83);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);font-size:8.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;}
.project-case-tags .record.delivered{color:#fff;background:rgba(144,104,27,.9);border-color:rgba(217,196,138,.64);}
.project-case-media-label{position:absolute;z-index:2;inset-inline-end:26px;bottom:24px;padding:8px 10px;color:rgba(255,255,255,.86);background:rgba(4,20,29,.7);font-size:8px;letter-spacing:.13em;text-transform:uppercase;}
.case-facts-strip{color:#fff;background:var(--navy-deep);}
.case-facts-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));}
.case-facts-grid>div{min-height:117px;padding:26px 20px;border-inline-end:1px solid rgba(255,255,255,.14);}
.case-facts-grid>div:first-child{border-inline-start:1px solid rgba(255,255,255,.14);}
.case-facts-grid span{display:block;margin-bottom:9px;color:#d9c48a;font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.case-facts-grid strong{display:block;color:#fff;font-family:var(--serif);font-size:16px;line-height:1.35;font-weight:600;}
.case-opening-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.62fr);gap:clamp(48px,8vw,105px);align-items:start;}
.case-opening-brief{max-width:800px;margin-top:23px;color:var(--ink-2);font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);line-height:1.48;}
.case-opening aside{padding:28px 29px;background:var(--tint);border-top:3px solid var(--gold-text);}
.case-opening aside>span,.case-boundary-note>span{display:block;margin-bottom:10px;color:var(--gold-text);font-size:8.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.case-opening aside>strong{display:block;color:var(--navy);font-family:var(--serif);font-size:24px;line-height:1.2;font-weight:600;}
.case-opening aside>p{margin-top:15px;color:var(--sub);font-size:12px;line-height:1.7;}
.case-programme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:54px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.case-programme-grid>div{padding:25px 22px;border-inline-end:1px solid var(--line);}
.case-programme-grid>div:first-child{border-inline-start:1px solid var(--line);}
.case-programme-grid span{display:block;margin-bottom:8px;color:var(--gold-text);font-size:8.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;}
.case-programme-grid strong{display:block;color:var(--navy);font-family:var(--serif);font-size:18px;line-height:1.35;font-weight:600;}
.case-concept-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.72fr);margin-top:54px;background:var(--navy-deep);overflow:hidden;}
.case-concept-image{position:relative;display:flex;align-items:center;justify-content:center;background:#dfe5e8;overflow:hidden;}
.case-concept-image img{display:block;width:100%;height:auto;object-fit:contain;}
.case-concept-image span{position:absolute;inset-inline-start:0;bottom:0;padding:9px 13px;color:#fff;background:rgba(128,94,24,.92);font-size:8.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;}
.case-concept-card figcaption{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,5vw,66px);}
.case-concept-card figcaption small{color:#d9c48a;font-size:8.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.case-concept-card figcaption h3{margin-top:17px;color:#fff;font-family:var(--serif);font-size:clamp(27px,3vw,38px);line-height:1.2;font-weight:600;}
.case-concept-card figcaption p{margin-top:22px;color:rgba(255,255,255,.74);font-size:13px;line-height:1.78;}
.case-concept-card figcaption em{margin-top:28px;padding-top:18px;color:rgba(255,255,255,.53);border-top:1px solid rgba(255,255,255,.15);font-size:9px;font-style:normal;line-height:1.55;letter-spacing:.08em;text-transform:uppercase;}
.case-section-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.68fr);gap:clamp(45px,7vw,94px);align-items:end;}
.case-section-head>p{color:var(--sub);font-size:14px;line-height:1.78;}
.case-story-list{max-width:1040px;margin:48px auto 0;border-top:1px solid var(--line);}
.case-story-chapter{display:grid;grid-template-columns:64px minmax(0,1fr);gap:28px;padding:37px 0;border-bottom:1px solid var(--line);}
.case-story-number{color:var(--gold-text);font-family:var(--serif);font-size:30px;line-height:1;}
.case-story-chapter h3{font-size:25px;line-height:1.2;}
.case-story-chapter p{max-width:820px;margin-top:13px;color:var(--ink-2);font-size:15px;line-height:1.82;}
.case-system-team-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-inline-start:1px solid var(--line);}
.case-system-panel,.case-team-panel{padding:43px 42px;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);}
.case-system-panel h2,.case-team-panel h2{margin-top:10px;font-size:35px;line-height:1.08;}
.case-system-panel>p{margin-top:15px;color:var(--sub);font-size:13px;line-height:1.7;}
.case-system-panel dl{margin:28px 0 24px;border-top:1px solid var(--line);}
.case-system-panel dl>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);}
.case-system-panel dt,.case-team-list span{color:var(--gold-text);font-size:8.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;}
.case-system-panel dd{color:var(--ink-2);font-size:12px;font-weight:600;}
.case-climate-note{margin-top:25px!important;padding:17px 18px;color:#6b551f!important;background:var(--brass-soft);border:1px solid #e3d5b3;font-size:11px!important;}
.case-team-list{margin-top:26px;border-top:1px solid var(--line);}
.case-team-list>div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);}
.case-team-list strong{color:var(--ink-2);font-size:12.5px;line-height:1.45;font-weight:600;}
.case-results{padding:104px 0;color:#fff;background:var(--navy-deep);}
.case-results-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.65fr);gap:clamp(52px,8vw,110px);align-items:center;}
.case-results .eyebrow{color:#d9c48a;}
.case-results h2{max-width:720px;margin-top:9px;color:#fff;font-size:clamp(39px,4.6vw,58px);line-height:1.04;}
.case-results ul{margin-top:37px;border-top:1px solid rgba(255,255,255,.18);}
.case-results li{display:grid;grid-template-columns:42px 1fr;gap:17px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.18);}
.case-results li span{color:#d9c48a;font-family:var(--serif);font-size:18px;}
.case-results li p{color:rgba(255,255,255,.72);font-size:13px;line-height:1.65;}
.case-result-quote{padding:35px 0 35px 31px;border-inline-start:2px solid rgba(217,196,138,.55);}
.case-result-quote p{color:#fff;font-family:var(--serif);font-size:clamp(24px,3vw,33px);line-height:1.38;}
.case-result-quote cite{display:block;margin-top:20px;color:#d9c48a;font-size:10px;font-style:normal;letter-spacing:.09em;text-transform:uppercase;}
.case-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:31px 25px;margin-top:47px;}
.case-gallery-image{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--mist);}
.case-gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.case-gallery-item:hover img{transform:scale(1.018);}
.case-gallery-image span{position:absolute;inset-inline-start:0;bottom:0;padding:8px 13px;color:#fff;background:rgba(7,29,41,.84);font-size:8.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;}
.case-gallery-item figcaption{margin-top:13px;color:var(--ink-2);font-size:12.5px;line-height:1.65;}
.case-boundary-note{max-width:900px;padding:23px 25px;background:#fff;border-inline-start:3px solid var(--gold-text);}
.case-boundary-note p{color:var(--sub);font-size:12px;line-height:1.7;}
.case-related-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-top:75px;}
.case-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px;}
.case-related-card{color:var(--ink);background:#fff;border:1px solid var(--line);transition:transform .25s ease,box-shadow .25s ease;}
.case-related-card:hover{color:var(--ink);transform:translateY(-3px);box-shadow:0 16px 38px rgba(14,43,53,.09);}
.case-related-card figure{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--mist);}
.case-related-card figure img{width:100%;height:100%;object-fit:cover;}
.case-related-card figure span{position:absolute;inset-inline-start:12px;top:12px;padding:6px 8px;color:#fff;background:rgba(10,34,46,.82);font-size:7.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;}
.case-related-card figure span.delivered{background:rgba(128,94,24,.9);}
.case-related-card>div{padding:22px 20px;}
.case-related-card small{color:var(--gold-text);font-size:8px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;}
.case-related-card h3{margin-top:13px;font-size:25px;line-height:1.08;}
.case-related-card p{margin-top:10px;color:var(--sub);font-size:10px;line-height:1.55;}
.case-shop-drawings{background:#fff;}
.case-shop-drawing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.case-shop-drawing-card{margin:0;background:var(--pearl);border:1px solid var(--line);}
.case-shop-drawing-card img{width:100%;height:auto;background:#fff;border-bottom:1px solid var(--line);}
.case-shop-drawing-card figcaption{padding:18px 20px;}
.case-shop-drawing-card small{display:block;margin-bottom:7px;color:var(--gold-text);font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.case-shop-drawing-card h3{margin:0 0 7px;font-size:22px;}
.case-shop-drawing-card p{color:var(--sub);font-size:11px;line-height:1.65;}
.project-not-found{min-height:560px;text-align:center;}

@media (max-width:960px){
  .project-case-hero{min-height:620px;}
  .case-facts-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .case-facts-grid>div:nth-child(4){border-inline-start:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14);}
  .case-facts-grid>div:nth-child(5),.case-facts-grid>div:nth-child(6){border-top:1px solid rgba(255,255,255,.14);}
  .case-opening-layout,.case-section-head,.case-results-layout{grid-template-columns:1fr;}
  .case-programme-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .case-programme-grid>div:nth-child(3){border-inline-start:1px solid var(--line);border-top:1px solid var(--line);}
  .case-programme-grid>div:nth-child(4){border-top:1px solid var(--line);}
  .case-concept-card{grid-template-columns:1fr;}
  .case-system-team-layout{grid-template-columns:1fr;}
  .case-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .case-shop-drawing-grid{grid-template-columns:1fr;}
  .case-related-card:last-child{display:none;}
}

@media (max-width:640px){
  .project-case-hero{min-height:690px;}
  .project-case-shade{background:linear-gradient(90deg,rgba(3,17,26,.95),rgba(5,24,35,.66)),linear-gradient(0deg,rgba(3,17,26,.67),transparent 58%);}
  .project-case-hero-inner{padding:105px 0 55px;}
  .project-case-hero-inner .display{font-size:50px;}
  .project-case-media-label{display:none;}
  .case-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .case-facts-grid>div,.case-facts-grid>div:nth-child(4),.case-facts-grid>div:nth-child(5),.case-facts-grid>div:nth-child(6){min-height:0;padding:20px 15px;border-inline-start:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14);}
  .case-facts-grid>div:nth-child(-n+2){border-top:0;}
  .case-programme-grid{grid-template-columns:1fr;}
  .case-programme-grid>div,.case-programme-grid>div:nth-child(3),.case-programme-grid>div:nth-child(4){border-inline-start:1px solid var(--line);border-inline-end:1px solid var(--line);border-top:1px solid var(--line);}
  .case-programme-grid>div:first-child{border-top:0;}
  .case-concept-card figcaption{padding:34px 27px 38px;}
  .case-story-chapter{grid-template-columns:40px 1fr;gap:15px;padding:29px 0;}
  .case-story-chapter p{font-size:14px;}
  .case-system-panel,.case-team-panel{padding:32px 22px;}
  .case-system-panel dl>div,.case-team-list>div{grid-template-columns:1fr;gap:6px;}
  .case-results{padding:78px 0;}
  .case-result-quote{padding:25px 0;border-inline-start:0;border-top:1px solid rgba(217,196,138,.45);}
  .case-gallery-grid,.case-related-grid{grid-template-columns:1fr;}
  .case-related-card:last-child{display:block;}
  .case-related-head{align-items:flex-start;flex-direction:column;}
}

[dir="rtl"] .project-case-hero-inner,[dir="rtl"] .project-case-tags,[dir="rtl"] .case-facts-grid,[dir="rtl"] .case-opening-layout,[dir="rtl"] .case-programme-grid,[dir="rtl"] .case-concept-card,[dir="rtl"] .case-section-head,[dir="rtl"] .case-story-chapter,[dir="rtl"] .case-system-team-layout,[dir="rtl"] .case-system-panel dl>div,[dir="rtl"] .case-team-list>div,[dir="rtl"] .case-results-layout,[dir="rtl"] .case-results li,[dir="rtl"] .case-gallery-grid,[dir="rtl"] .case-related-grid{direction:rtl;}
[dir="rtl"] .case-shop-drawing-grid{direction:rtl;}
[dir="rtl"] .project-case-shade{background:linear-gradient(270deg,rgba(3,17,26,.94) 0%,rgba(5,24,35,.82) 41%,rgba(5,23,34,.35) 72%,rgba(3,17,26,.13) 100%),linear-gradient(0deg,rgba(3,17,26,.66),transparent 58%);}

/* ---------- About / original company evidence ---------- */
.about-page #company,.about-page #engineering,.about-page #manufacturing,.about-page #testing,.about-page #brands,.about-page #global-delivery{scroll-margin-top:118px;}
.about-hero{min-height:620px;}
.about-hero .hero-photo{object-position:center 58%;filter:saturate(.86) contrast(1.03) brightness(1.04);}
.about-hero .hero-ph{background:linear-gradient(90deg,rgba(4,18,27,.86) 0%,rgba(7,29,41,.7) 43%,rgba(6,24,34,.23) 72%,rgba(4,18,27,.07) 100%),linear-gradient(0deg,rgba(4,18,27,.28),transparent 57%);}
[dir="rtl"] .about-hero .hero-ph{background:linear-gradient(270deg,rgba(4,18,27,.86) 0%,rgba(7,29,41,.7) 43%,rgba(6,24,34,.23) 72%,rgba(4,18,27,.07) 100%),linear-gradient(0deg,rgba(4,18,27,.28),transparent 57%);}
.about-company-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(48px,7vw,92px);align-items:center;}
.about-company-copy>p:not(.section-sub){max-width:720px;margin-top:16px;color:var(--ink-2);font-size:14.5px;line-height:1.82;}
.about-company-gallery{display:grid;gap:14px;align-content:center;min-width:0;}
.about-team-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--mist);box-shadow:0 24px 60px rgba(14,43,53,.12);}
.about-partner-photo{position:relative;aspect-ratio:1296/564;overflow:hidden;background:var(--mist);box-shadow:0 16px 42px rgba(14,43,53,.1);}
.about-team-photo::after,.factory-proof-grid figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 70%,rgba(4,20,29,.55));pointer-events:none;}
.about-team-photo img,.about-partner-photo img,.factory-proof-grid img{width:100%;height:100%;object-fit:cover;}
.about-team-photo figcaption,.factory-proof-grid figcaption{position:absolute;z-index:2;inset-inline-start:17px;bottom:14px;color:rgba(255,255,255,.92);font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;}
.company-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:30px;border-top:1px solid var(--line);border-inline-start:1px solid var(--line);}
.company-fact-grid>div{min-height:112px;padding:19px 20px;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);}
.company-fact-grid span,.global-scope-facts span{display:block;margin-bottom:8px;color:var(--gold-text);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.company-fact-grid strong{display:block;color:var(--navy);font-family:var(--serif);font-size:17px;line-height:1.35;font-weight:600;}
.manufacturing-intro{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);gap:clamp(45px,7vw,94px);align-items:end;}
.manufacturing-intro>div:last-child p{color:var(--ink-2);font-size:14.5px;line-height:1.82;}
.manufacturing-intro>div:last-child p+p{margin-top:14px;}
.factory-proof-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:220px;gap:12px;margin-top:44px;}
.factory-proof-grid figure{position:relative;grid-column:span 5;overflow:hidden;background:var(--mist);}
.factory-proof-grid .factory-proof-main{grid-column:span 7;grid-row:span 2;}
.factory-proof-grid figure:nth-child(4),.factory-proof-grid figure:nth-child(5),.factory-proof-grid figure:nth-child(6){grid-column:span 4;}
.factory-proof-grid img{filter:saturate(.9) contrast(1.02);transition:transform .55s ease,filter .35s ease;}
.factory-proof-grid figure:hover img{transform:scale(1.018);filter:saturate(.98) contrast(1.03);}
.brand-ecosystem{background:var(--navy-deep);color:#fff;}
.brand-ecosystem-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.7fr);gap:clamp(45px,7vw,94px);align-items:end;}
.brand-ecosystem .section-title{color:#fff;}
.brand-ecosystem-head>p{color:rgba(255,255,255,.68);font-size:14.5px;line-height:1.82;}
.brand-logo-panel{margin-top:43px;border:1px solid rgba(255,255,255,.17);}
.brand-logo-panel-head{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 18px;border-bottom:1px solid rgba(255,255,255,.17);}
.brand-logo-panel-head>span{color:#d9c48a;font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;}
.brand-logo-panel-head>p{color:rgba(255,255,255,.57);font-size:10.5px;line-height:1.55;text-align:end;}
.brand-logo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.17);direction:ltr;}
.brand-logo-tile{display:flex;align-items:center;justify-content:center;min-width:0;min-height:88px;padding:18px;background:#f5f3ee;}
.brand-logo-tile img{display:block;width:auto;height:auto;max-width:148px;max-height:36px;object-fit:contain;}
.brand-logo-tile img.brand-logo-tall{max-height:48px;}
.brand-logo-tile.brand-logo-dark{background:#143747;}
.brand-wordmark{display:flex;align-items:flex-end;justify-content:center;line-height:1;white-space:nowrap;}
.guardian-wordmark{gap:7px;color:#173b48;}
.guardian-wordmark strong{font-size:17px;letter-spacing:.11em;}
.guardian-wordmark small{padding-bottom:1px;color:#718289;font-size:7.5px;font-weight:700;letter-spacing:.12em;}
.dowsil-wordmark strong{color:#ca2737;font-size:21px;letter-spacing:-.025em;}
.dowsil-wordmark sup{font-size:7px;vertical-align:top;}
.brand-logo-panel+.brand-list{margin-top:31px;}
.brand-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:47px;border-top:1px solid rgba(255,255,255,.17);border-inline-start:1px solid rgba(255,255,255,.17);}
.brand-row{display:grid;grid-template-columns:43px 1fr;gap:16px;min-height:132px;padding:25px 24px;border-inline-end:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17);}
.brand-row>span{color:#d9c48a;font-family:var(--serif);font-size:22px;line-height:1;}
.brand-row h3{color:#fff;font-size:20px;line-height:1.25;}
.brand-row p{margin-top:10px;color:rgba(255,255,255,.64);font-size:12.5px;line-height:1.65;}
.brand-note{margin-top:23px;padding:16px 19px;color:#dfd1a6;background:rgba(217,196,138,.07);border:1px solid rgba(217,196,138,.23);font-size:11.5px;line-height:1.65;}
.global-scope-layout{display:grid;grid-template-columns:minmax(350px,.84fr) minmax(0,1.16fr);gap:clamp(48px,7vw,92px);align-items:center;}
.global-scope-facts{margin:27px 0 19px;border-top:1px solid var(--line);}
.global-scope-facts article{padding:16px 0;border-bottom:1px solid var(--line);}
.global-scope-facts strong{display:block;color:var(--navy);font-family:var(--serif);font-size:17px;line-height:1.4;font-weight:600;}
.global-map{overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 24px 58px rgba(14,43,53,.1);}
.global-map img{display:block;width:100%;height:auto;}
.global-map figcaption{padding:13px 16px;color:var(--sub);background:#fff;border-top:1px solid var(--line);font-size:9px;line-height:1.55;letter-spacing:.1em;text-transform:uppercase;}
.direct-contact-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px;border-top:1px solid var(--line);border-inline-start:1px solid var(--line);}
.direct-contact-links a{padding:17px 18px;color:var(--navy);background:#fff;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);}
.direct-contact-links a:hover{color:var(--navy);background:var(--tint);}
.direct-contact-links span{display:block;margin-bottom:6px;color:var(--gold-text);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.direct-contact-links strong{font-family:var(--serif);font-size:17px;line-height:1.3;font-weight:600;}
.company-location-link{display:inline-flex;margin-top:24px;}
.office-location{padding:92px 0;background:var(--tint);scroll-margin-top:100px;}
.office-location-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.75fr);gap:clamp(45px,7vw,92px);align-items:center;}
.office-location-copy{max-width:700px;}
.office-location-copy address{display:grid;gap:5px;margin-top:28px;padding:22px 0 22px 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-inline-start:3px solid var(--gold-text);font-style:normal;}
.office-location-copy address strong{margin-bottom:5px;color:var(--navy);font-family:var(--serif);font-size:20px;line-height:1.35;font-weight:600;}
.office-location-copy address span{color:var(--ink-2);font-size:13px;line-height:1.55;}
.office-location-copy>p{max-width:640px;margin-top:18px;color:var(--sub);font-size:12.5px;line-height:1.7;}
.office-location-actions{display:flex;align-items:center;gap:22px;margin-top:25px;flex-wrap:wrap;}
.office-location-navigator{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:370px;padding:39px;overflow:hidden;color:#fff;background:var(--navy-deep);box-shadow:0 24px 58px rgba(14,43,53,.14);transition:transform .3s ease,box-shadow .3s ease;isolation:isolate;}
.office-location-navigator::before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(rgba(217,196,138,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(217,196,138,.09) 1px,transparent 1px),radial-gradient(circle at 72% 31%,rgba(217,196,138,.2),transparent 27%);background-size:44px 44px,44px 44px,100% 100%;}
.office-location-navigator::after{content:"";position:absolute;z-index:-1;inset-inline-end:23%;top:27%;width:18px;height:18px;border:5px solid #d9c48a;border-radius:50%;box-shadow:0 0 0 11px rgba(217,196,138,.13),0 0 36px rgba(217,196,138,.35);}
.office-location-navigator:hover{color:#fff;transform:translateY(-3px);box-shadow:0 30px 68px rgba(14,43,53,.2);}
.office-location-navigator>span{margin-bottom:13px;color:#d9c48a;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.office-location-navigator>strong{color:#fff;font-family:var(--serif);font-size:clamp(34px,4vw,48px);line-height:1.02;font-weight:600;}
.office-location-navigator>small{margin-top:17px;color:rgba(255,255,255,.62);font-size:10px;letter-spacing:.1em;text-transform:uppercase;}
.office-location-navigator>b{position:absolute;inset-inline-end:27px;bottom:25px;color:#d9c48a;font-size:25px;font-weight:400;}

@media (max-width:960px){
  .about-hero{min-height:590px;}
  .about-company-layout,.manufacturing-intro,.brand-ecosystem-head,.global-scope-layout{grid-template-columns:1fr;}
  .about-company-gallery{max-width:720px;}
  .factory-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;}
  .factory-proof-grid figure,.factory-proof-grid .factory-proof-main,.factory-proof-grid figure:nth-child(4),.factory-proof-grid figure:nth-child(5),.factory-proof-grid figure:nth-child(6){grid-column:auto;grid-row:auto;aspect-ratio:4/3;}
  .factory-proof-grid .factory-proof-main{grid-column:1/-1;aspect-ratio:16/9;}
  .brand-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .global-map{max-width:820px;}
  .office-location-layout{grid-template-columns:1fr;}
  .office-location-navigator{max-width:720px;min-height:320px;}
}

@media (max-width:640px){
  .about-hero{min-height:650px;}
  .about-hero .hero-photo{object-position:61% center;}
  .about-hero .hero-ph{background:linear-gradient(90deg,rgba(4,18,27,.9),rgba(7,29,41,.62)),linear-gradient(0deg,rgba(4,18,27,.44),transparent 58%);}
  .company-fact-grid,.brand-list,.factory-proof-grid{grid-template-columns:1fr;}
  .factory-proof-grid .factory-proof-main{grid-column:auto;aspect-ratio:4/3;}
  .company-fact-grid>div{min-height:0;}
  .brand-logo-panel-head{align-items:flex-start;flex-direction:column;gap:7px;}
  .brand-logo-panel-head>p{text-align:start;}
  .brand-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .brand-logo-tile{min-height:80px;padding:15px 10px;}
  .brand-logo-tile img{max-width:100px;max-height:31px;}
  .brand-logo-tile img.brand-logo-tall{max-height:42px;}
  .brand-row{min-height:0;padding:22px 20px;}
  .global-map figcaption{font-size:8px;}
  .direct-contact-links{grid-template-columns:1fr;}
  .office-location{padding:68px 0;}
  .office-location-copy address{padding-inline-start:17px;}
  .office-location-navigator{min-height:285px;padding:28px;}
}

@media (max-width:420px){
  .brand-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

[dir="rtl"] .about-company-layout,[dir="rtl"] .company-fact-grid,[dir="rtl"] .manufacturing-intro,[dir="rtl"] .factory-proof-grid,[dir="rtl"] .brand-ecosystem-head,[dir="rtl"] .brand-logo-panel-head,[dir="rtl"] .brand-list,[dir="rtl"] .brand-row,[dir="rtl"] .global-scope-layout,[dir="rtl"] .office-location-layout,[dir="rtl"] .office-location-actions{direction:rtl;}
[dir="rtl"] .brand-logo-grid{direction:ltr;}

/* ---------- Arabic / RTL-ready layout ---------- */
[dir="rtl"] body{font-family:var(--arabic);text-align:right;}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] h4,[dir="rtl"] h5,[dir="rtl"] .display,[dir="rtl"] .home-title{font-family:var(--arabic-heading);letter-spacing:0;line-height:1.35;}
[dir="rtl"] .brand,[dir="rtl"] footer .wordmark{direction:ltr;}
[dir="rtl"] .eyebrow,[dir="rtl"] .card-kicker,[dir="rtl"] .mini-label{letter-spacing:.08em;}
[dir="rtl"] .nav{direction:rtl;}
[dir="rtl"] .submenu{left:auto;right:0;text-align:right;}
[dir="rtl"] .submenu.systems-menu{left:50%;right:auto;transform:translateX(-50%);}
[dir="rtl"] .systems-menu-grid,[dir="rtl"] .systems-menu-actions{direction:rtl;}
[dir="rtl"] .systems-menu-actions .systems-compare{margin-left:0;margin-right:auto;}
[dir="rtl"] .systems-menu-actions .systems-compare span{margin-left:0;margin-right:7px;transform:scaleX(-1);}
[dir="rtl"] .systems-menu-actions .systems-compare:hover span{transform:scaleX(-1) translateX(4px);}
[dir="rtl"] .submenu .sub-cta{padding-left:20px!important;padding-right:20px!important;}
[dir="rtl"] .home-hero-image,[dir="rtl"] .hero-photo{transform:none;}
[dir="rtl"] .home-hero-shade{background:linear-gradient(270deg,rgba(3,15,25,.86) 0%,rgba(5,22,34,.7) 34%,rgba(7,27,42,.22) 63%,rgba(5,19,30,.08) 100%),linear-gradient(0deg,rgba(5,18,29,.3),transparent 52%);}
[dir="rtl"] .text-link>span[aria-hidden="true"],[dir="rtl"] .entry-link>span[aria-hidden="true"]{display:inline-block;transform:scaleX(-1);}
[dir="rtl"] .proof-item{border-right:none;border-left:1px solid rgba(21,59,75,.12);}
[dir="rtl"] .proof-item:first-child{border-right:1px solid rgba(21,59,75,.12);}
[dir="rtl"] .intro-visual figcaption,[dir="rtl"] .featured-project-image>span,[dir="rtl"] .insights-visual figcaption{left:auto;right:0;}
[dir="rtl"] .flow-step{border-right:none;border-left:1px solid var(--line);padding-right:26px;padding-left:26px;}
[dir="rtl"] .flow-step:first-child{padding-right:0;}
[dir="rtl"] .flow-step:last-child{border-left:none;padding-left:0;}
[dir="rtl"] .project-list-item,[dir="rtl"] .system-row,[dir="rtl"] .project-facts,[dir="rtl"] .fit-cards,[dir="rtl"] .insight-list{direction:rtl;}
[dir="rtl"] .standards-panel .standards-more{margin-left:0;margin-right:auto;padding-left:0;padding-right:10px;}
[dir="rtl"] .fit-cards{border-left:none;border-right:1px solid rgba(21,59,75,.15);}
[dir="rtl"] .fit-card{border-right:none;border-left:1px solid rgba(21,59,75,.15);}
[dir="rtl"] .fit-card-media{border-right:none;border-left:1px solid rgba(21,59,75,.14);}
[dir="rtl"] .insight-item{border-right:none;border-left:1px solid rgba(19,28,40,.18);padding-right:0;padding-left:32px;}
[dir="rtl"] .insight-item:not(:first-child){padding-left:32px;padding-right:32px;}
[dir="rtl"] .insight-item:last-child{border-left:none;padding-left:0;}
[dir="rtl"] .home-cta::before{background:linear-gradient(270deg,rgba(15,50,63,.96) 0%,rgba(21,59,75,.84) 52%,rgba(21,59,75,.34) 100%),url("home-delivery.webp") center 55%/cover no-repeat;}
[dir="rtl"] .article-toc{border-left:none;border-right:2px solid var(--line);padding-left:0;padding-right:18px;}
[dir="rtl"] .form-grid,[dir="rtl"] .radio-row,[dir="rtl"] .anchor-nav .container,[dir="rtl"] .footer-grid,[dir="rtl"] .footer-bottom{direction:rtl;}
[dir="rtl"] .hero-crumb{direction:rtl;}
[dir="rtl"] .page-breadcrumb{direction:rtl;}
[dir="rtl"] .product-system-grid,[dir="rtl"] .product-system-facts,[dir="rtl"] .system-advisor{direction:rtl;}
[dir="rtl"] .compare-cost{align-items:flex-end;}
[dir="rtl"] .product-family-head,[dir="rtl"] .system-story-intro,[dir="rtl"] .system-option-grid,[dir="rtl"] .system-performance-grid,[dir="rtl"] .system-pair-grid{direction:rtl;}
[dir="rtl"] .system-story-aside ul{padding-left:0;padding-right:18px;}
[dir="rtl"] .product-system-number{left:auto;right:22px;}
[dir="rtl"] .product-system-facts>div{padding-right:0;padding-left:18px;}
[dir="rtl"] .product-system-facts>div+div{padding-left:0;padding-right:18px;border-left:none;border-right:1px solid var(--line);}
[dir="rtl"] .product-system-link b{transform:scaleX(-1);}
[dir="rtl"] .product-system-card:hover .product-system-link b{transform:scaleX(-1) translate(3px,-3px);}
[dir="rtl"] .system-advisor{border-left:none;border-right:4px solid var(--gold-text);}
[dir="rtl"] .gcc-home-banner{direction:rtl;border-left:1px solid rgba(21,59,75,.13);border-right:3px solid var(--gold-text);}
[dir="rtl"] .gcc-banner-link b{transform:scaleX(-1);}
[dir="rtl"] .gcc-home-banner:hover .gcc-banner-link b{transform:scaleX(-1) translateX(4px);}
[dir="rtl"] .gcc-story-head,[dir="rtl"] .gcc-story-list{direction:rtl;}
[dir="rtl"] .gcc-story-row{padding-right:0;padding-left:20px;border-left:none;border-right:3px solid transparent;}
[dir="rtl"] .gcc-story-row:target{border-right-color:var(--gold-text);}
[dir="rtl"] .gcc-story-row em{text-align:left;}
[dir="rtl"] input,[dir="rtl"] select,[dir="rtl"] textarea{text-align:right;}
[dir="rtl"] input[type="email"],[dir="rtl"] input[type="tel"],[dir="rtl"] input[type="url"]{direction:ltr;text-align:left;}

/* ---------- Arabic production edition ---------- */
.ar-site{font-family:var(--arabic);line-height:1.95;}
.ar-site h1,.ar-site h2,.ar-site h3,.ar-site h4,.ar-site h5{font-family:var(--arabic-heading);font-weight:600;}
.ar-site .nav{gap:19px;}
.ar-site .nav a{letter-spacing:0;}
.ar-site .nav-top{font-size:13px;}
.ar-site .brand .tag{font-family:var(--sans);}
.ar-site .hero .hero-inner{max-width:780px;}
.ar-site .hero h1{font-size:clamp(38px,4.5vw,64px);line-height:1.38;}
.ar-site .hero .lead{max-width:720px;line-height:1.95;}
.ar-site .eyebrow{letter-spacing:.06em;text-transform:none;}
.ar-site .section-title{line-height:1.5;}
.ar-site .ar-split{gap:54px;align-items:center;}
.ar-site .ar-split p{color:var(--ink-2);}
.ar-site .card h3{line-height:1.55;}
.ar-site .card p{line-height:1.9;}
.ar-site .ar-product-catalog{scroll-margin-top:92px;}
.ar-site .product-catalog-head{direction:rtl;}
.ar-site .product-catalog-head h2{font-family:var(--arabic-heading);font-size:clamp(36px,4vw,54px);line-height:1.45;}
.ar-site .product-catalog-head>p{max-width:650px;font-size:16px;line-height:1.95;}
.ar-site .product-system-kicker,.ar-site .product-system-facts dt,.ar-site .product-system-link{font-family:var(--arabic);text-transform:none;letter-spacing:.035em;}
.ar-site .product-system-card h3{font-family:var(--arabic-heading);font-size:29px;line-height:1.5;margin-block:8px 10px;}
.ar-site .product-system-truth{font-size:15.5px;line-height:1.95;}
.ar-site .product-system-facts dt{font-size:11px;line-height:1.65;}
.ar-site .product-system-facts dd{font-size:13.5px;line-height:1.85;}
.ar-site .product-system-link{font-size:12.5px;}
.ar-site .ar-discipline-flow .flow-grid{direction:rtl;}
.ar-site .ar-discipline-flow .flow-step h3{font-family:var(--arabic-heading);font-size:25px;line-height:1.55;}
.ar-site .ar-discipline-flow .flow-step p{font-size:15px;line-height:1.9;}
.ar-site .ar-discipline-flow .flow-link{font-family:var(--arabic);font-size:12.5px;}
.ar-site .ar-discipline-flow .flow-link span{display:inline-block;transition:transform .2s ease;}
.ar-site .ar-discipline-flow .flow-step:hover .flow-link span{transform:translateX(-4px);}
.ar-site .proof-item span{line-height:1.75;}
.ar-site .proof-item span b{font-family:var(--arabic-heading);font-weight:600;color:var(--ink);}
.ar-site .ar-media-card .project-card-media{aspect-ratio:16/10;overflow:hidden;}
.ar-site .ar-media-card .project-card-media img{width:100%;height:100%;object-fit:cover;}
.ar-site .ar-table-scroll{position:relative;overflow-x:auto;margin-top:24px;box-shadow:inset -18px 0 18px -22px rgba(21,59,75,.7);}
.ar-site .ar-table-scroll .spec{min-width:780px;}
.ar-site .spec caption{caption-side:top;padding:0 0 12px;text-align:right;color:var(--sub);font-size:12px;}
.ar-site .table-swipe-hint{display:none;margin-top:9px;color:var(--sub);font-size:11px;}
.ar-site .ar-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;list-style:none;padding:0;border-top:1px solid var(--line);}
.ar-site .ar-checklist li{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);}
.ar-site .ar-checklist li:nth-child(odd){padding-left:26px;border-left:1px solid var(--line);}
.ar-site .ar-checklist li:nth-child(even){padding-right:26px;}
.ar-site .ar-checklist span{color:var(--gold-text);font-size:11px;font-weight:600;}
.ar-site .ar-checklist p{color:var(--ink-2);}
.ar-site .ar-article-meta{margin-top:22px;color:rgba(255,255,255,.74);}
.ar-site .hero-ghost-button{color:#fff!important;border-color:rgba(255,255,255,.7);}
.ar-site .footer-grid,.ar-site .footer-bottom{direction:rtl;}
.ar-site .footer-domain{direction:ltr;text-align:right;}
.ar-site .whatsapp-float{right:auto;left:22px;padding:7px 7px 7px 15px;}
.ar-site [dir="ltr"]{unicode-bidi:isolate;}

@media (max-width:1180px){
  .ar-site .nav{gap:14px;}
  .ar-site .nav-top{font-size:12px;}
  .ar-site .language-switcher a,.ar-site .language-switcher span{min-width:26px;padding:0 6px;}
}

@media (max-width:680px){
  input,select,textarea{font-size:16px!important;}
  [dir="rtl"] .fit-card-media{border-left:1px solid rgba(21,59,75,.14);}
  .product-system-grid{grid-template-columns:1fr;}
  .product-system-body{padding:25px 21px 23px;}
  .product-system-card h3{font-size:27px;}
  .product-system-facts{grid-template-columns:1fr;}
  .product-system-facts>div{padding:15px 0;}
  .product-system-facts>div+div{padding-left:0;border-left:none;border-top:1px solid var(--line);}
  .system-advisor{grid-template-columns:1fr;padding:26px 22px;gap:17px;border-left-width:3px;}
  .system-advisor .text-link{grid-column:auto;}
  .product-system-number{left:16px;top:16px;width:42px;height:42px;}
  [dir="rtl"] .product-system-number{left:auto;right:16px;}
  [dir="rtl"] .product-system-facts>div,[dir="rtl"] .product-system-facts>div+div{padding:15px 0;border-right:none;}
  [dir="rtl"] .system-advisor{border-right-width:3px;}
  .gcc-system-story{margin-top:62px;padding-top:56px;}
  .gcc-story-row{grid-template-columns:36px minmax(0,1fr);gap:13px;padding:23px 8px 23px 0;}
  .gcc-story-row em{grid-column:2;text-align:left;}
  .product-family+.product-family{margin-top:58px;padding-top:52px;}
  .system-option-grid,.system-performance-grid,.system-pair-grid{grid-template-columns:1fr;}
  .system-story-aside{padding:24px 22px;}
  [dir="rtl"] .gcc-story-row{padding:23px 0 23px 8px;}
  [dir="rtl"] .gcc-story-row em{text-align:right;}
  .ar-site .table-swipe-hint{display:block;}
  .ar-site .ar-checklist{grid-template-columns:1fr;}
  .ar-site .ar-checklist li:nth-child(odd),.ar-site .ar-checklist li:nth-child(even){padding:18px 0;border-left:0;}
  .ar-site .project-gallery{grid-template-columns:1fr;}
  .ar-site .product-catalog-head h2{font-size:34px;}
  .ar-site .product-system-card h3{font-size:26px;}
}

@media (max-width:420px){
  [dir="rtl"] .fit-card-media{border-left:none;}
}
[dir="rtl"] .media-frame figcaption,[dir="rtl"] .project-card-media span{left:auto;right:14px;}

@media (max-width:960px){
  [dir="rtl"] .nav{align-items:stretch;}
  [dir="rtl"] .submenu.systems-menu{left:auto;right:auto;transform:none;}
  [dir="rtl"] .systems-menu-actions .systems-compare{margin-right:0;}
  [dir="rtl"] .flow-step{border-left:1px solid var(--line);padding:28px!important;}
  [dir="rtl"] .flow-step:nth-child(2),[dir="rtl"] .flow-step:last-child{border-left:none;}
  [dir="rtl"] .article-toc{border-right:0;padding-right:0;}
  .language-switcher{align-self:flex-start;margin:8px 20px 2px;}
  .ar-site .nav{gap:0;}
  .ar-site .nav-top{font-size:15px;}
}

@media (max-width:680px){
  [dir="rtl"] .flow-step,[dir="rtl"] .insight-item,[dir="rtl"] .insight-item:not(:first-child){border-left:none!important;padding-left:0!important;padding-right:0!important;}
  [dir="rtl"] .standards-panel .standards-more{margin-right:0;padding-right:0;}
  .project-gallery{grid-template-columns:1fr;}
  .project-gallery-side{grid-template-columns:1fr 1fr;}
  .project-gallery-side .media-frame{min-height:150px;}
  .media-stack{grid-template-columns:1fr;}
  .media-stack .media-frame{min-height:280px;}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important;}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;}
}

/* ---------- 404 recovery page ---------- */
.error-page{min-height:100vh;background:linear-gradient(135deg,var(--pearl),var(--mist));}
.error-page .site-header{position:relative;}
.error-hero{padding:92px 0 84px;}
.error-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:80px;align-items:start;}
.error-code{font-family:var(--serif);font-size:clamp(86px,13vw,164px);font-weight:600;line-height:.72;color:rgba(36,87,106,.13);}
.error-copy h1{max-width:700px;margin-top:26px;}
.error-copy .lead{margin-top:22px;}
.error-search{margin-top:34px;display:flex;max-width:650px;border:1px solid #ccd6d9;background:#fff;box-shadow:0 12px 30px rgba(21,59,75,.07);}
.error-search label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.error-search input{min-width:0;flex:1;padding:15px 17px;border:0;background:transparent;color:var(--ink);font:inherit;outline:0;}
.error-search input:focus{box-shadow:inset 0 0 0 2px rgba(36,87,106,.25);}
.error-search button{border-radius:0;}
.error-results{display:grid;gap:8px;margin-top:15px;max-width:650px;}
.error-results a{display:flex;justify-content:space-between;gap:18px;padding:12px 15px;border:1px solid var(--line);background:rgba(255,255,255,.72);font-size:13px;}
.error-results a span{color:var(--sub);font-size:11px;}
.error-links{padding:30px;background:var(--navy-deep);color:#fff;}
.error-links .eyebrow{color:#d9c48a;}
.error-links h2{color:#fff;font-size:30px;}
.error-link-grid{display:grid;gap:0;margin-top:22px;border-top:1px solid rgba(255,255,255,.17);}
.error-link-grid a{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.17);color:#fff;font-size:13px;}
.error-link-grid a:hover{color:#e8d49e;}
.error-contact{margin-top:27px;color:rgba(255,255,255,.7);font-size:12px;}
.error-contact a{color:#fff;text-decoration:underline;text-underline-offset:3px;}
@media (max-width:820px){.error-hero{padding:68px 0}.error-layout{grid-template-columns:1fr;gap:42px}.error-code{font-size:104px}.error-search{max-width:none}.error-results{max-width:none;}}
@media (max-width:520px){.error-search{display:grid}.error-search .btn{width:100%}.error-links{padding:25px 22px;}}

/* ---------- global WhatsApp contact ---------- */
.whatsapp-float{position:fixed;z-index:70;right:22px;bottom:22px;display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:7px 15px 7px 7px;color:#fff!important;background:#176b55;border:1px solid rgba(255,255,255,.34);border-radius:999px;box-shadow:0 10px 28px rgba(9,41,34,.25);font-size:12px;line-height:1;transition:transform .2s ease,box-shadow .2s ease;}
.whatsapp-float span{display:grid;place-items:center;width:34px;height:34px;color:#176b55;background:#fff;border-radius:50%;font-size:10px;font-weight:800;letter-spacing:.04em;}
.whatsapp-float span img{width:34px;height:34px;border-radius:50%;}
.whatsapp-float strong{font-weight:600;letter-spacing:.025em;}
.whatsapp-float:hover,.whatsapp-float:focus-visible{transform:translateY(-2px);box-shadow:0 14px 32px rgba(9,41,34,.32);}
[dir="rtl"] .whatsapp-float{right:auto;left:22px;padding:7px 7px 7px 15px;}
@media (max-width:640px){
  .whatsapp-float{right:14px;bottom:14px;padding:7px;}
  .whatsapp-float strong{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
  [dir="rtl"] .whatsapp-float{left:14px;right:auto;padding:7px;}
}

/* ---------- Arabic edition: editorial depth, RTL art direction ---------- */
.ar-site{font-size:16px;line-height:1.9;color:var(--ink);}
.ar-site p,.ar-site li,.ar-site td,.ar-site summary{font-kerning:normal;}
.ar-site .narrow>p,.ar-site .ar-long-read p{font-size:16.5px;line-height:2;}
.ar-site .section-title{max-width:820px;}
.ar-site .hero.ar-hero{min-height:590px;isolation:isolate;}
.ar-site .hero.ar-hero .hero-inner{max-width:min(680px,48vw);padding-block:104px 88px;}
.ar-site .hero.ar-hero h1{font-size:clamp(40px,4.25vw,62px);line-height:1.34;text-wrap:balance;}
.ar-site .hero.ar-hero .lead{max-width:660px;font-size:17px;line-height:1.9;text-wrap:pretty;}
.ar-site .hero.ar-hero .hero-ph{background:linear-gradient(270deg,rgba(5,24,37,.92) 0%,rgba(7,30,44,.82) 34%,rgba(8,35,47,.46) 56%,rgba(8,32,43,.08) 78%),linear-gradient(0deg,rgba(3,18,28,.28),transparent 55%);}
.ar-site .hero.ar-hero .hero-photo{filter:saturate(.94) contrast(1.02) brightness(1.04);}
.ar-site .ar-hero--index .hero-photo{object-position:center center;filter:saturate(.92) contrast(1.02) brightness(1.07);}
.ar-site .ar-hero--index .hero-ph{background:linear-gradient(270deg,rgba(5,25,39,.9) 0%,rgba(7,32,46,.79) 35%,rgba(10,42,55,.35) 58%,rgba(10,38,49,.02) 76%),linear-gradient(0deg,rgba(4,20,29,.18),transparent 55%);}
.ar-site .ar-hero--services .hero-photo{object-position:45% center;}
.ar-site .ar-hero--approach .hero-photo{object-position:37% center;}
.ar-site .ar-hero--contact .hero-photo{object-position:38% center;}
.ar-site .ar-hero--products .hero-photo{object-position:43% center;}
.ar-site .ar-hero--markets .hero-photo{object-position:42% center;}
.ar-site .ar-hero--products-mashrabia-facade .hero-photo{object-position:35% center;}
.ar-site .ar-hero--products-glass-rooflights-skylights .hero-photo{object-position:32% center;}
.ar-site .ar-hero--certification-compliance .hero-photo{object-position:34% center;filter:saturate(.84) contrast(1.04) brightness(.98);}
.ar-site .ar-hero--resources .hero-photo{object-position:35% center;}
.ar-site .ar-hero--products-luminous-facade .hero-photo,.ar-site .ar-hero--faq .hero-photo{filter:saturate(.94) contrast(1.02) brightness(1.16);}
.ar-site .ar-hero--products-luminous-facade .hero-ph,.ar-site .ar-hero--faq .hero-ph{background:linear-gradient(270deg,rgba(5,24,37,.78),rgba(7,30,44,.63) 38%,rgba(8,35,47,.2) 67%,transparent 83%);}
.ar-callout-block{padding-block:48px;background:#f6f1e7;}
.ar-callout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.42fr);gap:44px;align-items:center;padding:34px 38px;border-inline-start:4px solid var(--brass);background:#fff;box-shadow:0 18px 38px rgba(10,42,65,.07);}
.ar-callout h2{margin-top:7px;font-size:clamp(26px,3vw,38px);line-height:1.45;}
.ar-callout p{max-width:820px;margin-top:10px;color:var(--ink-2);}
.ar-callout-links{display:grid;gap:12px;justify-items:start;}
.ar-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);}
.ar-related-link{position:relative;display:flex;flex-direction:column;min-height:220px;padding:27px 25px;border-bottom:1px solid var(--line);border-inline-start:1px solid var(--line);color:var(--ink)!important;}
.ar-related-link:first-child{border-inline-start:0;}
.ar-related-link span{color:var(--gold-text);font-size:11px;font-weight:600;}
.ar-related-link strong{margin-top:9px;font-family:var(--arabic-heading);font-size:21px;line-height:1.55;}
.ar-related-link p{margin-top:10px;color:var(--ink-2);font-size:13px;}
.ar-related-link b{margin-top:auto;color:var(--gold-text);font-size:20px;}
.ar-contact-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);align-items:start;}
.ar-site .form-wrap{text-align:right;}
.ar-site .form-wrap label,.ar-site .form-wrap legend{text-align:right;}
.ar-site .form-wrap input,.ar-site .form-wrap select,.ar-site .form-wrap textarea{text-align:right;}
.ar-site .form-wrap [dir="ltr"],.ar-site .form-wrap input[type="email"]{text-align:left;}
.ar-contact-next{position:sticky;top:110px;padding:34px 30px;background:var(--tint);border-top:3px solid var(--brass);}
.ar-contact-next h3{margin:8px 0 22px;font-size:28px;line-height:1.5;}
.ar-contact-next .step{grid-template-columns:64px 1fr;padding:20px 0;border-bottom:1px solid var(--line);}
.ar-contact-next .step p{margin-top:6px;color:var(--ink-2);font-size:13px;}
.ar-site .project-gallery{align-items:stretch;}
.ar-site .project-gallery .media-frame{min-height:300px;}
.ar-site .article-related-head>p{line-height:1.9;}
.ar-site .article-system-copy .card-kicker{font-family:var(--arabic);letter-spacing:.05em;text-transform:none;}
.ar-site .article-system-copy h3{font-family:var(--arabic-heading);line-height:1.55;}
.ar-site .article-system-copy p{line-height:1.9;}
.ar-site .article-system-link{font-family:var(--arabic);letter-spacing:0;text-transform:none;}
.ar-site .project-case-hero-inner .display{max-width:900px;font-family:var(--arabic-heading);font-size:clamp(42px,5.6vw,72px);line-height:1.28;}
.ar-site .project-case-hero-inner .lead{font-size:17px;line-height:1.95;}
.ar-site .project-case-tags,.ar-site .project-case-media-label,.ar-site .case-facts-grid span,.ar-site .case-programme-grid span,.ar-site .case-team-list span,.ar-site .case-system-panel dt,.ar-site .case-results .eyebrow,.ar-site .case-result-quote cite,.ar-site .case-gallery-image span{font-family:var(--arabic);letter-spacing:.035em;text-transform:none;}
.ar-site .case-facts-grid strong,.ar-site .case-story-number,.ar-site .case-story-chapter h3,.ar-site .case-system-panel h2,.ar-site .case-team-panel h2,.ar-site .case-results h2,.ar-site .case-result-quote p{font-family:var(--arabic-heading);}
.ar-site .case-story-chapter p,.ar-site .case-results li p{font-size:16px;line-height:1.95;}
.ar-site .case-results li p strong{display:block;margin-bottom:5px;color:#fff;font-family:var(--arabic-heading);font-size:17px;}
.ar-site .case-boundary-intro{margin-top:15px;color:var(--sub);font-size:15px;line-height:1.9;}
.ar-site .case-team-list strong{font-size:14px;line-height:1.85;}
.ar-site .case-system-panel>p{font-size:15px;line-height:1.9;}
[dir="rtl"] .article-system-link b{transform:scaleX(-1);}
[dir="rtl"] .article-system-card:hover .article-system-link b{transform:scaleX(-1) translateX(4px);}

@media (max-width:960px){
  .ar-site .hero.ar-hero{min-height:560px;}
  .ar-site .hero.ar-hero .hero-inner{max-width:70vw;padding-block:88px 72px;}
  .ar-site .hero.ar-hero .hero-photo{object-position:center center;}
  .ar-callout{grid-template-columns:1fr;gap:24px;}
  .ar-related-grid{grid-template-columns:1fr 1fr;}
  .ar-contact-grid{grid-template-columns:1fr;}
  .ar-contact-next{position:static;}
}
@media (max-width:680px){
  .ar-site .hero.ar-hero{min-height:610px;}
  .ar-site .hero.ar-hero .hero-inner{max-width:none;padding-block:76px 62px;}
  .ar-site .hero.ar-hero h1{font-size:clamp(31px,9vw,40px);line-height:1.42;}
  .ar-site .hero.ar-hero .lead{font-size:16px;line-height:1.85;}
  .ar-site .hero.ar-hero .hero-ph{background:linear-gradient(180deg,rgba(5,24,37,.66) 0%,rgba(5,24,37,.88) 48%,rgba(5,24,37,.94) 100%);}
  .ar-site .project-case-hero-inner .display{font-size:clamp(34px,10vw,44px);line-height:1.4;}
  .ar-site .project-case-hero-inner .lead{font-size:16px;}
  .ar-site .ar-hero--index .hero-photo{object-position:30% center;}
  .ar-site .ar-hero--services .hero-photo,.ar-site .ar-hero--approach .hero-photo,.ar-site .ar-hero--contact .hero-photo,.ar-site .ar-hero--resources .hero-photo{object-position:32% center;}
  .ar-callout-block{padding-block:32px;}
  .ar-callout{padding:27px 23px;}
  .ar-related-grid{grid-template-columns:1fr;}
  .ar-related-link{min-height:0;border-inline-start:0;}
  .ar-contact-next{padding:28px 23px;}
}

@media (max-width:680px){
  .article-related-head{align-items:flex-start;}
  .article-related-head>p{max-width:none;}
  .article-system-grid,.article-system-grid.single{grid-template-columns:1fr;}
  .article-system-copy{padding:22px 21px 23px;}
  .article-system-copy h3{font-size:23px;}
}

/* === WP marketing compatibility (do not remove) === */
.marketing-page .anchor-nav .container{
  overflow-x:auto;
  overflow-y:visible;
  align-items:stretch;
}
.marketing-page .anchor-nav a{
  display:inline-flex;
  align-items:center;
  line-height:1.35;
  padding:16px 0;
  box-sizing:border-box;
}
.marketing-page img{max-width:100%;height:auto;}
.marketing-page .entry-content,
.marketing-page.site-main{max-width:none;}
/* Gutenberg sometimes injects figure wrappers */
.marketing-page figure{margin:0;}
.marketing-page .wp-block-html{max-width:none;}

/* === Gutenberg editable marketing layouts === */
/*
 * Static CSS targets section.block; Gutenberg uses div.wp-block-group.block.
 * Also restore hero-ph overlay, media-frame fill, and tame WP block margins.
 */

/* Section rhythm + alternating grounds */
.marketing-page .block,
.marketing-page .wp-block-group.block {
  padding: 78px 0;
}
.marketing-page .block.tight,
.marketing-page .wp-block-group.block.tight {
  padding: 56px 0;
}
.marketing-page .bg-white { background: var(--card); }
.marketing-page .bg-tint { background: #f0f2f4; }

/* Kill default Gutenberg spacing that blows up marketing rhythm */
.marketing-page .wp-block-group {
  margin-block: 0;
}
.marketing-page .wp-block-group > * {
  margin-block-start: 0;
}
.marketing-page p.wp-block-paragraph,
.marketing-page .wp-block-heading,
.marketing-page .wp-block-list,
.marketing-page .wp-block-image,
.marketing-page .wp-block-columns,
.marketing-page .wp-block-buttons {
  margin-top: 0;
  margin-bottom: 0;
}
.marketing-page .wp-block-heading.section-title,
.marketing-page h2.section-title {
  margin-bottom: 14px;
}
.marketing-page .eyebrow,
.marketing-page p.eyebrow {
  margin-bottom: 14px;
}
.marketing-page .lead,
.marketing-page p.lead {
  margin-top: 18px;
}
.marketing-page .section-sub,
.marketing-page p.section-sub {
  margin-bottom: 8px;
}
.marketing-page .wp-block-list {
  padding-left: 1.2em;
  margin-top: 16px;
}
.marketing-page .wp-block-list li {
  margin-bottom: .4em;
}

/* Typography: WP headings must pick up marketing display/serif */
.marketing-page h1.display,
.marketing-page .wp-block-heading.display {
  font-family: var(--serif);
  font-weight: 600;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.12;
  letter-spacing: .005em;
}
.marketing-page h2.section-title,
.marketing-page .wp-block-heading.section-title {
  font-family: var(--serif);
  font-weight: 600;
  font-size: clamp(26px, 3.4vw, 38px);
  line-height: 1.2;
}

/* Grids must survive is-layout-flow */
.marketing-page .about-company-layout,
.marketing-page .manufacturing-intro,
.marketing-page .factory-proof-grid,
.marketing-page .brand-ecosystem-head,
.marketing-page .brand-list,
.marketing-page .brand-logo-grid,
.marketing-page .company-fact-grid,
.marketing-page .global-scope-layout,
.marketing-page .direct-contact-links {
  display: grid !important;
}

/* ---- Hero: photo + dark wash (static .hero-ph) ---- */
.marketing-page .wp-block-group.hero,
.marketing-page .hero.sv-hero,
.marketing-page .hero.about-hero,
.marketing-page .hero.services-hero,
.marketing-page .hero.approach-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  isolation: isolate;
}
.marketing-page .about-hero { min-height: 620px; }
.marketing-page .hero .wp-block-image.hero-photo,
.marketing-page .hero figure.hero-photo {
  position: absolute !important;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  max-width: none;
}
.marketing-page .hero .wp-block-image.hero-photo img,
.marketing-page .hero figure.hero-photo img,
.marketing-page .hero img.hero-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  margin: 0;
}
.marketing-page .about-hero .hero-photo img,
.marketing-page .about-hero img.hero-photo {
  object-position: center 58%;
  filter: saturate(.86) contrast(1.03) brightness(1.04);
}
/* Recreate .hero-ph when Gutenberg omitted the empty overlay div */
.marketing-page .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(4,18,27,.86) 0%, rgba(7,29,41,.7) 43%, rgba(6,24,34,.23) 72%, rgba(4,18,27,.07) 100%),
    linear-gradient(0deg, rgba(4,18,27,.28), transparent 57%);
}
.marketing-page .services-hero::before {
  background:
    linear-gradient(90deg, rgba(5,20,30,.88) 0%, rgba(7,27,39,.74) 35%, rgba(8,33,45,.32) 62%, rgba(7,26,36,.08) 100%),
    linear-gradient(0deg, rgba(4,18,27,.22), transparent 55%);
}
.marketing-page .approach-hero::before {
  background:
    linear-gradient(90deg, rgba(4,18,27,.86) 0%, rgba(7,29,41,.7) 43%, rgba(6,24,34,.23) 72%, rgba(4,18,27,.07) 100%),
    linear-gradient(0deg, rgba(4,18,27,.28), transparent 57%);
}
.marketing-page .contact-hero { min-height: 520px; }
.marketing-page .contact-hero::before {
  background:
    linear-gradient(90deg, rgba(5,20,30,.88) 0%, rgba(7,27,39,.74) 35%, rgba(8,33,45,.32) 62%, rgba(7,26,36,.08) 100%),
    linear-gradient(0deg, rgba(4,18,27,.22), transparent 55%);
}
.marketing-page .contact-hero .hero-inner.page-hero-inner,
.marketing-page .contact-hero .hero-inner {
  padding: 90px 0 80px;
}

.marketing-page .hero .container {
  position: relative;
  z-index: 2;
}
.marketing-page .hero .hero-inner {
  position: relative;
  padding: 90px 0 80px;
  max-width: 720px;
}
.marketing-page .services-hero .hero-inner {
  max-width: 770px;
  padding: 104px 0 86px;
}
.marketing-page .hero .eyebrow,
.marketing-page .hero p.eyebrow,
.marketing-page .hero-eyebrow-gold {
  color: #d9c48a !important;
}
.marketing-page .hero h1,
.marketing-page .hero .wp-block-heading.display {
  color: #fff;
  text-shadow: 0 2px 22px rgba(2,15,23,.18);
}
.marketing-page .hero .lead,
.marketing-page .hero p.lead {
  color: rgba(255,255,255,.88);
  margin-top: 18px;
}
.marketing-page .hero .hero-crumb,
.marketing-page .hero nav.crumb {
  color: rgba(255,255,255,.62);
}

/* ---- Media frames: fill box, no grey gap under image ---- */
.marketing-page .media-frame,
.marketing-page figure.media-frame,
.marketing-page .wp-block-image.media-frame {
  position: relative;
  overflow: hidden;
  background: #dfe4e6;
  border-radius: 3px;
  min-height: 260px;
  margin: 0 !important;
}
.marketing-page .media-frame.tall,
.marketing-page figure.media-frame.tall,
.marketing-page .wp-block-image.media-frame.tall {
  min-height: 380px;
}
.marketing-page .media-frame img,
.marketing-page .wp-block-image.media-frame img {
  position: absolute !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;
  margin: 0;
}
.marketing-page .media-frame figcaption,
.marketing-page .wp-block-image.media-frame figcaption,
.marketing-page .media-frame .wp-element-caption {
  position: absolute !important;
  left: 14px;
  bottom: 14px;
  z-index: 2;
  max-width: calc(100% - 28px);
  margin: 0 !important;
  padding: 7px 10px;
  background: rgba(12,32,41,.82);
  color: rgba(255,255,255,.88);
  font-size: 9px;
  line-height: 1.45;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* Team / factory captions stay as overlays */
.marketing-page .about-team-photo,
.marketing-page .about-partner-photo {
  position: relative;
  overflow: hidden;
  margin: 0 !important;
}
.marketing-page .about-team-photo { aspect-ratio: 4/3; background: var(--mist); box-shadow: 0 24px 60px rgba(14,43,53,.12); }
.marketing-page .about-partner-photo { aspect-ratio: 1296/564; background: var(--mist); box-shadow: 0 16px 42px rgba(14,43,53,.1); }
.marketing-page .about-team-photo img,
.marketing-page .about-partner-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.marketing-page .about-team-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 70%, rgba(4,20,29,.55));
  pointer-events: none;
}
.marketing-page .about-team-photo figcaption,
.marketing-page .factory-proof-grid figcaption {
  position: absolute !important;
  z-index: 2;
  inset-inline-start: 17px;
  bottom: 14px;
  margin: 0 !important;
  color: rgba(255,255,255,.92);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
  background: transparent;
  padding: 0;
}

.marketing-page .factory-proof-grid > .wp-block-image,
.marketing-page .factory-proof-grid > figure {
  margin: 0 !important;
  position: relative;
  overflow: hidden;
  background: var(--mist);
  grid-column: span 5;
}
.marketing-page .factory-proof-grid .factory-proof-main {
  grid-column: span 7;
  grid-row: span 2;
}
.marketing-page .factory-proof-grid figure:nth-child(4),
.marketing-page .factory-proof-grid figure:nth-child(5),
.marketing-page .factory-proof-grid figure:nth-child(6),
.marketing-page .factory-proof-grid .wp-block-image:nth-child(4),
.marketing-page .factory-proof-grid .wp-block-image:nth-child(5),
.marketing-page .factory-proof-grid .wp-block-image:nth-child(6) {
  grid-column: span 4;
}
.marketing-page .about-company-gallery > .wp-block-image,
.marketing-page .about-company-gallery > figure { margin: 0 !important; }

/* brand-row Gutenberg markup */
.marketing-page .brand-row {
  display: grid !important;
  grid-template-columns: 43px 1fr;
  gap: 16px;
  align-content: start;
}
.marketing-page .brand-row > .brand-row-num,
.marketing-page .brand-row > p.brand-row-num {
  margin: 0;
  color: #d9c48a;
  font-family: var(--serif);
  font-size: 22px;
  line-height: 1;
}
.marketing-page .brand-row > .wp-block-heading,
.marketing-page .brand-row > h3 {
  grid-column: 2;
  margin: 0;
  color: #fff;
  font-size: 20px;
  line-height: 1.25;
}
.marketing-page .brand-row > p:not(.brand-row-num) {
  grid-column: 2;
  margin: 10px 0 0;
  color: rgba(255,255,255,.64);
  font-size: 12.5px;
  line-height: 1.65;
}

.marketing-page .global-map,
.marketing-page figure.global-map {
  margin: 0 !important;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 24px 58px rgba(14,43,53,.1);
}
.marketing-page .global-map img { display: block; width: 100%; height: auto; }

.marketing-page .cta-band .wp-block-button__link {
  background: #fff;
  color: var(--navy) !important;
}
.marketing-page .wp-block-columns.sv-two-col {
  gap: 50px;
  align-items: center;
}
.marketing-page .wp-block-buttons {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 24px;
}

@media (max-width: 900px) {
  .marketing-page .about-company-layout,
  .marketing-page .manufacturing-intro,
  .marketing-page .brand-ecosystem-head,
  .marketing-page .global-scope-layout,
  .marketing-page .factory-proof-grid {
    grid-template-columns: 1fr !important;
  }
  .marketing-page .factory-proof-grid .factory-proof-main,
  .marketing-page .factory-proof-grid figure,
  .marketing-page .factory-proof-grid .wp-block-image {
    grid-column: auto !important;
    grid-row: auto !important;
  }
}

.marketing-page .contact-main-grid,
.marketing-page .contact-grid {
  display: grid !important;
  grid-template-columns: 1.5fr 1fr;
  gap: 50px;
  align-items: start;
}
.marketing-page .office-location-layout { display: grid !important; }
@media (max-width: 900px) {
  .marketing-page .contact-main-grid,
  .marketing-page .contact-grid { grid-template-columns: 1fr !important; gap: 42px !important; }
}

/* === Services/Approach Gutenberg grid restore === */
.marketing-page .services-proof-grid,
.marketing-page .services-story-head,
.marketing-page .service-entry-grid,
.marketing-page .service-scope-chapter,
.marketing-page .approach-chapter,
.marketing-page .approach-story-head,
.marketing-page .support-levels,
.marketing-page .approach-region-grid,
.marketing-page .services-support-layout,
.marketing-page .services-renovation-layout,
.marketing-page .services-boundary-layout,
.marketing-page .services-regions-grid,
.marketing-page .approach-process-grid,
.marketing-page .support-levels,
.marketing-page .approach-region-grid {
  display: grid !important;
}

/* Proof bar: converter dropped .services-proof-grid — grid the container children */
.marketing-page .services-proof > .container,
.marketing-page .services-proof .wp-block-group.container {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 28px;
  padding-right: 28px;
  gap: 0;
}
.marketing-page .services-proof .container > .wp-block-group {
  min-height: 126px;
  padding: 29px 28px 27px;
  border-inline-end: 1px solid rgba(255,255,255,.13);
  margin: 0 !important;
}
.marketing-page .services-proof .container > .wp-block-group:first-child {
  border-inline-start: 1px solid rgba(255,255,255,.13);
}
.marketing-page .services-proof .container > .wp-block-group > p:first-child {
  display: block;
  margin: 0 0 12px !important;
  color: #d7c080 !important;
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.marketing-page .services-proof .container > .wp-block-group > p:last-child {
  display: block;
  max-width: 240px;
  margin: 0 !important;
  color: #fff !important;
  font-family: var(--serif);
  font-size: 20px;
  line-height: 1.28;
  font-weight: 600;
}

/* Story head already has class — reinforce columns */
.marketing-page .services-story-head {
  grid-template-columns: minmax(360px, .95fr) minmax(360px, 1.05fr);
  gap: 90px;
  align-items: start;
}

/* Entry cards: were <a>, now .starveil-card-link groups */
.marketing-page .service-entry-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 50px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  gap: 0;
}
.marketing-page .service-entry-grid > .wp-block-group,
.marketing-page .service-entry-grid > .starveil-card-link {
  min-height: 265px;
  padding: 31px 30px 28px;
  color: var(--ink);
  border-inline-end: 1px solid var(--line);
  margin: 0 !important;
  transition: background .25s ease, color .25s ease;
}
.marketing-page .service-entry-grid > .wp-block-group:first-child,
.marketing-page .service-entry-grid > .starveil-card-link:first-child {
  border-inline-start: 1px solid var(--line);
}
.marketing-page .service-entry-grid > .wp-block-group:hover,
.marketing-page .service-entry-grid > .starveil-card-link:hover {
  background: var(--tint);
}
.marketing-page .service-entry-grid .eyebrow,
.marketing-page .service-entry-grid > .wp-block-group > p:first-child,
.marketing-page .service-entry-grid > .starveil-card-link > p:first-child {
  color: var(--gold-text) !important;
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .15em;
  text-transform: uppercase;
  margin-bottom: 0 !important;
}
.marketing-page .service-entry-grid h3,
.marketing-page .service-entry-grid .wp-block-heading {
  margin: 30px 0 16px !important;
  font-size: 27px;
  line-height: 1.12;
}
.marketing-page .service-entry-grid p {
  font-size: 13px;
  line-height: 1.7;
  color: var(--sub);
}
/* Hide extra "View details" buttons added by converter inside entry cards */
.marketing-page .service-entry-grid .wp-block-buttons {
  display: none !important;
}

.marketing-page .service-scope-chapter {
  grid-template-columns: minmax(0, 1.02fr) minmax(380px, .98fr);
  gap: clamp(50px, 7vw, 94px);
  align-items: center;
  padding: 92px 0;
  border-top: 1px solid rgba(19,28,40,.16);
}
.marketing-page .service-scope-media,
.marketing-page .service-scope-media.wp-block-image,
.marketing-page figure.service-scope-media {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
  margin: 0 !important;
  background: var(--mist);
  box-shadow: 0 22px 52px rgba(14,43,53,.1);
}
.marketing-page .service-scope-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 900px) {
  .marketing-page .services-proof > .container,
  .marketing-page .services-proof .wp-block-group.container,
  .marketing-page .services-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .marketing-page .services-story-head,
  .marketing-page .service-scope-chapter,
  .marketing-page .service-entry-grid {
    grid-template-columns: 1fr !important;
  }
  .marketing-page .service-entry-grid > .wp-block-group,
  .marketing-page .service-entry-grid > .starveil-card-link {
    min-height: 0;
    border-inline-start: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }
}


/* === Kicker + Approach grid reinforce (0.3.13) === */
.marketing-page .service-scope-kicker.wp-block-group,
.marketing-page .service-scope-kicker {
  display: flex !important;
  flex-direction: row !important;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 20px !important;
  color: var(--gold-text);
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.marketing-page .service-scope-kicker > p,
.marketing-page .service-scope-kicker p {
  margin: 0 !important;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}
.marketing-page .service-scope-kicker span {
  font-family: var(--serif);
  font-size: 31px;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 600;
  color: var(--gold-text);
}

.marketing-page .approach-chapter {
  display: grid !important;
  grid-template-columns: minmax(0, 1.02fr) minmax(380px, .98fr);
  gap: clamp(48px, 6vw, 88px);
  align-items: center;
  padding: 88px 0;
  border-top: 1px solid rgba(19,28,40,.14);
}
.marketing-page .approach-chapter:nth-child(even) .approach-chapter-media {
  order: 2;
}
.marketing-page .approach-chapter-no.wp-block-group,
.marketing-page .approach-chapter-no {
  display: flex !important;
  align-items: baseline;
  gap: 13px;
  margin-bottom: 20px !important;
  font-family: var(--serif);
  font-size: 31px;
  line-height: 1;
  color: var(--gold-text);
}
.marketing-page .approach-chapter-no > p,
.marketing-page .approach-chapter-no p {
  margin: 0 !important;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
.marketing-page .approach-chapter-no span {
  font-family: var(--sans);
  font-size: 9.5px;
  letter-spacing: .17em;
  text-transform: uppercase;
  color: var(--sub);
  font-weight: 600;
}
.marketing-page .approach-story-head {
  display: grid !important;
  grid-template-columns: minmax(360px, .95fr) minmax(360px, 1.05fr);
  gap: 90px;
  align-items: start;
}
.marketing-page .support-levels {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-top: 42px;
}
.marketing-page .approach-region-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: 42px;
}
.marketing-page .approach-chapter-media,
.marketing-page figure.approach-chapter-media {
  position: relative;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  margin: 0 !important;
  background: var(--mist);
  box-shadow: 0 22px 52px rgba(14,43,53,.1);
}
.marketing-page .approach-chapter-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 900px) {
  .marketing-page .approach-chapter,
  .marketing-page .approach-story-head,
  .marketing-page .support-levels,
  .marketing-page .approach-region-grid {
    grid-template-columns: 1fr !important;
  }
  .marketing-page .approach-chapter:nth-child(even) .approach-chapter-media {
    order: 0;
  }
}

/* === Services lower sections Gutenberg spacing (0.3.14) === */

/* T1–T3 routes: children are groups, not article */
.marketing-page .services-support-levels {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 46px;
  border-top: 1px solid rgba(255,255,255,.17);
  border-bottom: 1px solid rgba(255,255,255,.17);
  gap: 0;
}
.marketing-page .services-support-levels > .wp-block-group {
  min-height: 255px;
  padding: 29px 30px !important;
  margin: 0 !important;
  border-inline-end: 1px solid rgba(255,255,255,.17);
}
.marketing-page .services-support-levels > .wp-block-group:first-child {
  border-inline-start: 1px solid rgba(255,255,255,.17);
}
.marketing-page .services-support-levels > .wp-block-group > p:first-child {
  display: block;
  margin: 0 0 27px !important;
  color: #d9c48a !important;
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.marketing-page .services-support-levels h3,
.marketing-page .services-support-levels .wp-block-heading {
  margin: 0 !important;
  color: #fff !important;
  font-size: 26px;
  line-height: 1.12;
  min-height: 2.24em; /* keep body starts closer across columns */
}
.marketing-page .services-support-levels > .wp-block-group > p:last-child {
  margin: 15px 0 0 !important;
  color: rgba(255,255,255,.65) !important;
  font-size: 12.5px;
  line-height: 1.7;
}
.marketing-page .services-support-note {
  display: block;
  margin-top: 22px !important;
  padding: 16px 19px !important;
  color: #dfd1a6 !important;
  background: rgba(217,196,138,.08);
  border: 1px solid rgba(217,196,138,.25);
  font-size: 12px;
  line-height: 1.65;
}
.marketing-page .services-support-note strong {
  color: #dfd1a6;
}

/* Support + renovation two-column layouts */
.marketing-page .services-support-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  gap: 70px;
  align-items: center;
}
.marketing-page .services-renovation > .container,
.marketing-page .services-renovation .wp-block-group.container {
  display: grid !important;
  grid-template-columns: minmax(360px, .92fr) minmax(0, 1.08fr);
  gap: 80px;
  align-items: center;
}
.marketing-page .services-renovation .container > .wp-block-group > p,
.marketing-page .services-renovation .container > .wp-block-group > .wp-block-paragraph {
  max-width: 610px;
  margin-top: 20px !important;
  color: var(--sub);
  font-size: 14.5px;
  line-height: 1.82;
}
.marketing-page .services-renovation .container > figure,
.marketing-page .services-renovation .container > .wp-block-image,
.marketing-page .services-support-layout > figure,
.marketing-page .services-support-layout > .wp-block-image {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  margin: 0 !important;
  background: var(--mist);
  box-shadow: 0 22px 52px rgba(14,43,53,.1);
}
.marketing-page .services-renovation .container > figure img,
.marketing-page .services-renovation .container > .wp-block-image img,
.marketing-page .services-support-layout > figure img,
.marketing-page .services-support-layout > .wp-block-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Diagnose / Plan / Deliver rows */
.marketing-page .services-renovation-facts {
  display: grid !important;
  gap: 0;
  margin: 29px 0 25px !important;
  border-top: 1px solid var(--line);
}
.marketing-page .services-renovation-facts > .wp-block-group {
  display: grid !important;
  grid-template-columns: 82px 1fr;
  gap: 18px;
  align-items: baseline;
  padding: 15px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--line);
}
.marketing-page .services-renovation-facts > .wp-block-group > p:first-child {
  margin: 0 !important;
  color: var(--gold-text) !important;
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.marketing-page .services-renovation-facts > .wp-block-group > p:last-child {
  margin: 0 !important;
  color: var(--ink) !important;
  font-family: var(--serif);
  font-size: 17px;
  line-height: 1.35;
  font-weight: 600;
}

/* Renovation / region CTAs should look like text-links, not fat buttons overlapping media */
.marketing-page .services-renovation .wp-block-buttons,
.marketing-page .services-regions .wp-block-buttons {
  margin: 0 !important;
}
.marketing-page .services-renovation .wp-block-button__link,
.marketing-page .services-regions .wp-block-button__link {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--navy) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .04em;
  text-decoration: none !important;
  line-height: 1.4 !important;
}
.marketing-page .services-renovation .wp-block-button__link:hover,
.marketing-page .services-regions .wp-block-button__link:hover {
  color: var(--gold-text) !important;
  background: transparent !important;
}

/* Scope table → next-step band */
.marketing-page .services-scope-table {
  margin-top: 42px;
  margin-bottom: 0 !important;
  padding: 0 !important;
  background: #fff;
  border: 1px solid var(--line);
}
.marketing-page .services-next-step {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between;
  gap: 30px;
  margin-top: 28px !important;
  padding: 25px 28px !important;
  color: #fff !important;
  background: var(--navy) !important;
}
.marketing-page .services-next-step > .wp-block-group {
  margin: 0 !important;
}
.marketing-page .services-next-step > .wp-block-group > p:first-child {
  display: block;
  margin: 0 0 5px !important;
  color: #d9c48a !important;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.marketing-page .services-next-step > .wp-block-group > p:last-child {
  margin: 0 !important;
  color: #fff !important;
  font-family: var(--serif);
  font-size: 20px;
  line-height: 1.3;
  font-weight: 600;
}
.marketing-page .services-next-step .wp-block-buttons {
  margin: 0 !important;
  flex: 0 0 auto;
}
.marketing-page .services-next-step .wp-block-button__link {
  color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.48) !important;
  border-radius: 999px !important;
  padding: 12px 22px !important;
}
.marketing-page .services-next-step .wp-block-button__link:hover {
  color: var(--navy) !important;
  background: #fff !important;
  border-color: #fff !important;
}

/* Region cards: container is the grid (class services-region-grid was dropped) */
.marketing-page .services-regions {
  padding: 0 0 110px;
  background: var(--tint);
}
.marketing-page .services-regions > .container,
.marketing-page .services-regions .wp-block-group.container {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
}
.marketing-page .services-regions .container > .wp-block-group {
  min-height: 375px;
  padding: 48px 46px !important;
  margin: 0 !important;
  background: #fff;
  border-top: 3px solid var(--navy);
}
.marketing-page .services-regions .container > .wp-block-group:first-child {
  color: #fff;
  background: var(--navy-deep);
  border-top-color: var(--brass);
}
.marketing-page .services-regions .container > .wp-block-group > p:first-child {
  display: block;
  margin: 0 0 34px !important;
  color: var(--gold-text) !important;
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.marketing-page .services-regions .container > .wp-block-group:first-child > p:first-child {
  color: #d9c48a !important;
}
.marketing-page .services-regions .container > .wp-block-group h2,
.marketing-page .services-regions .container > .wp-block-group .wp-block-heading {
  max-width: 560px;
  margin: 0 !important;
  font-size: 31px;
  line-height: 1.12;
}
.marketing-page .services-regions .container > .wp-block-group:first-child h2,
.marketing-page .services-regions .container > .wp-block-group:first-child .wp-block-heading {
  color: #fff !important;
}
.marketing-page .services-regions .container > .wp-block-group > p:nth-of-type(2) {
  max-width: 560px;
  margin: 18px 0 28px !important;
  color: var(--sub) !important;
  font-size: 13px;
  line-height: 1.75;
}
.marketing-page .services-regions .container > .wp-block-group:first-child > p:nth-of-type(2) {
  color: rgba(255,255,255,.68) !important;
}
.marketing-page .services-regions .container > .wp-block-group:first-child .wp-block-button__link {
  color: #fff !important;
}

@media (max-width: 960px) {
  .marketing-page .services-support-levels,
  .marketing-page .services-support-layout,
  .marketing-page .services-renovation > .container,
  .marketing-page .services-renovation .wp-block-group.container,
  .marketing-page .services-regions > .container,
  .marketing-page .services-regions .wp-block-group.container {
    grid-template-columns: 1fr !important;
  }
  .marketing-page .services-support-levels > .wp-block-group,
  .marketing-page .services-support-levels > .wp-block-group:first-child {
    min-height: 0;
    border-inline-start: 1px solid rgba(255,255,255,.17);
    border-bottom: 1px solid rgba(255,255,255,.17);
  }
  .marketing-page .services-support-levels > .wp-block-group:last-child {
    border-bottom: 0;
  }
  .marketing-page .services-next-step {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

/* === Approach Gutenberg spacing (0.3.15) === */
.marketing-page .support-levels {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-top: 42px;
}
.marketing-page .support-level {
  display: flex !important;
  flex-direction: column !important;
  min-height: 360px;
  padding: 30px 29px 28px !important;
  margin: 0 !important;
  background: #fff;
  border: 1px solid var(--line);
  border-top: 3px solid var(--navy);
  box-shadow: 0 12px 34px rgba(15,48,59,.05);
}
.marketing-page .support-level.is-focus {
  border-top-color: var(--gold-text);
  background: linear-gradient(180deg,#fff 0%,#fdfaf3 100%);
}
.marketing-page .support-level-head {
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 28px !important;
}
.marketing-page .support-level-head > p:first-child {
  margin: 0 !important;
  font-family: var(--serif);
  font-size: 27px;
  line-height: 1;
  color: var(--gold-text) !important;
}
.marketing-page .support-level-head > p:last-child {
  margin: 0 !important;
  font-style: normal;
  font-size: 9px;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--sub) !important;
}
.marketing-page .support-level h3,
.marketing-page .support-level .wp-block-heading {
  margin: 0 0 17px !important;
  font-size: 27px;
  line-height: 1.08;
}
.marketing-page .support-level > p {
  margin: 0 !important;
  font-size: 13.5px;
  line-height: 1.75;
  color: var(--sub);
}
/* "Best fit: …" paragraph stands in for dl */
.marketing-page .support-level > p:last-child {
  margin-top: auto !important;
  padding-top: 24px !important;
  border-top: 1px solid var(--line);
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--ink-2);
}

.marketing-page .approach-story-head {
  display: grid !important;
  grid-template-columns: minmax(340px, .95fr) minmax(360px, 1.05fr);
  gap: 90px;
  align-items: end;
}
.marketing-page .approach-story-head h2,
.marketing-page .approach-story-head .section-title {
  max-width: 650px;
  margin: 0 !important;
  font-size: clamp(36px, 4vw, 52px);
  line-height: 1.04;
}
.marketing-page .approach-story-head > p {
  max-width: 610px;
  margin: 0 !important;
  color: var(--sub);
  font-size: 15px;
  line-height: 1.85;
}

.marketing-page .approach-region-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 42px;
}
.marketing-page .approach-region-grid > .wp-block-group {
  min-height: 350px;
  padding: 39px 40px !important;
  margin: 0 !important;
  background: var(--navy-deep);
  color: #fff;
  border-top: 3px solid var(--brass);
}
.marketing-page .approach-region-grid > .wp-block-group:last-child {
  background: #f1eee6;
  color: var(--ink);
  border-top-color: var(--navy);
}
.marketing-page .approach-region-grid > .wp-block-group > p:first-child {
  display: block;
  margin: 0 0 26px !important;
  font-size: 9.5px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #d8c17d !important;
  font-weight: 600;
}
.marketing-page .approach-region-grid > .wp-block-group:last-child > p:first-child {
  color: var(--gold-text) !important;
}
.marketing-page .approach-region-grid h3,
.marketing-page .approach-region-grid .wp-block-heading {
  max-width: 470px;
  margin: 0 !important;
  font-size: 31px;
  line-height: 1.12;
  color: inherit !important;
}
.marketing-page .approach-region-grid > .wp-block-group > p:nth-of-type(2) {
  max-width: 470px;
  margin: 18px 0 28px !important;
  font-size: 13px;
  line-height: 1.75;
  color: rgba(255,255,255,.72) !important;
}
.marketing-page .approach-region-grid > .wp-block-group:last-child > p:nth-of-type(2) {
  color: var(--sub) !important;
}
.marketing-page .approach-region-grid .wp-block-buttons {
  margin: 0 !important;
}
.marketing-page .approach-region-grid .wp-block-button__link {
  display: inline-flex !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
.marketing-page .approach-region-grid > .wp-block-group:last-child .wp-block-button__link {
  color: var(--navy) !important;
}

@media (max-width: 960px) {
  .marketing-page .support-levels,
  .marketing-page .approach-story-head,
  .marketing-page .approach-region-grid {
    grid-template-columns: 1fr !important;
  }
}

/* === Home Gutenberg layout restore (0.3.16) === */

/* Hero: image fills background like static .home-hero-image */
.marketing-page .home-hero {
  position: relative;
  min-height: 720px;
  color: #fff;
  overflow: hidden;
}
.marketing-page .home-hero > .wp-block-image,
.marketing-page .home-hero > figure.home-hero-image,
.marketing-page .home-hero > figure.hero-photo {
  position: absolute !important;
  inset: 0;
  margin: 0 !important;
  width: 100%;
  height: 100%;
}
.marketing-page .home-hero > .wp-block-image img,
.marketing-page .home-hero > figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.marketing-page .home-hero .hero-ph {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(3,15,25,.86) 0%, rgba(5,22,34,.7) 34%, rgba(7,27,42,.22) 63%, rgba(5,19,30,.08) 100%),
    linear-gradient(0deg, rgba(5,18,29,.3), transparent 52%);
}
.marketing-page .home-hero > .container {
  position: relative;
  z-index: 2;
  min-height: 720px;
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(240px, .65fr);
  align-items: end;
  gap: 72px;
  padding-top: 80px !important;
  padding-bottom: 72px !important;
}
.marketing-page .home-hero .wp-block-buttons {
  display: flex !important;
  gap: 28px;
  flex-wrap: wrap;
  margin-top: 36px !important;
}

/* Proof strip: 4-up capability bar */
.marketing-page .proof-strip > .container,
.marketing-page .proof-strip .proof-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  position: relative;
}
.marketing-page .proof-strip .proof-item {
  min-height: 112px;
  display: flex !important;
  align-items: center;
  gap: 17px;
  padding: 24px;
  border-right: 1px solid rgba(21,59,75,.12);
  color: var(--ink);
  text-decoration: none;
  margin: 0 !important;
  transition: background .2s ease;
}
.marketing-page .proof-strip .proof-item:first-child {
  border-left: 1px solid rgba(21,59,75,.12);
}
.marketing-page .proof-strip .proof-item:hover {
  background: rgba(255,255,255,.58);
}
.marketing-page .proof-strip .proof-item strong {
  font-family: var(--serif);
  font-size: 26px;
  font-weight: 600;
  color: #a88743;
}
.marketing-page .proof-strip .proof-item span {
  font-size: 11.5px;
  line-height: 1.55;
  letter-spacing: .045em;
  color: #40545c;
  text-transform: uppercase;
}

/* Intro: image | copy */
.marketing-page .home-intro > .container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.02fr) minmax(380px, .98fr);
  gap: clamp(52px, 6vw, 88px);
  align-items: center;
}
.marketing-page .home-intro .intro-visual,
.marketing-page .home-intro figure.intro-visual {
  position: relative;
  overflow: hidden;
  min-height: 500px;
  margin: 0 !important;
  background: var(--navy-deep);
}
.marketing-page .home-intro .intro-visual img {
  width: 100%;
  height: 100%;
  min-height: 500px;
  object-fit: cover;
}
.marketing-page .home-intro .intro-visual figcaption,
.marketing-page .home-intro figure.intro-visual .wp-element-caption {
  position: absolute;
  left: 0;
  bottom: 0;
  margin: 0 !important;
  background: rgba(8,31,47,.88);
  color: #fff !important;
  padding: 11px 16px;
  font-size: 9.5px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

/* Section heads */
.marketing-page .editorial-head,
.marketing-page .section-head.editorial-head {
  display: grid !important;
  grid-template-columns: minmax(360px, .95fr) minmax(280px, 1.05fr);
  gap: 48px;
  align-items: end;
  margin-bottom: 42px;
}

/* Service flow 4 steps */
.marketing-page .flow-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.marketing-page .flow-step {
  display: flex !important;
  flex-direction: column !important;
  min-height: 470px;
  padding: 22px 26px 35px 0 !important;
  margin: 0 !important;
  border-right: 1px solid var(--line);
  color: var(--ink);
}
.marketing-page .flow-step:not(:first-child) {
  padding-left: 26px !important;
}
.marketing-page .flow-step:last-child {
  border-right: none;
  padding-right: 0 !important;
}
.marketing-page .flow-step .wp-block-buttons {
  display: none !important; /* converter "View details" */
}
.marketing-page .flow-step > p:first-child {
  margin: 0 0 12px !important;
  font-size: 10px;
  letter-spacing: .16em;
  color: var(--sub);
}

/* Featured project */
.marketing-page .featured-project {
  display: grid !important;
  grid-template-columns: minmax(0, 1.5fr) minmax(320px, .75fr);
  gap: 0;
  background: #fff;
  min-height: 510px;
}
.marketing-page .featured-project-image,
.marketing-page .featured-project figure,
.marketing-page .featured-project .wp-block-image {
  position: relative;
  overflow: hidden;
  min-height: 510px;
  margin: 0 !important;
  background: var(--navy-deep);
}
.marketing-page .featured-project img {
  width: 100%;
  height: 100%;
  min-height: 510px;
  object-fit: cover;
}

/* Systems home two-column */
.marketing-page .systems-home > .container {
  display: grid !important;
  grid-template-columns: minmax(300px, .75fr) minmax(520px, 1.25fr);
  gap: 100px;
  align-items: start;
}
.marketing-page .systems-sticky {
  position: sticky;
  top: 118px;
}
.marketing-page .systems-visual,
.marketing-page figure.systems-visual {
  aspect-ratio: 4 / 3;
  margin: 30px 0 24px !important;
  overflow: hidden;
  background: #e2e6e8;
}
.marketing-page .systems-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.marketing-page .system-row {
  display: grid !important;
  grid-template-columns: 45px minmax(260px, 1fr) 145px 24px;
  gap: 18px;
  align-items: center;
  padding: 30px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--line);
  color: var(--ink);
  text-decoration: none;
}
.marketing-page .system-list {
  border-top: 1px solid var(--line);
}
.marketing-page .system-row .wp-block-buttons {
  display: none !important;
}

/* Project fit */
.marketing-page .fit-intro {
  display: grid !important;
  grid-template-columns: .9fr 1.1fr;
  gap: 80px;
  align-items: end;
  margin-bottom: 42px !important;
}
.marketing-page .fit-cards {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-top: 1px solid rgba(21,59,75,.15);
  border-left: 1px solid rgba(21,59,75,.15);
}
.marketing-page .fit-card {
  min-height: 248px;
  margin: 0 !important;
  border-right: 1px solid rgba(21,59,75,.15);
  border-bottom: 1px solid rgba(21,59,75,.15);
}

/* Insights */
.marketing-page .insight-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid rgba(19,28,40,.22);
  border-bottom: 1px solid rgba(19,28,40,.22);
}
.marketing-page .insight-item {
  display: flex !important;
  flex-direction: column !important;
  min-height: 335px;
  padding: 30px 32px 34px 0 !important;
  margin: 0 !important;
  border-right: 1px solid rgba(19,28,40,.18);
  color: var(--ink);
}
.marketing-page .insight-item:not(:first-child) {
  padding-left: 32px !important;
}
.marketing-page .insight-item:last-child {
  border-right: none;
  padding-right: 0 !important;
}
.marketing-page .insight-item .wp-block-buttons {
  display: none !important;
}
.marketing-page .insights-visual,
.marketing-page figure.insights-visual {
  position: relative;
  height: 330px;
  margin: -8px 0 34px !important;
  overflow: hidden;
  background: #d9d3c8;
}
.marketing-page .insights-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Home CTA */
.marketing-page .home-cta > .container {
  position: relative;
  z-index: 2;
  display: grid !important;
  grid-template-columns: 1fr auto;
  gap: 80px;
  align-items: end;
}
.marketing-page .home-cta-actions .wp-block-buttons {
  display: flex !important;
  flex-direction: column;
  gap: 14px;
}

@media (max-width: 960px) {
  .marketing-page .home-hero > .container,
  .marketing-page .proof-strip > .container,
  .marketing-page .proof-strip .proof-grid,
  .marketing-page .home-intro > .container,
  .marketing-page .editorial-head,
  .marketing-page .flow-grid,
  .marketing-page .featured-project,
  .marketing-page .systems-home > .container,
  .marketing-page .fit-intro,
  .marketing-page .fit-cards,
  .marketing-page .insight-list,
  .marketing-page .home-cta > .container {
    grid-template-columns: 1fr !important;
  }
  .marketing-page .systems-sticky {
    position: static;
  }
  .marketing-page .flow-step,
  .marketing-page .insight-item {
    min-height: 0;
    border-right: none;
    border-bottom: 1px solid var(--line);
    padding-left: 0 !important;
  }
}

/* Home project list rows */
.marketing-page .project-list-item {
  display: grid !important;
  grid-template-columns: 45px minmax(260px, 1fr) 160px 24px;
  gap: 18px;
  align-items: center;
  padding: 26px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--line);
}
.marketing-page .project-list {
  border-top: 1px solid var(--line);
  margin-top: 28px;
}
.marketing-page .project-list-item .wp-block-buttons { display: none !important; }
.marketing-page .featured-project-image a { display:block; height:100%; }

/* === Markets/GCC/Cert/FAQ Gutenberg grids (0.3.17) === */
.marketing-page .role-layout,
.marketing-page .gcc-content-layout,
.marketing-page .gcc-delivery-layout,
.marketing-page .compliance-document-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  align-items: center;
}
.marketing-page .role-layout { gap: 50px; }
.marketing-page .gcc-content-layout { gap: 52px; }
.marketing-page .gcc-delivery-layout { gap: 50px; }
.marketing-page .compliance-document-layout { gap: 48px; }

.marketing-page .role-insight {
  display: grid !important;
  grid-template-columns: 1fr auto;
  gap: 4px 18px;
  align-items: center;
  margin-top: 24px !important;
  padding: 16px 18px !important;
  border: 1px solid var(--line);
  background: var(--pearl);
}

/* FAQ category columns often nested groups */
.marketing-page .faq-layout,
.marketing-page .faq-grid {
  display: grid !important;
  grid-template-columns: minmax(220px, .35fr) minmax(0, 1fr);
  gap: 48px;
  align-items: start;
}
.marketing-page .faq-cat {
  margin: 0 0 28px !important;
}
.marketing-page .faq-body {
  margin: 0 0 14px !important;
}

.marketing-page .compliance-role-paths,
.marketing-page .document-checklist {
  display: grid !important;
  gap: 12px;
}

.marketing-page .gcc-system-media,
.marketing-page .gcc-case-media,
.marketing-page figure.gcc-system-media,
.marketing-page figure.gcc-case-media {
  position: relative;
  overflow: hidden;
  margin: 0 !important;
  min-height: 210px;
  background: var(--mist);
}
.marketing-page .gcc-system-media img,
.marketing-page .gcc-case-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 960px) {
  .marketing-page .role-layout,
  .marketing-page .gcc-content-layout,
  .marketing-page .gcc-delivery-layout,
  .marketing-page .compliance-document-layout,
  .marketing-page .faq-layout,
  .marketing-page .faq-grid {
    grid-template-columns: 1fr !important;
  }
}


/* === Home Gutenberg layout restore (0.3.22) === */

/* Systems two-column: sticky + list (class may be systems-layout) */
.marketing-page .systems-home > .container,
.marketing-page .systems-home > .container.systems-layout {
  display: grid !important;
  grid-template-columns: minmax(300px, .75fr) minmax(520px, 1.25fr);
  gap: 100px;
  align-items: start;
}
.marketing-page .systems-home .systems-sticky {
  position: sticky;
  top: 118px;
}
.marketing-page .systems-home .system-list {
  border-top: 1px solid var(--line);
  display: block !important;
}
.marketing-page .systems-home .system-row {
  display: grid !important;
  grid-template-columns: 45px minmax(260px, 1fr) 145px 24px;
  gap: 18px;
  align-items: center;
  padding: 30px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--line);
  color: var(--ink);
  position: relative;
}
.marketing-page .systems-home .system-row > p:first-of-type {
  font-family: var(--serif);
  font-size: 18px;
  color: var(--gold-text);
  margin: 0 !important;
}
.marketing-page .systems-home .system-row > .wp-block-group {
  margin: 0 !important;
}
.marketing-page .systems-home .system-row h3 {
  font-size: 25px;
  line-height: 1.1;
  margin: 0 0 6px !important;
}
.marketing-page .systems-home .system-row > .wp-block-group > p {
  font-size: 13px;
  line-height: 1.5;
  color: var(--sub);
  margin: 0 !important;
}
.marketing-page .systems-home .system-row > p:nth-of-type(2) {
  font-size: 10px;
  line-height: 1.5;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--sub);
  margin: 0 !important;
}
.marketing-page .systems-home .system-row > p:nth-of-type(3) {
  font-size: 17px;
  margin: 0 !important;
  transition: transform .2s ease;
}
.marketing-page .systems-home .system-row:hover > p:nth-of-type(3) {
  transform: translate(3px, -3px);
}
.marketing-page .systems-home .system-row:hover h3 {
  color: var(--gold-text);
}
.marketing-page .systems-home .system-row > .wp-block-buttons {
  position: absolute;
  inset: 0;
  opacity: 0;
  z-index: 2;
}
.marketing-page .systems-home .system-row > .wp-block-buttons .wp-block-button,
.marketing-page .systems-home .system-row > .wp-block-buttons a {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
}

/* Standards panel as chip row */
.marketing-page .standards-panel {
  display: flex !important;
  align-items: center;
  gap: 10px 12px;
  flex-wrap: wrap;
  padding: 23px 0 !important;
  border-bottom: 1px solid var(--line);
}
.marketing-page .standards-panel > p:first-child {
  width: 100%;
  font-size: 9.5px;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--sub);
  margin: 0 0 3px !important;
}
.marketing-page .standards-panel > .wp-block-buttons {
  margin: 0 !important;
}
.marketing-page .standards-panel .wp-block-button__link {
  font-size: 10.5px !important;
  letter-spacing: .06em;
  color: var(--ink-2) !important;
  border: 1px solid #d7dadd !important;
  padding: 7px 10px !important;
  background: #fff !important;
  border-radius: 0 !important;
  text-decoration: none !important;
}
.marketing-page .standards-panel > .wp-block-buttons:last-child {
  margin-left: auto !important;
}
.marketing-page .standards-panel > .wp-block-buttons:last-child .wp-block-button__link {
  border-color: transparent !important;
  padding-right: 0 !important;
  font-weight: 600 !important;
}

/* GCC banner sits under systems */
.marketing-page .systems-home .gcc-home-banner,
.marketing-page .gcc-home-banner {
  display: grid !important;
  grid-template-columns: 155px minmax(0, 1fr) auto;
  gap: 32px;
  align-items: center;
  margin-top: 38px;
  padding: 24px 27px;
  color: var(--ink);
  background: linear-gradient(105deg, #f5efe3 0%, #eaf0ef 100%);
  border: 1px solid rgba(21,59,75,.13);
  border-left: 3px solid var(--gold-text);
  text-decoration: none !important;
}
.marketing-page .gcc-home-banner:hover {
  color: var(--ink);
  background: linear-gradient(105deg, #f8f2e7 0%, #edf4f2 100%);
}

/* Fit cards */
.marketing-page .fit-cards {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
.marketing-page .fit-card {
  position: relative;
  margin: 0 !important;
  background: #fff;
  border: 1px solid var(--line);
  overflow: hidden;
}
.marketing-page .fit-card .fit-card-media,
.marketing-page .fit-card figure.fit-card-media {
  margin: 0 !important;
  aspect-ratio: 16/10;
  overflow: hidden;
}
.marketing-page .fit-card .fit-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.marketing-page .fit-card-copy {
  padding: 22px 24px 28px !important;
}
.marketing-page .fit-card-copy > p:first-child {
  font-family: var(--serif);
  font-size: 18px;
  color: var(--gold-text);
  margin: 0 0 8px !important;
}
.marketing-page .fit-card-copy > p:nth-child(2) {
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 8px !important;
  color: var(--ink);
}
.marketing-page .fit-card-copy > p:nth-child(3) {
  font-size: 14px;
  color: var(--sub);
  margin: 0 !important;
  line-height: 1.6;
}
.marketing-page .fit-card > .wp-block-buttons {
  position: absolute;
  inset: 0;
  opacity: 0;
}
.marketing-page .fit-card > .wp-block-buttons a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 0;
  background: transparent !important;
  border: 0 !important;
}

/* Insights list */
.marketing-page .insight-list {
  display: grid !important;
  gap: 0;
}
.marketing-page .insight-item {
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr);
  column-gap: 22px;
  row-gap: 6px;
  padding: 28px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--line);
  position: relative;
}
.marketing-page .insight-item > p:first-of-type {
  grid-row: 1 / span 4;
  font-family: var(--serif);
  font-size: 22px;
  color: var(--gold-text);
  margin: 0 !important;
}
.marketing-page .insight-item .insight-meta,
.marketing-page .insight-item .insight-meta p {
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--sub);
  margin: 0 !important;
}
.marketing-page .insight-item h3 {
  margin: 0 !important;
  font-size: 24px;
  line-height: 1.2;
}
.marketing-page .insight-item > p:nth-of-type(2) {
  color: var(--sub);
  font-size: 14px;
  margin: 0 !important;
}
.marketing-page .insight-item > p:nth-of-type(3) {
  font-size: 13px;
  font-weight: 600;
  color: var(--navy);
  margin: 8px 0 0 !important;
}
.marketing-page .insight-item > .wp-block-buttons {
  position: absolute;
  inset: 0;
  opacity: 0;
}
.marketing-page .insight-item > .wp-block-buttons a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 0;
  background: transparent !important;
  border: 0 !important;
}

/* Hero CTAs look like static light button + text link */
.marketing-page .home-hero .wp-block-buttons {
  display: flex !important;
  align-items: center;
  gap: 28px;
  flex-wrap: wrap;
}
.marketing-page .home-hero .wp-block-button__link {
  background: #fff !important;
  color: var(--navy-deep) !important;
  border: 0 !important;
  border-radius: 2px !important;
  padding: 13px 26px !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
}
.marketing-page .home-hero .wp-block-buttons .wp-block-button:last-child .wp-block-button__link,
.marketing-page .home-hero .is-style-outline .wp-block-button__link {
  background: transparent !important;
  color: #fff !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Home CTA inner grid */
.marketing-page .home-cta > .container,
.marketing-page .home-cta > .home-cta-inner,
.marketing-page .home-cta > .container.home-cta-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr);
  gap: 48px;
  align-items: center;
}
.marketing-page .home-cta-actions {
  display: grid !important;
  gap: 16px;
}

@media (max-width: 980px) {
  .marketing-page .systems-home > .container,
  .marketing-page .systems-home > .container.systems-layout,
  .marketing-page .home-cta > .container,
  .marketing-page .home-cta > .container.home-cta-inner,
  .marketing-page .fit-cards {
    grid-template-columns: 1fr !important;
  }
  .marketing-page .systems-home .systems-sticky { position: static; }
  .marketing-page .systems-home .system-row {
    grid-template-columns: 40px 1fr;
  }
  .marketing-page .systems-home .system-row > p:nth-of-type(2),
  .marketing-page .systems-home .system-row > p:nth-of-type(3) {
    display: none;
  }
  .marketing-page .gcc-home-banner {
    grid-template-columns: 1fr !important;
  }
}
