/* /assets/site.css */
@font-face{font-family:Inter;src:url('/assets/inter.woff2') format('woff2');font-weight:400 800;font-display:swap}
:root{--ink:#101f34;--muted:#5d6777;--blue:#1558d6;--accent:#ef713b;--line:#dbe1e8;--soft:#f2f5f8;--white:#fff;--max:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.75rem,5vw,4.8rem)}h2{font-size:clamp(2.2rem,3.3vw,3.3rem)}h3{font-size:1.45rem;letter-spacing:-.03em}p+p{margin-top:1.2rem}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:auto}svg{display:block}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{color:#fff;background:var(--blue)}.wrap{width:min(calc(100% - 112px),var(--max));margin-inline:auto}.section{padding-block:106px}.section-soft{background:var(--soft)}.section-dark{background:var(--ink);color:#fff}.eyebrow{display:block;color:var(--blue);font-size:.76rem;line-height:1.5;font-weight:700;letter-spacing:.14em;margin-bottom:23px}.small-rule{display:inline-block;width:28px;height:2px;background:var(--accent);vertical-align:middle;margin-right:12px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--blue);color:#fff;min-height:52px;padding:13px 26px;font-size:.88rem;font-weight:600;border:1px solid var(--blue);border-radius:2px;transition:background .2s}.button:hover{background:#0f45ab}.button-outline{background:transparent;color:var(--ink);border-color:var(--line)}.button-outline:hover{background:var(--soft)}.button-white{background:#fff;border-color:#fff;color:var(--ink)}.button-white:hover{background:#e8edf5}.text-link{display:inline-block;border-bottom:1px solid currentColor;font-size:.88rem;font-weight:600;line-height:1.8;padding-bottom:3px}.text-link:hover{color:var(--blue)}.skip-link{position:absolute;top:-100px;left:20px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}.topbar{background:var(--ink);color:#cbd4e2;font-size:.7rem;font-weight:600;letter-spacing:.08em}.topbar-inner{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:16px}.top-dot{margin-inline:14px;color:#738295}.header{position:sticky;top:0;z-index:50;background:#fffffffa;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:32px;min-height:94px}.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;line-height:1}.brand-symbol{width:40px}.brand-word{font-size:2.1rem;font-weight:800;letter-spacing:-.05em}.brand-word>span{font-size:.56rem;display:block;letter-spacing:.11em;margin-top:5px;font-weight:700}.header nav{margin-left:auto;display:flex;align-items:center;gap:23px}.header nav a{font-size:.78rem;font-weight:600;line-height:1.4;padding-block:10px;border-bottom:2px solid transparent;white-space:nowrap}.header nav a:hover,.header nav a[aria-current]{color:var(--blue);border-color:var(--blue)}.header-contact{color:var(--blue);font-size:.8rem;font-weight:600;white-space:nowrap;border:1px solid var(--line);padding:11px 16px;border-radius:2px}.header-contact:hover{background:var(--soft)}.menu-button{display:none;background:none;border:0;align-items:center;gap:12px;color:var(--ink);font-size:.85rem}.menu-button svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.6}.hero{position:relative;min-height:638px;overflow:hidden;background:#e6ecf2}.hero-image{position:absolute;inset:0 0 0 auto;width:66%;height:100%;object-fit:cover;object-position:center 65%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#f2f5f8 0%,#f2f5f8 32%,#f2f5f8d9 43%,#f2f5f800 70%)}.hero-inner{position:relative;min-height:638px;padding-block:90px;display:flex;align-items:center}.hero-copy{width:620px;max-width:60%}.hero h1{letter-spacing:-.058em;font-weight:600;line-height:1.08}.hero h1 span{color:var(--blue)}.hero-copy>p{margin-top:28px;max-width:470px;color:#4c5868;font-size:1rem;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:35px}.hero-caption{position:absolute;right:0;bottom:30px;letter-spacing:.12em;font-size:.66rem;color:#fff;background:#101f34b3;padding:9px 14px}.credentials{border-bottom:1px solid var(--line)}.credentials-inner{display:grid;grid-template-columns:repeat(3,1fr);padding-block:30px}.credentials-inner>div{padding:0 34px;display:flex;align-items:center;gap:24px;border-right:1px solid var(--line)}.credentials-inner>div:first-child{padding-left:0}.credentials-inner>div:last-child{border:0}.credentials strong{font-weight:600;font-size:1.8rem;letter-spacing:-.055em;white-space:nowrap}.credentials span{max-width:160px;font-size:.76rem;line-height:1.65;color:var(--muted)}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:110px}.intro>div:last-child{padding-top:36px;color:var(--muted)}.intro .text-link{margin-top:26px;color:var(--ink)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}.service-rows{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:60px 1.2fr 1fr 40px;align-items:center;gap:28px;min-height:118px;border-bottom:1px solid var(--line);transition:background .2s,padding .2s}.row-number{font-size:.8rem;color:var(--blue);font-weight:600;letter-spacing:.05em}.service-row h3{font-size:1.65rem;font-weight:500}.service-row p{font-size:.9rem;line-height:1.7;color:var(--muted)}.row-plus{font-size:1.8rem;font-weight:400;justify-self:end}.service-row:hover{background:#e8edf4;padding-inline:16px}.project-feature{display:grid;grid-template-columns:1.05fr 1fr;gap:88px;align-items:center}.project-visual{position:relative}.project-visual img{height:460px;object-fit:cover}.image-label{position:absolute;bottom:20px;left:20px;color:#fff;background:var(--ink);padding:8px 12px;font-size:.65rem;letter-spacing:.08em}.project-copy>p{margin-top:28px;color:var(--muted);max-width:450px}.project-stats{display:flex;gap:50px;margin:30px 0 34px;border-top:1px solid var(--line);padding-top:24px}.project-stats strong{font-size:2.65rem;font-weight:500;letter-spacing:-.05em;line-height:1.2;display:block}.project-stats small{font-size:1rem;letter-spacing:0}.project-stats span{display:block;font-size:.75rem;color:var(--muted);margin-top:6px}.section-dark .eyebrow{color:#7ca8ff}.section-dark .text-link:hover{color:#9dbdff}.sector-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #354052}.sector-grid>a{padding:30px 30px 0;border-right:1px solid #354052;display:flex;flex-direction:column}.sector-grid>a:first-child{padding-left:0}.sector-grid>a:last-child{border:0}.sector-grid .row-number{color:#7ca8ff;margin-bottom:50px}.sector-grid h3{font-size:1.6rem;line-height:1.2;min-height:61px}.sector-grid p{color:#abb6c6;font-size:.85rem;line-height:1.8;margin-top:20px}.sector-foot{margin-top:40px;font-size:.8rem;display:flex;justify-content:space-between;align-items:center}.sector-foot>span{font-size:1.5rem}.sector-grid>a:hover h3{color:#9dbdff}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.editorial-card{border-top:1px solid var(--line);padding-top:26px}.article-index{display:block;font-size:2.5rem;letter-spacing:-.06em;font-weight:500;color:#b2bdcb;margin-bottom:55px}.editorial-card .eyebrow{font-size:.66rem;margin-bottom:18px}.editorial-card h3{font-size:1.8rem;line-height:1.2;max-width:340px}.editorial-card p{font-size:.9rem;color:var(--muted);margin-top:20px;line-height:1.75}.editorial-card .text-link{margin-top:26px}.editorial-card:hover h3{color:var(--blue)}.istanbul-strip{background:var(--soft);padding-block:80px}.istanbul-strip>.wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:0 100px}.istanbul-strip .eyebrow{grid-column:1/-1}.istanbul-strip p{color:var(--muted);align-self:center;grid-column:2;grid-row:2}.istanbul-strip .text-link{grid-column:2;justify-self:start;margin-top:20px}.contact-band{background:var(--blue);color:#fff;padding-block:64px}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.contact-band .eyebrow{color:#bfd0f4;margin-bottom:20px}.contact-band h2{font-size:2.6rem}.contact-band-inner>div:last-child{display:flex;flex-direction:column;align-items:center;gap:18px}.contact-phone{font-size:1.1rem;letter-spacing:.02em}.footer{padding-top:70px;background:#0c1727;color:#a8b5c8;font-size:.82rem}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.15fr;gap:54px;padding-bottom:54px}.footer .brand{color:#fff}.footer-brand p{margin-top:25px;font-size:.9rem;line-height:1.8;max-width:250px}.footer h3{font-size:.82rem;letter-spacing:0;color:#fff;margin-bottom:24px;font-weight:600}.footer-grid>div:not(:first-child)>a{display:block;margin-block:8px}.footer-grid a:hover{color:#fff}.footer-grid p{margin-block:20px}.footer-operator{display:block;color:#fff;margin-top:20px}.footer-bottom{border-top:1px solid #273245;padding-block:22px;display:flex;justify-content:space-between;gap:24px;font-size:.7rem}.footer-bottom>div{display:flex;gap:24px}.breadcrumbs{display:flex;align-items:center;gap:12px;font-size:.75rem;line-height:1.5;padding-block:25px;color:var(--muted);flex-wrap:wrap}.breadcrumbs>span[aria-hidden]{color:#a4aebe}.breadcrumbs a:hover{color:var(--blue)}.page-hero{padding:55px 0 75px;background:var(--soft)}.page-hero h1{max-width:850px;font-size:clamp(2.6rem,4.6vw,4.3rem)}.page-hero p{margin-top:27px;max-width:720px;font-size:1.08rem;color:var(--muted);line-height:1.85}.page-hero .eyebrow{margin-bottom:22px}.page-hero .button{margin-top:30px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:90px;padding-block:72px 96px}.prose{max-width:820px}.prose h2{font-size:2rem;margin-bottom:23px;line-height:1.25}.prose h3{font-size:1.25rem;letter-spacing:-.02em;margin-top:30px;margin-bottom:16px}.prose p{color:#536072;line-height:1.9}.prose section{margin-bottom:54px;scroll-margin-top:130px}.prose ul,.prose ol{padding-left:22px;color:#536072;margin:22px 0;line-height:1.85}.prose li{padding-left:5px;margin-block:10px}.side-box{border:1px solid var(--line);padding:26px;background:#fff}.sidebar{align-self:start;position:sticky;top:125px}.side-box h2,.side-box h3{font-size:1rem;letter-spacing:-.02em;margin-bottom:20px}.side-box a{display:block;font-size:.85rem;line-height:1.6;padding-block:10px;border-bottom:1px solid var(--line)}.side-box a:last-child{border:0}.side-box a:hover{color:var(--blue)}.side-box .eyebrow{font-size:.68rem;margin-bottom:18px}.side-contact{background:var(--soft);padding:26px;margin-top:18px}.side-contact h3{font-size:1.35rem;margin-bottom:16px}.side-contact p{font-size:.85rem;color:var(--muted);margin-bottom:22px}.side-contact .button{width:100%}.side-contact>a:last-child{display:block;font-size:.95rem;text-align:center;margin-top:16px}.checklist{background:var(--soft);padding:30px 35px;border-left:3px solid var(--blue);margin-block:30px}.checklist h3{margin-top:0}.checklist ul{margin-bottom:0}.faq-list{border-top:1px solid var(--line);margin-top:25px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:25px;padding:23px 0;cursor:pointer;list-style:none;font-size:1rem;font-weight:500;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:var(--blue);font-size:1.5rem;font-weight:400}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{padding:0 35px 24px 0;color:var(--muted);line-height:1.9}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.related-card{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;background:#fff}.related-card h3{font-size:1.45rem;margin-bottom:18px}.related-card p{font-size:.9rem;line-height:1.8;color:var(--muted)}.related-card .text-link{margin-top:auto;align-self:start;padding-top:24px}.related-card:hover{border-color:var(--blue)}.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:36px}.hub-card{border-top:1px solid var(--line);padding:32px 0 20px;display:grid;grid-template-columns:54px 1fr;gap:8px 20px}.hub-card .row-number{grid-row:1/4}.hub-card h2{font-size:1.9rem;line-height:1.2}.hub-card p{color:var(--muted);line-height:1.8;margin-block:18px}.hub-card .text-link{justify-self:start}.hub-card:hover h2{color:var(--blue)}.technical-note{padding:25px 30px;border:1px solid var(--line);margin:30px 0;font-size:.9rem;color:var(--muted)}.table-scroll{overflow-x:auto;margin-block:28px}table{border-collapse:collapse;min-width:560px;width:100%;font-size:.9rem;line-height:1.7}th,td{border-bottom:1px solid var(--line);padding:19px 20px;text-align:left;vertical-align:top}th{background:var(--soft);font-weight:600}td{color:var(--muted)}.prose-image{margin-block:30px}.prose-image img{max-height:550px;object-fit:cover}.prose-image figcaption{font-size:.75rem;color:var(--muted);margin-top:10px}.prose figure{margin-inline:0}.source-links{border-top:1px solid var(--line);padding-top:22px;font-size:.8rem;color:var(--muted)}.source-links a{display:block;margin-top:8px;color:var(--blue);text-decoration:underline}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.contact-details h2{font-size:2rem;margin-bottom:30px}.contact-item{border-top:1px solid var(--line);padding-block:20px}.contact-item>span{display:block;font-size:.7rem;font-weight:700;letter-spacing:.12em;color:var(--muted);margin-bottom:9px}.contact-item>a{display:block;font-size:1.2rem;color:var(--blue)}.contact-item p{font-size:.95rem;line-height:1.8;color:var(--muted);max-width:400px}.contact-form{background:var(--soft);padding:38px}.contact-form h2{font-size:1.85rem;margin-bottom:16px}.contact-form>p{font-size:.85rem;color:var(--muted);line-height:1.8;margin-bottom:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:.82rem;font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:47px;background:#fff;border:1px solid #cbd4df;border-radius:0;padding:11px 13px;color:var(--ink);font-size:.88rem}.field textarea{min-height:125px;resize:vertical}.field small{font-size:.75rem;color:var(--muted)}.form-note{font-size:.75rem;color:var(--muted);margin-block:22px}.form-note a{text-decoration:underline}.form-status{font-size:.85rem;color:var(--blue);margin-top:18px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-grid>div{border-top:1px solid var(--line);padding-top:26px}.process-grid .row-number{display:block;margin-bottom:25px}.process-grid h3{font-size:1.4rem}.process-grid p{margin-top:18px;font-size:.9rem;color:var(--muted);line-height:1.8}.project-list{display:grid;grid-template-columns:repeat(2,1fr);gap:45px}.project-card img{height:360px;object-fit:cover}.project-card .eyebrow{margin-top:23px;margin-bottom:14px}.project-card h2{font-size:2rem}.project-card p{color:var(--muted);line-height:1.8;margin-top:20px}.project-card .text-link{margin-top:22px}.quote-block{border-left:3px solid var(--blue);padding:10px 0 10px 28px;font-size:1.5rem;line-height:1.5;letter-spacing:-.025em;margin-block:35px}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.coverage-grid>div{background:var(--soft);padding:30px}.coverage-grid h3{margin-top:0}.tag-list{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.tag-list span{border:1px solid var(--line);padding:6px 10px;font-size:.8rem;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.gallery-grid img{height:310px;object-fit:cover}.gallery-grid figcaption{font-size:.75rem;line-height:1.6;margin-top:10px;color:var(--muted)}.resource-meta{display:flex;gap:20px;margin-top:24px;color:var(--muted);font-size:.75rem}.sitemap-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.sitemap-columns h2{font-size:1.4rem;margin-bottom:22px}.sitemap-columns a{display:block;padding-block:9px;color:var(--muted);border-bottom:1px solid var(--line);font-size:.9rem}.sitemap-columns a:hover{color:var(--blue)}
@media(min-width:1550px){.wrap{width:min(calc(100% - 160px),var(--max))}.hero{min-height:680px}.hero-inner{min-height:680px}}
@media(max-width:1200px){.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}.header nav{gap:15px}.header nav a{font-size:.72rem}.header-contact{font-size:.73rem;padding:10px}.intro{gap:65px}.project-feature{gap:50px}.footer-grid{gap:30px}.detail-layout{gap:50px;grid-template-columns:minmax(0,1fr) 270px}.hero-copy{max-width:62%}.sector-grid>a{padding-inline:22px}.contact-layout{gap:50px}}
@media(max-width:1020px){.header-inner{min-height:80px}.header nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fff;padding:22px 32px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #101f3410}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav a{padding:14px 0;font-size:.95rem}.menu-button{display:flex;margin-left:auto}.header-contact{font-size:.8rem;padding:11px 16px}.hero{min-height:610px}.hero-inner{min-height:610px}.hero-copy{max-width:65%;width:550px}.hero h1{font-size:3.6rem}.credentials-inner>div{padding-inline:20px;gap:15px;align-items:flex-start;flex-direction:column}.credentials span{max-width:none}.intro{gap:40px}.sector-grid{grid-template-columns:repeat(2,1fr);gap:35px 0}.sector-grid>a:nth-child(2){border:0}.sector-grid>a:nth-child(3){padding-left:0}.sector-grid .row-number{margin-bottom:35px}.sector-grid h3{min-height:0}.editorial-grid{gap:28px}.editorial-card h3{font-size:1.5rem}.footer-grid{grid-template-columns:repeat(2,1fr);gap:45px}.detail-layout{grid-template-columns:minmax(0,1fr) 230px;gap:35px}.contact-layout{grid-template-columns:1fr 1.15fr;gap:35px}.contact-form{padding:28px}.process-grid{grid-template-columns:repeat(2,1fr)}.service-row{grid-template-columns:38px 1fr 1fr 24px;gap:18px}.service-row h3{font-size:1.4rem}.istanbul-strip>.wrap{gap:0 50px}.contact-band h2{font-size:2.2rem}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.section{padding-block:65px}.eyebrow{font-size:.68rem;margin-bottom:18px}.topbar{font-size:.6rem;letter-spacing:.02em}.topbar-inner{min-height:32px}.top-dot{margin-inline:7px}.topbar-inner>span:first-child{font-size:.57rem}.header-inner{min-height:76px;gap:14px}.header nav{top:76px;padding-inline:20px}.header-contact{display:none}.brand-symbol{width:33px}.brand-word{font-size:1.9rem}.brand-word>span{font-size:.5rem}.menu-button{font-size:.8rem}.hero,.hero-inner{min-height:700px}.hero-inner{align-items:flex-start;padding-top:56px;padding-bottom:260px}.hero-image{width:100%;height:360px;top:auto;bottom:0;object-position:center 65%}.hero-shade{background:linear-gradient(180deg,#f2f5f8 0%,#f2f5f8 49%,#f2f5f8b3 59%,#f2f5f800 80%)}.hero-copy{max-width:100%;width:100%}.hero h1{font-size:clamp(2.55rem,8vw,3.7rem);line-height:1.12}.hero-copy>p{font-size:.95rem;max-width:520px;margin-top:22px}.hero-actions{gap:22px;margin-top:26px;flex-wrap:wrap}.hero-caption{font-size:.57rem;right:0;bottom:20px}.credentials-inner{padding-block:22px;grid-template-columns:repeat(3,minmax(0,1fr))}.credentials-inner>div{padding-inline:14px;gap:8px}.credentials strong{font-size:1.1rem;letter-spacing:-.04em}.credentials span{font-size:.65rem;line-height:1.65}.intro{grid-template-columns:1fr;gap:20px}.intro>div:last-child{padding-top:0}.intro h2{font-size:2.05rem}.section-heading{align-items:flex-start;flex-direction:column;gap:25px;margin-bottom:35px}.section-heading h2{font-size:2.15rem}.service-row{grid-template-columns:28px 1fr 20px;gap:10px 16px;padding-block:23px;min-height:0}.service-row h3{font-size:1.4rem;line-height:1.3}.service-row p{grid-column:2;grid-row:2;font-size:.85rem}.row-plus{grid-column:3;grid-row:1/3;font-size:1.5rem}.service-row:hover{padding-inline:0}.project-feature{grid-template-columns:1fr;gap:38px}.project-visual img{height:330px}.project-copy h2{font-size:2.25rem}.project-copy>p{margin-top:23px}.project-stats{gap:38px}.project-stats strong{font-size:2.3rem}.sector-grid>a{padding-inline:20px}.sector-grid h3{font-size:1.35rem;line-height:1.25}.sector-grid p{font-size:.8rem}.sector-grid .row-number{margin-bottom:30px}.sector-foot{font-size:.72rem;margin-top:28px}.editorial-grid{grid-template-columns:1fr;gap:35px}.article-index{font-size:1.8rem;margin-bottom:26px}.editorial-card h3{max-width:none;font-size:1.75rem}.editorial-card p{max-width:580px}.istanbul-strip{padding-block:58px}.istanbul-strip>.wrap{display:block}.istanbul-strip h2{font-size:2.2rem}.istanbul-strip p{margin-top:25px}.istanbul-strip .text-link{margin-top:25px}.contact-band{padding-block:48px}.contact-band-inner{flex-direction:column;align-items:flex-start;gap:30px}.contact-band h2{font-size:2rem}.contact-band-inner>div:last-child{align-items:flex-start}.footer{padding-top:50px}.footer-grid{gap:35px 25px;padding-bottom:36px}.footer-grid>div:first-child{grid-column:1/-1}.footer-brand p{max-width:400px}.footer-grid>div:last-child{grid-column:1/-1}.footer h3{margin-bottom:18px}.footer-bottom{display:block;font-size:.68rem}.footer-bottom>div{margin-top:14px;gap:20px}.breadcrumbs{font-size:.68rem;padding-block:20px;gap:8px}.page-hero{padding-block:35px 50px}.page-hero h1{font-size:2.55rem;letter-spacing:-.05em;line-height:1.15}.page-hero p{font-size:.98rem;margin-top:22px}.detail-layout{grid-template-columns:1fr;padding-block:50px 60px;gap:20px}.prose h2{font-size:1.75rem}.prose p{font-size:.97rem}.prose section{margin-bottom:40px}.sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:18px}.side-contact{margin-top:0}.side-box,.side-contact{padding:22px}.checklist{padding:24px}.related-grid{grid-template-columns:1fr;gap:18px}.related-card{padding:25px}.hub-grid{grid-template-columns:1fr;gap:15px}.hub-card{padding-block:27px;grid-template-columns:35px 1fr;gap:8px 15px}.hub-card h2{font-size:1.7rem}.hub-card p{font-size:.93rem}.contact-layout{grid-template-columns:1fr;gap:40px}.contact-form{padding:26px}.form-grid{gap:18px 14px}.project-list{grid-template-columns:1fr;gap:45px}.project-card img{height:300px}.project-card h2{font-size:1.8rem}.coverage-grid{grid-template-columns:1fr;gap:20px}.gallery-grid img{height:210px}.gallery-grid{gap:15px}.sitemap-columns{grid-template-columns:1fr 1fr;gap:30px}.resource-meta{font-size:.7rem;gap:14px}.process-grid{gap:30px 20px}.technical-note{padding:22px}.table-scroll{max-width:100%}}
@media(max-width:420px){.topbar-inner>span:first-child{letter-spacing:0;font-size:.53rem}.topbar-inner>span:last-child{font-size:.58rem}.top-dot{margin-inline:5px}.hero h1{font-size:2.5rem}.hero,.hero-inner{min-height:730px}.hero-actions{gap:20px}.hero-actions .button{font-size:.8rem;padding-inline:18px}.hero-actions .text-link{font-size:.8rem}.credentials-inner>div{padding-inline:9px}.credentials strong{font-size:1rem}.credentials span{font-size:.62rem}.sidebar{grid-template-columns:1fr}.sector-grid{grid-template-columns:1fr;gap:0}.sector-grid>a{border:0;border-bottom:1px solid #354052;padding:25px 0}.sector-grid>a:last-child{border:0}.sector-grid .row-number{margin-bottom:22px}.sector-grid p{font-size:.88rem;max-width:270px;margin-top:15px}.sector-foot{margin-top:23px;font-size:.8rem}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:280px}.sitemap-columns{grid-template-columns:1fr}.footer-grid{column-gap:20px}.footer-grid a{overflow-wrap:anywhere}.contact-band h2{font-size:1.85rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Navigation and regular controls keep readable sizes. */
.application-page-heading .page-hero{padding-block:42px 54px}.application-page-heading .page-hero h1{font-size:clamp(2.6rem,4vw,3.8rem)}.application-page-heading .page-hero p{max-width:790px;font-size:1rem;margin-top:22px}.application-gallery{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px 38px;padding-top:60px}.application-card{min-width:0;display:flex;flex-direction:column}.application-card-photo{overflow:hidden;background:var(--soft);aspect-ratio:16/10}.application-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.application-card-copy{padding-top:27px}.application-card-index{display:block;font-size:.75rem;line-height:1.5;letter-spacing:.09em;font-weight:600;color:var(--blue);margin-bottom:18px}.application-card-index>span{color:#a7b4c6;margin-inline:12px}.application-card h2{font-size:1.95rem;line-height:1.2;letter-spacing:-.035em}.application-card p{font-size:1rem;line-height:1.85;color:var(--muted);margin-top:19px;max-width:620px}.application-card .text-link{margin-top:22px;align-self:flex-start}.application-card:hover .application-card-photo img{transform:scale(1.035)}.application-card:hover h2{color:var(--blue)}.application-card-featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);background:var(--soft);align-items:center}.application-card-featured .application-card-photo{aspect-ratio:auto;height:100%;min-height:360px}.application-card-featured .application-card-copy{padding:42px 48px}.application-card-featured h2{font-size:2.45rem;max-width:370px}.application-card-featured p{font-size:.98rem}.application-card-featured .text-link{margin-top:27px}@media(max-width:1020px){.application-gallery{gap:40px 28px}.application-card-featured .application-card-copy{padding:30px}.application-card-featured h2{font-size:2rem}.application-card-featured .application-card-photo{min-height:385px}.application-card h2{font-size:1.8rem}}@media(max-width:760px){.application-page-heading .page-hero{padding-block:32px 42px}.application-page-heading .page-hero h1{font-size:2.5rem}.application-gallery{grid-template-columns:1fr;padding-top:38px;gap:42px}.application-card-featured{grid-column:auto;display:flex;background:transparent}.application-card-featured .application-card-photo{height:auto;min-height:0;aspect-ratio:16/10}.application-card-featured .application-card-copy,.application-card-copy{padding:23px 0 0}.application-card-featured h2,.application-card h2{font-size:1.9rem;max-width:none}.application-card-index{margin-bottom:15px}.application-card-featured p,.application-card p{font-size:.97rem;margin-top:16px}.application-card-featured .text-link,.application-card .text-link{margin-top:19px}.application-card-photo{aspect-ratio:16/11}}
.vrf-brands{border-bottom:1px solid var(--line);background:#fff;padding-block:48px}.vrf-brands-inner{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:40px}.vrf-brands-caption .eyebrow{margin-bottom:13px}.vrf-brands-caption h2{font-size:1.7rem;line-height:1.2;letter-spacing:-.035em}.vrf-brand-logos{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;list-style:none;padding:0;margin:0}.vrf-brand-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:115px;padding:8px 35px;border-left:1px solid var(--line)}.vrf-brand-logo img{width:auto;max-width:100%;height:62px;object-fit:contain}.vrf-brand-logo-fujitherma img{height:58px}.vrf-brand-logo>span{font-size:.875rem;color:var(--muted);line-height:1.5}.vrf-brand-logo-mitsubishi-heavy img{max-width:290px;width:100%}@media(max-width:1020px){.vrf-brands-inner{grid-template-columns:.85fr 2fr;gap:25px}.vrf-brand-logo{padding-inline:24px}.vrf-brands-caption h2{font-size:1.5rem}}@media(max-width:760px){.vrf-brands{padding-block:35px}.vrf-brands-inner{grid-template-columns:1fr;gap:27px}.vrf-brands-caption h2{font-size:1.6rem}.vrf-brand-logos{border-top:1px solid var(--line);padding-top:23px}.vrf-brand-logo{padding:5px 18px;gap:16px;min-height:110px}.vrf-brand-logo:first-child{border:0;padding-left:0}.vrf-brand-logo:last-child{padding-right:0}.vrf-brand-logo img{height:46px}.vrf-brand-logo-fujitherma img{height:46px}.vrf-brand-logo>span{font-size:.8rem}}@media(max-width:420px){.vrf-brand-logo{padding-inline:13px;gap:13px;min-height:100px}.vrf-brand-logo img,.vrf-brand-logo-fujitherma img{height:38px}.vrf-brand-logo>span{font-size:.75rem}}
.detail-layout>*{min-width:0}.prose{min-width:0}.table-scroll{width:100%}
.header nav a{font-size:.875rem}.header-contact{font-size:.875rem}.header nav{gap:19px}.header-inner{gap:25px}.footer-grid>div:not(:first-child)>a{font-size:.875rem}.button,.text-link{font-size:.875rem}@media(max-width:1200px) and (min-width:1021px){.header nav{gap:13px}.header-inner{gap:17px}.header nav a,.header-contact{font-size:.875rem}.header-contact{padding:11px 12px}}@media(max-width:1020px){.header nav a{font-size:1rem}}

/* Original FujiTherma raster logo is displayed within native resolution. */
.vrf-brand-logo-fujitherma img{width:142px;height:45px;max-width:100%}@media(max-width:760px){.vrf-brand-logo-fujitherma img{width:120px;height:38px}}

/* Brand pages are reachable through the original homepage logos. */
.vrf-brand-logo .brand-home-link{display:flex;flex-direction:column;align-items:center;gap:17px;width:100%;text-align:center}.vrf-brand-logo .brand-home-link>span{font-size:.82rem;line-height:1.6;color:var(--muted);border-bottom:1px solid #cbd5e0;padding-bottom:4px}.vrf-brand-logo .brand-home-link:hover>span{color:var(--blue);border-color:var(--blue)}@media(max-width:760px){.vrf-brand-logo .brand-home-link{gap:13px}.vrf-brand-logo .brand-home-link>span{font-size:.72rem}}

.vrf-brand-logo-fujitherma img{width:190px;height:49px;max-width:100%;object-fit:contain}@media(max-width:760px){.vrf-brand-logo-fujitherma img{width:150px;height:39px}}


/* /assets/growth.css */
.growth-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding-block:65px 80px}.growth-hero h1{font-size:clamp(2.4rem,4.3vw,4.4rem);line-height:1.08;letter-spacing:-.045em;margin:22px 0 26px}.growth-hero p{font-size:1.13rem;line-height:1.8;color:#65728c}.growth-hero img{width:100%;aspect-ratio:1.13;object-fit:cover;border-radius:18px}.growth-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:30px}.growth-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.growth-card{padding:32px;border:1px solid #e1e5ef;border-radius:14px;background:white}.growth-card h3{font-size:1.35rem;margin:16px 0}.growth-card p{line-height:1.75;color:#65728c}.growth-card .text-link{display:inline-block;margin-top:16px}.growth-card .eyebrow{font-size:.72rem}.growth-table{width:100%;border-collapse:collapse;font-size:.95rem}.growth-table th,.growth-table td{text-align:left;padding:22px 18px;border-bottom:1px solid #e1e5ef;vertical-align:top;line-height:1.7}.growth-table th{background:#f4f6fa;color:#303f75}.growth-form-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}.growth-form{padding:40px;background:#f6f7fb;border:1px solid #e1e5ef;border-radius:16px}.growth-form h2{margin-top:0}.growth-form .field input,.growth-form .field select,.growth-form .field textarea{background:white;min-height:48px}.growth-form .form-grid{gap:22px}.growth-form .field textarea{min-height:130px}.growth-form .consent-field{display:flex;align-items:flex-start;gap:12px;line-height:1.6;font-size:.88rem;margin:24px 0}.growth-form input[type=checkbox]{width:18px;height:18px;flex-shrink:0;margin-top:4px}.growth-form .is-success{color:#245443;background:#eef6f1;padding:20px;border-radius:8px}.growth-form [type=submit]:disabled{opacity:.65;cursor:wait}.growth-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.growth-aside h2{font-size:2rem}.growth-aside p,.growth-aside li{color:#65728c;line-height:1.85}.growth-aside ol{padding-left:22px}.growth-note{border-left:3px solid #e8202b;background:#f6f7fb;padding:24px;margin:30px 0}.growth-banner{display:flex;justify-content:space-between;gap:40px;align-items:center;padding:48px;background:#303f75;border-radius:18px;color:white}.growth-banner h2{color:white;margin:10px 0;font-size:2rem}.growth-banner p{color:#dbe0ee;max-width:650px;line-height:1.7}.growth-banner .eyebrow{color:#ffbfc4}.analytics-choice{position:fixed;bottom:18px;left:18px;right:18px;margin:auto;max-width:1060px;z-index:1000;border:1px solid #d9dfea;background:white;box-shadow:0 10px 45px #18244125;border-radius:12px;padding:20px 24px;display:flex;align-items:center;gap:30px;color:#303f75}.analytics-choice p{font-size:.82rem;line-height:1.55;margin:6px 0 0;color:#596780}.analytics-actions{display:flex;gap:12px;flex-shrink:0}.analytics-actions button{border:1px solid #cfd6e6;border-radius:7px;padding:12px 15px;background:white;color:#303f75;font:inherit;font-size:.84rem;cursor:pointer}.analytics-actions [data-choice=accepted]{background:#e8202b;color:white;border-color:#e8202b}.analytics-settings{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0}.growth-project-links{display:flex;flex-wrap:wrap;gap:15px;margin:26px 0}.growth-project-links a{border:1px solid #dce2ee;padding:14px 18px;border-radius:8px}.growth-form :focus-visible,.analytics-choice :focus-visible{outline:3px solid #303f75;outline-offset:3px}@media(max-width:900px){.growth-hero,.growth-form-layout{grid-template-columns:1fr;gap:35px}.growth-hero img{aspect-ratio:1.7}.growth-grid{grid-template-columns:1fr 1fr}.growth-banner{align-items:start;flex-direction:column}.analytics-choice{align-items:start;flex-direction:column;gap:14px}.growth-table-wrap{overflow:auto}}@media(max-width:600px){.growth-hero{padding-block:35px 45px}.growth-hero h1{font-size:2.55rem}.growth-grid{grid-template-columns:1fr}.growth-form{padding:24px 18px}.growth-banner{padding:28px}.growth-table{min-width:640px}.analytics-choice{left:10px;right:10px;bottom:10px;padding:16px}.analytics-actions{width:100%}.analytics-actions button{flex:1}.growth-card{padding:26px}}


/* /assets/reference-theme.css */
/* SCA reference theme. Final cascade layer; page structure and brand assets stay intact. */
:root {
  --ink: #183244;
  --muted: #566b79;
  --blue: #1663c9;
  --accent: #1663c9;
  --line: #dbe4eb;
  --soft: #f7f9fa;
  --max: 1512px;
  --theme-shadow: 0 14px 36px #18324408;
  --theme-font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

body,
body:has(.brand-page-fuji),
body:has(.product-page.brand-page-mhi) {
  --ink: #183244;
  --muted: #566b79;
  --line: #dbe4eb;
  --soft: #f7f9fa;
  font-family: var(--theme-font);
  font-size: 16px;
  line-height: 1.65;
  color: var(--ink);
  background: #fff;
}
body:has(.brand-page-fuji) { --blue: #e11128; --accent: #e11128; }
body:has(.brand-page-mhi) { --blue: #bd193c; --accent: #bd193c; }
.wrap { width: min(1512px, calc(100% - 80px)); }
html { scroll-padding-top: 120px; }
main h1, main h2, main h3 {
  font-family: var(--theme-font);
  font-weight: 600;
  letter-spacing: -.045em;
  text-wrap: balance;
}
main p { text-wrap: pretty; }
main h1, .page-hero h1, .application-page-heading .page-hero h1 {
  font-size: clamp(38px, 3.35vw, 58px);
  line-height: 1.08;
  font-weight: 650;
}
main h2, .section-heading h2, .intro h2, .project-copy h2,
.istanbul-strip h2, .contact-band h2 {
  font-size: clamp(31px, 2.8vw, 46px);
  line-height: 1.13;
}
main h3 { line-height: 1.3; letter-spacing: -.03em; }
.section { padding-block: 82px; }
.section-soft { background: #f7f9fa; }
.section-dark { background: #19384d; }
.section-heading { gap: 42px; margin-bottom: 32px; }
.eyebrow, .brand-page .eyebrow, .product-page .eyebrow {
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .13em;
  line-height: 1.5;
  margin-bottom: 15px;
}
.small-rule { background: var(--blue); }

/* Navigation and controls use the restrained SCA geometry. */
.header { background: #ffffffef; border-color: var(--line); }
.header-inner { min-height: 86px; }
.header nav a { font-size: 14px; font-weight: 550; }
.header-contact {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  font-size: 14px;
  border-radius: 10px;
  background: #fff;
  transition: border-color .2s, background .2s;
}
.header-contact:hover { border-color: var(--blue); background: var(--soft); }
.button, .brand-page .brand-button, .product-actions .brand-button,
.product-brief .brand-button {
  min-height: 49px;
  padding: 12px 19px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  box-shadow: none;
  transition: color .2s, background .2s, border-color .2s, transform .2s;
}
.button:hover, .brand-page .brand-button:hover { transform: translateY(-2px); }
.button:not(.button-outline):not(.button-white):hover { background: #183244; }
.button-outline { background: #fff; color: var(--ink); border-color: var(--line); }
.button-outline:hover { color: var(--blue); border-color: var(--blue); background: #fff; }
.button-white { color: #183244; }
.text-link, .brand-page .brand-inline-link,
.product-actions .brand-inline-link, .brand-page .brand-call {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
}
.breadcrumbs, body:has(.brand-page) .breadcrumbs {
  padding-block: 23px;
  font-size: 13px;
  gap: 8px 12px;
  color: #566b79;
}
.breadcrumbs [aria-current] { color: var(--blue); }
.breadcrumbs a:hover { color: var(--blue); }

/* Keep the existing home image and overlay, with a quieter type scale. */
.hero, .hero-inner { min-height: 610px; }
.hero-inner { padding-block: 74px; }
.hero h1 { font-size: clamp(38px, 3.35vw, 58px); line-height: 1.08; letter-spacing: -.045em; }
.hero-copy { width: 620px; }
.hero-copy > p { font-size: 17px; line-height: 1.7; margin-top: 24px; color: #566b79; }
.hero-actions { gap: 24px; margin-top: 26px; }
.credentials-inner { padding-block: 26px; }
.credentials strong { font-size: 27px; letter-spacing: -.035em; }
.credentials span { font-size: 13px; }
.intro { gap: 70px; }
.intro > div:last-child { padding-top: 24px; }
.service-row h3 { font-size: 25px; font-weight: 600; }
.service-row p { font-size: 15px; line-height: 1.65; }
.service-row:hover { background: #edf4fc; }
.project-feature { gap: 60px; }
.project-copy > p { font-size: 16px; line-height: 1.7; }
.project-visual { border-radius: 22px; overflow: hidden; box-shadow: var(--theme-shadow); }
.image-label, .hero-caption { border-radius: 6px; font-size: 11px; }
.editorial-grid { gap: 18px; }
.editorial-card {
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  transition: border-color .2s, box-shadow .2s, transform .2s;
}
.editorial-card:hover { border-color: #b9cfdf; box-shadow: var(--theme-shadow); transform: translateY(-2px); }
.editorial-card h3 { font-size: 27px; }
.editorial-card p { font-size: 15px; line-height: 1.65; }
.article-index { font-size: 29px; margin-bottom: 32px; }
.sector-grid h3 { font-size: 25px; }
.sector-grid p { font-size: 15px; color: #ccdae3; line-height: 1.65; }
.sector-foot { font-size: 13px; }
.istanbul-strip { padding-block: 64px; background: var(--soft); }
.contact-band { background: #19384d; padding-block: 52px; }
.contact-band .eyebrow { color: #c1d8e8; }
.footer { background: #102738; color: #bacbd7; }
.footer-bottom { border-color: #ffffff24; }
.footer h3 { font-size: 14px; }
.footer-grid > div:not(:first-child) > a { font-size: 14px; }

/* General information pages retain their prose and sidebar layout. */
.page-hero, .application-page-heading .page-hero { padding-block: 36px 48px; background: var(--soft); }
.page-hero p, .application-page-heading .page-hero p { font-size: 17px; line-height: 1.7; margin-top: 22px; }
.detail-layout { padding-block: 58px 78px; gap: 64px; }
.prose h2 { font-size: clamp(28px, 2.4vw, 36px); line-height: 1.2; }
.prose h3 { font-size: 22px; }
.prose p, .prose li { font-size: 16px; line-height: 1.75; color: #566b79; }
.prose section { margin-bottom: 44px; }
.side-box, .side-contact, .checklist, .technical-note, .contact-form,
.coverage-grid > div { border-radius: 18px; }
.side-box { border-color: var(--line); }
.side-box h2, .side-box h3 { font-size: 17px; }
.side-box a, .side-contact p { font-size: 14px; }
.side-contact h3 { font-size: 22px; }
.faq-list summary { font-size: 17px; font-weight: 550; line-height: 1.5; }
.faq-list details > p { font-size: 16px; line-height: 1.7; }
.related-card { border-radius: 18px; padding: 26px; transition: border-color .2s, box-shadow .2s, transform .2s; }
.related-card:hover { box-shadow: var(--theme-shadow); transform: translateY(-2px); }
.related-card h3 { font-size: 24px; }
.related-card p { font-size: 15px; line-height: 1.65; }
.hub-card { padding: 28px 24px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.hub-card h2 { font-size: 29px; }
.hub-card p { font-size: 16px; line-height: 1.65; }
.hub-grid { gap: 18px; }
.prose-image img, .project-card img, .gallery-grid img { border-radius: 18px; }
.process-grid > div { padding: 25px; border: 1px solid var(--line); border-radius: 18px; }
.process-grid h3 { font-size: 23px; }
.process-grid p { font-size: 15px; line-height: 1.65; }
.process-grid { gap: 18px; }
.field input, .field select, .field textarea { border-color: #c6d5df; border-radius: 10px; font-size: 16px; }
.field label { font-size: 14px; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--blue); }
.contact-form > p { font-size: 15px; line-height: 1.65; }
.contact-form h2, .contact-details h2 { font-size: 31px; }
.tag-list span { border-radius: 7px; font-size: 13px; }
.application-gallery { gap: 40px 28px; padding-top: 46px; }
.application-card-photo { border-radius: 18px; }
.application-card h2, .application-card-featured h2 { font-size: clamp(28px, 2.4vw, 36px); }
.application-card p, .application-card-featured p { font-size: 16px; line-height: 1.7; }
.application-card-featured { border: 1px solid var(--line); border-radius: 18px; overflow: hidden; }
.application-card-featured .application-card-photo { border-radius: 0; }
.application-card-featured .application-card-copy { padding: 34px; }
.vrf-brands { padding-block: 40px; }
.vrf-brands-caption h2 { font-size: 26px; }

/* Distinct manufacturer identities sit on the same SCA surface and type system. */
.brand-page {
  --brand-accent: #bd193c;
  --brand-tint: #fcf0f2;
  --brand-dark: #19384d;
  --brand-ink: #183244;
  --brand-muted: #566b79;
  font-family: var(--theme-font);
  color: var(--brand-ink);
}
.brand-page.brand-page-fuji {
  --brand-accent: #e11128;
  --brand-tint: #fff1f3;
  --brand-dark: #2b2b29;
  --brand-ink: #183244;
  --brand-muted: #566b79;
}
.brand-page h2, .brand-page.brand-page-fuji h2,
.product-page h2 { font-size: clamp(31px, 2.8vw, 46px); line-height: 1.13; font-weight: 600; }
.brand-page p { line-height: 1.7; }
.brand-page .eyebrow, .brand-page.brand-page-fuji .eyebrow { color: var(--brand-accent); }
.brand-page section[id], .product-page section[id] { scroll-margin-top: 112px; }
.mhi-hero-grid, .fuji-hero-grid { gap: 36px; padding-block: 24px 40px; }
.fuji-hero { padding-top: 0; }
.mhi-hero h1, .fuji-hero h1 {
  font-family: var(--theme-font);
  font-size: clamp(38px, 3.35vw, 58px);
  line-height: 1.08;
  font-weight: 650;
  letter-spacing: -.045em;
  color: var(--brand-ink);
  max-width: 680px;
}
.mhi-hero h1 > span, .fuji-hero h1 > span {
  font-size: clamp(24px, 2.15vw, 35px);
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -.04em;
  color: var(--brand-accent);
  margin-bottom: 12px;
}
.fuji-hero h1 > span .fuji-word-black { color: #2b2b29; }
.brand-hero-copy > p, .fuji-hero .brand-hero-copy > p:not(.fuji-hero-lead) {
  font-size: 17px;
  line-height: 1.7;
  color: var(--brand-muted);
  max-width: 570px;
}
.brand-hero-copy > .fuji-hero-lead { font-size: clamp(22px, 1.65vw, 28px); line-height: 1.3; font-weight: 550; color: var(--brand-ink); }
.brand-actions { gap: 12px 22px; margin-top: 26px; }
.brand-official-logo { margin-bottom: 26px; }
.hero-rule { height: 2px; width: 40px; margin-block: 22px; }
.hero-explore { font-size: 12px; }
.mhi-hero-scene, .brand-page .fuji-hero-scene {
  border: 1px solid var(--line);
  border-radius: 22px;
  box-shadow: 0 18px 50px #1533420d;
}
.mhi-hero-scene figcaption, .fuji-hero-scene figcaption { font-size: 11px; line-height: 1.5; letter-spacing: .07em; }
.fuji-hero-bottom { padding-block: 21px; border-color: var(--line); font-size: 12px; }
.fuji-hero-bottom > a { font-size: 14px; }
.brand-section-nav { border-color: var(--line); }
.brand-section-nav > .wrap { padding-block: 20px; }
.brand-section-nav .wrap > span { font-size: 12px; }
.brand-section-nav a, .brand-page-fuji .brand-section-nav a { font-size: 14px; color: #566b79; }
.brand-page-fuji .brand-section-nav a:hover { color: var(--brand-accent); }
.project-steps, .brand-page-fuji .project-steps { background: #f7f9fa; border-color: var(--line); padding-block: 34px; }
.brand-page .steps-label h2 { font-size: 25px; line-height: 1.25; }
.steps-label .eyebrow { font-size: 11px; }
.steps-label > a { font-size: 13px; }
.process-card, .brand-page-fuji .process-card {
  padding: 24px;
  border: 1px solid var(--line);
  border-top: 3px solid var(--brand-accent);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 24px #18324404;
}
.process-card > svg { stroke: var(--brand-accent); }
.process-card h3 { font-size: 18px; font-weight: 600; line-height: 1.3; }
.process-card p { font-size: 14px; line-height: 1.65; }
.step-index { font-size: 12px; color: #6e8391; }
.architectural-section, .brand-page-fuji .architectural-section { padding-block: 82px; gap: 42px; }
.architectural-photo > img, .brand-page-fuji .architectural-photo > img { border-radius: 22px; }
.architectural-copy p { font-size: 16px; line-height: 1.7; }
.architectural-photo > figcaption, .brand-page-fuji .architectural-photo > figcaption { font-size: 12px; color: #566b79; }
.architectural-photo-label, .brand-page-fuji .architectural-photo-label { font-size: 11px; border-radius: 6px; color: #334e60; }
.brand-audience, .brand-page-fuji .brand-audience { font-size: 13px; color: #566b79; border-color: var(--line); }
.brand-section-heading { gap: 42px; margin-bottom: 32px; }
.brand-section-heading > p { font-size: 16px; line-height: 1.7; max-width: 420px; }
.brand-family-section, .brand-page-fuji .brand-family-section { padding-block: 82px; background: #f7f9fa; }
.family-collection { gap: 18px; }
.brand-family, .brand-page-fuji .brand-family {
  border: 1px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 28px #18324404;
  transition: border-color .2s, box-shadow .2s, transform .2s;
}
.brand-family:hover, .brand-page-fuji .brand-family:hover { border-color: #b9cfdf; box-shadow: var(--theme-shadow); transform: translateY(-2px); }
.family-visual, .brand-page-fuji .family-visual { background: #f7f9fa; border-radius: 12px; }
.family-copy { padding: 26px; }
.family-copy h3, .brand-page-fuji .family-copy h3 { font-size: clamp(26px, 2.3vw, 35px); line-height: 1.2; font-weight: 600; color: var(--brand-ink); }
.family-copy > p, .brand-page-fuji .family-copy > p { font-size: 16px; line-height: 1.65; }
.family-copy .eyebrow { font-size: 11px; }
.family-copy dl { font-size: 13px; border-color: var(--line); }
.family-copy dt, .brand-page-fuji .family-copy dt { font-size: 12px; color: #566b79; }
.family-copy dd { font-size: 14px; color: var(--brand-ink); }
.brand-page-fuji .family-copy dd { font-size: 21px; color: var(--brand-ink); }
.brand-page .family-copy .brand-inline-link, .brand-page-fuji .family-copy .brand-inline-link { font-size: 14px; }
.family-index { font-size: 12px; }
.family-visual-note, .brand-data-note, .brand-page-fuji .brand-data-note { font-size: 12px; line-height: 1.65; color: #566b79; }
.brand-unit-section { padding-block: 82px; }
.unit-tabs { border-color: var(--line); }
.unit-tabs button { font-size: 15px; padding: 18px; }
.unit-tabs button > span:first-child { font-size: 11px; }
.unit-panel, .brand-page-fuji .unit-panel { border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: #f7f9fa; }
.unit-panel-visual, .brand-page-fuji .unit-panel-visual { background: #fff; border-color: var(--line); }
.unit-panel-visual figcaption { font-size: 12px; color: #566b79; }
.unit-panel-copy h3 { font-size: 29px; }
.unit-panel-copy p { font-size: 16px; line-height: 1.65; }
.unit-panel-copy li { font-size: 15px; line-height: 1.65; }
.brand-coordination { padding-block: 78px; }
.coordination-layout { gap: 70px; }
.brand-coordination h2, .brand-coordination h3 { color: #fff; }
.coordination-intro > .eyebrow { color: #c1d8e8; }
.coordination-intro > p, .coordination-item p { font-size: 16px; line-height: 1.65; color: #ccdae3; }
.coordination-item h3 { font-size: 22px; font-weight: 550; }
.coordination-item > span, .coordination-sketch > span { font-size: 12px; }
.project-brief { gap: 70px; padding-block: 72px; }
.project-brief > div > p { font-size: 16px; line-height: 1.7; }
.brief-documents span, .brand-page-fuji .brief-documents span { font-size: 12px; border-color: var(--line); border-radius: 7px; background: #fff; color: #566b79; }
.brand-docs { gap: 70px; padding-block: 72px; border-color: var(--line); }
.brand-docs > div > p { font-size: 16px; line-height: 1.7; }
.brand-doc-link { gap: 18px; padding-block: 20px; border-color: var(--line); }
.brand-doc-link > span:first-child { font-size: 11px; border-radius: 7px; }
.brand-doc-link strong { font-size: 15px; font-weight: 600; }
.brand-doc-link small { font-size: 12px; }
.brand-docs .faq-list summary { font-size: 17px; line-height: 1.5; }
.brand-docs .faq-list details > p { font-size: 16px; line-height: 1.7; }
.brand-operations, .brand-page-fuji .brand-operations { background: #f7f9fa; border-color: var(--line); padding-block: 36px; }
.brand-page .brand-operations h2, .brand-page-fuji .brand-operations h2 { font-size: 28px; line-height: 1.2; }
.brand-operations .eyebrow { font-size: 11px; }
.brand-operations p { font-size: 15px; line-height: 1.65; }
.brand-operations .brand-inline-link, .brand-crosslink .brand-inline-link { font-size: 14px; }
.brand-crosslink p { font-size: 14px; line-height: 1.65; }

/* Model catalogue and technical pages use readable figures, not miniature labels. */
.product-page { --product-line: #dbe4eb; --product-soft: #f7f9fa; --product-deep: #19384d; }
.product-page.brand-page-fuji { --product-deep: #2b2b29; }
.product-hero { gap: 28px 42px; padding-block: 24px 40px; }
.product-hero h1 {
  font-size: clamp(34px, 3.05vw, 52px);
  font-weight: 650;
  line-height: 1.13;
  letter-spacing: -.045em;
  color: var(--brand-ink);
  overflow-wrap: anywhere;
  text-wrap: initial;
}
.product-hero h1 > span { font-size: clamp(22px, 1.65vw, 28px); line-height: 1.3; font-weight: 550; letter-spacing: -.035em; margin-bottom: 16px; }
.product-hero-copy .eyebrow { font-size: 12px; }
.product-hero-copy > p { font-size: 17px; line-height: 1.7; max-width: 570px; margin-top: 22px; }
.product-actions { gap: 12px 22px; margin-top: 26px; }
.product-hero-foot { font-size: 12px; line-height: 1.6; margin-top: 28px; }
.product-stage, .brand-page-mhi .product-stage {
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(140deg, #fff, #f3f7fa);
  box-shadow: 0 18px 45px #16344808;
}
.product-stage.has-architecture { background: #19384d; }
.product-stage-label { font-size: 11px; letter-spacing: .1em; color: #566b79; }
.product-stage figcaption { font-size: 12px; color: #566b79; }
.product-stage.has-architecture figcaption { color: #fff; }
.product-stage.has-architecture .product-stage-label { border-radius: 6px; }
.product-metrics { border: 1px solid var(--line); border-radius: 18px; background: #fff; padding-block: 24px; }
.product-metrics > div:first-child { padding-left: 26px; }
.product-metrics > div:last-child { padding-right: 26px; }
.product-metrics dt { font-size: 12px; line-height: 1.6; color: #566b79; }
.product-metrics dd { font-size: clamp(23px, 1.85vw, 28px); line-height: 1.25; color: var(--brand-accent); }
.product-metrics > div:last-child dd { font-size: 18px; line-height: 1.5; color: var(--brand-ink); }
.product-section-nav > .wrap { min-height: 64px; padding-block: 18px; }
.product-section-nav .wrap > span { font-size: 13px; }
.product-section-nav a { font-size: 14px; color: #d3e1e9; }
.brand-page-mhi .product-section-nav { background: #19384d; border-bottom-color: #bd193c; }
.product-overview, .product-tech-grid, .product-faq, .product-brief { gap: 70px; }
.product-overview, .product-placement, .product-faq { padding-block: 82px; }
.product-overview-copy > p, .product-tech-intro > p,
.product-placement-heading > p, .product-brief p { font-size: 16px; line-height: 1.7; }
.product-use-tags { font-size: 13px; color: #566b79; }
.product-model-note { border-radius: 0 12px 12px 0; padding: 20px 22px; }
.product-model-note h3 { font-size: 16px; }
.product-model-note ul { font-size: 14px; line-height: 1.7; color: #566b79; }
.product-technical { background: #f7f9fa; padding-block: 78px; border-color: var(--line); }
.product-catalog-link { border-color: var(--line); }
.catalog-pdf { font-size: 11px; border-color: var(--line); border-radius: 7px; }
.product-catalog-link strong { font-size: 15px; }
.product-catalog-link small { font-size: 12px; color: #566b79; }
.product-spec-sheet { border-color: var(--line); border-radius: 18px; overflow: hidden; box-shadow: var(--theme-shadow); }
.spec-sheet-head { background: var(--brand-dark); padding: 26px 28px; }
.spec-sheet-head > span { font-size: 11px; letter-spacing: .1em; }
.spec-sheet-head > strong { font-size: 20px; font-weight: 600; }
.product-spec-sheet dl > div { font-size: 14px; line-height: 1.65; border-color: #e5ecf1; padding-block: 15px; }
.product-spec-sheet dt { color: #566b79; }
.product-spec-sheet dd { color: #183244; font-weight: 600; }
.product-spec-sheet > p { font-size: 12px; line-height: 1.65; color: #566b79; }
.product-placement-heading { gap: 20px 70px; margin-bottom: 32px; }
.product-placement-grid { gap: 18px; }
.product-placement-grid article { border: 1px solid var(--line); border-top: 2px solid var(--brand-accent); border-radius: 18px; background: #f7f9fa; }
.product-placement-grid article:hover { background: #fff; }
.product-placement-grid article > span { font-size: 12px; }
.product-placement-grid h3 { font-size: 20px; font-weight: 600; line-height: 1.3; }
.product-placement-grid p { font-size: 15px; line-height: 1.65; }
.product-related { padding-block: 64px; background: #f7f9fa; border-color: var(--line); }
.product-related-heading > a { font-size: 14px; }
.related-model-grid > a { border-color: var(--line); border-radius: 18px; padding: 25px; transition: border-color .2s, box-shadow .2s, transform .2s; }
.related-model-grid > a:hover { box-shadow: var(--theme-shadow); transform: translateY(-2px); }
.related-model-grid > a > span:first-child { font-size: 12px; color: #566b79; }
.related-model-grid h3 { font-size: 21px; font-weight: 600; }
.related-model-grid dt { font-size: 12px; color: #566b79; }
.related-model-grid dd { font-size: 16px; }
.related-model-foot { font-size: 13px; }
.product-faq .faq-list summary { font-size: 17px; line-height: 1.5; }
.product-faq .faq-list p { font-size: 16px; line-height: 1.7; }
.product-brief { padding-block: 64px 78px; border-color: var(--line); }
.product-brief-list { font-size: 12px; gap: 10px 20px; border-color: var(--line); }
.product-service { background: #f7f9fa; border-color: var(--line); padding-block: 36px; }
.product-service .eyebrow { font-size: 11px; }
.product-service h2 { font-size: 28px; line-height: 1.2; }
.product-service p { font-size: 15px; line-height: 1.65; }
.product-service a { font-size: 14px; }
.model-index-hero { gap: 64px; padding-block: 24px 40px; }
.model-index-hero h1 { font-size: clamp(38px, 3.35vw, 58px); line-height: 1.08; font-weight: 650; }
.model-index-hero > div > p { font-size: 17px; line-height: 1.7; }
.model-index-hero .brand-inline-link { font-size: 14px; }
.model-index-stats { border-radius: 18px; background: var(--brand-dark); box-shadow: var(--theme-shadow); }
.model-index-stats > span { font-size: 11px; }
.model-index-stats > strong { font-size: 68px; font-weight: 550; }
.model-index-hero .model-index-stats > p { font-size: 15px; line-height: 1.65; color: #d3e1e9; }
.model-index-stats dl { font-size: 13px; }
.model-filter { background: #f7f9fa; border-color: var(--line); padding: 28px; border-radius: 18px; }
.model-filter label { font-size: 13px; }
.model-search input, .model-filter select { font-size: 16px; border-color: #c6d5df; border-radius: 10px; color: #183244; }
.model-search input::placeholder { color: #6e8391; }
.model-filter-types button { font-size: 13px; border-radius: 8px; padding: 8px 13px; border-color: var(--line); color: #566b79; }
.model-filter-types button[aria-pressed=true] { background: var(--brand-dark); border-color: var(--brand-dark); }
.model-filter-bottom > [role=status] { font-size: 13px; color: #566b79; }
.model-source-note { font-size: 13px; line-height: 1.65; color: #566b79; }
.model-group-heading .eyebrow { font-size: 11px; }
.model-group-heading h2 { font-size: 28px; line-height: 1.25; }
.model-group-heading p { font-size: 15px; line-height: 1.65; }
.model-count { font-size: 12px; border-color: var(--line); border-radius: 7px; background: #f7f9fa; color: #566b79; }
.model-table-scroll { border-color: var(--line); border-radius: 14px; }
.model-table { font-size: 14px; line-height: 1.5; }
.model-table th, .model-table td { padding: 17px 20px; }
.model-table thead { font-size: 12px; color: #566b79; }
.model-table thead th { background: #f7f9fa; }
.model-table td { color: #566b79; }
.model-table tbody tr { border-color: #e5ecf1; }
.model-table tbody tr:hover { background: #f7f9fa; }
.model-detail-link { font-size: 13px; color: #183244; }
.model-empty { border-color: var(--line); border-radius: 18px; }
.model-empty h2 { font-size: 27px; }
.model-empty p { font-size: 16px; }
.model-empty button { font-size: 14px; padding: 12px 19px; border-radius: 10px; }
.model-index-return .brand-inline-link { font-size: 14px; }
.brand-product-directory > .directory-link-panel { border-color: var(--line); border-left-color: var(--brand-accent); border-radius: 18px; background: #f7f9fa; }
.brand-product-directory h2 { font-size: 29px; line-height: 1.2; }
.brand-product-directory p { font-size: 16px; line-height: 1.65; }
.brand-product-directory .eyebrow { font-size: 11px; }
.brand-product-directory a { font-size: 14px; }

/* Tablet: maintain the established columns, adding room for readable copy. */
@media (max-width: 1200px) and (min-width: 1021px) {
  .header-inner { gap: 17px; }
  .header nav { gap: 13px; }
  .header nav a, .header-contact { font-size: 13px; }
  .header-contact { padding-inline: 12px; }
}
@media (max-width: 1020px) {
  .wrap { width: calc(100% - 56px); }
  .header-inner { min-height: 80px; }
  .header nav { top: 80px; }
  .header nav a { font-size: 16px; }
  .hero, .hero-inner { min-height: 580px; }
  .hero h1 { font-size: clamp(38px, 4.4vw, 48px); }
  .hero-inner { padding-block: 56px; }
  .intro, .project-feature { gap: 36px; }
  .section { padding-block: 66px; }
  .detail-layout { gap: 36px; }
  .mhi-hero-grid, .fuji-hero-grid { gap: 28px; }
  .mhi-hero h1, .fuji-hero h1 { font-size: clamp(38px, 4.2vw, 48px); }
  .mhi-hero h1 > span, .fuji-hero h1 > span { font-size: 26px; }
  .brand-hero-copy > p, .fuji-hero .brand-hero-copy > p:not(.fuji-hero-lead) { font-size: 16px; }
  .brand-page .brand-button { font-size: 14px; padding-inline: 17px; }
  .steps-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .brand-page .steps-label h2 { font-size: 25px; }
  .architectural-section, .brand-page-fuji .architectural-section { gap: 30px; padding-block: 66px; }
  .brand-section-heading { gap: 28px; }
  .brand-section-heading > p { max-width: 360px; }
  .brand-family-section, .brand-page-fuji .brand-family-section, .brand-unit-section { padding-block: 66px; }
  .family-copy { padding: 23px; }
  .family-copy > p { font-size: 15px; }
  .coordination-layout, .project-brief, .brand-docs { gap: 40px; }
  .unit-panel-copy, .brand-page-fuji .unit-panel-copy { padding: 30px; }
  .product-overview, .product-tech-grid, .product-faq, .product-brief { gap: 40px; }
  .product-hero { gap: 28px 32px; }
  .product-hero h1 { font-size: clamp(34px, 3.8vw, 42px); }
  .product-hero-copy > p { font-size: 16px; }
  .product-placement-heading { gap: 24px 40px; }
  .model-index-hero { gap: 40px; }
  .model-index-hero h1 { font-size: 42px; }
}

/* Mobile: preserve each brand's media order and the functional catalogue filters. */
@media (max-width: 760px) {
  html { scroll-padding-top: 95px; }
  .wrap, .product-page .wrap { width: calc(100% - 40px); }
  .header-inner { min-height: 76px; }
  .header-contact { display: none; }
  .header nav { top: 76px; }
  .section { padding-block: 52px; }
  main h1, .page-hero h1, .application-page-heading .page-hero h1 { font-size: clamp(34px, 8.4vw, 44px); line-height: 1.1; }
  main h2, .section-heading h2, .intro h2, .project-copy h2,
  .istanbul-strip h2, .contact-band h2,
  .brand-page h2, .brand-page.brand-page-fuji h2, .product-page h2 { font-size: clamp(30px, 7vw, 36px); line-height: 1.14; }
  .section-heading { gap: 22px; margin-bottom: 28px; }
  .eyebrow, .brand-page .eyebrow, .product-page .eyebrow { font-size: 11px; letter-spacing: .11em; margin-bottom: 14px; }
  .button, .brand-page .brand-button, .product-actions .brand-button, .product-brief .brand-button { min-height: 48px; font-size: 14px; padding: 12px 17px; }
  .brand-page .brand-inline-link, .brand-page .brand-call, .text-link { font-size: 14px; }
  .breadcrumbs, body:has(.brand-page) .breadcrumbs { font-size: 12px; padding-block: 19px; }
  .hero, .hero-inner { min-height: 700px; }
  .hero-inner { padding-top: 46px; padding-bottom: 270px; }
  .hero h1 { font-size: clamp(36px, 8.5vw, 48px); }
  .hero-copy > p { font-size: 16px; line-height: 1.7; margin-top: 22px; }
  .hero-actions { gap: 20px; margin-top: 24px; }
  .hero-image { height: 360px; }
  .credentials strong { font-size: 18px; }
  .credentials span { font-size: 11px; line-height: 1.6; }
  .credentials-inner > div { padding-inline: 12px; }
  .intro { gap: 20px; }
  .intro > div:last-child { padding-top: 0; }
  .service-row h3 { font-size: 22px; }
  .service-row p { font-size: 15px; }
  .editorial-card { padding: 24px; }
  .editorial-card h3 { font-size: 26px; }
  .editorial-grid { gap: 18px; }
  .article-index { margin-bottom: 26px; }
  .sector-grid h3 { font-size: 23px; }
  .sector-grid p { font-size: 15px; }
  .sector-foot { font-size: 13px; }
  .istanbul-strip, .contact-band { padding-block: 42px; }
  .contact-band-inner { gap: 25px; }
  .page-hero, .application-page-heading .page-hero { padding-block: 28px 38px; }
  .page-hero p, .application-page-heading .page-hero p { font-size: 16px; line-height: 1.7; }
  .detail-layout { padding-block: 40px 52px; gap: 24px; }
  .prose h2 { font-size: 28px; }
  .prose p, .prose li { font-size: 16px; }
  .prose h3 { font-size: 21px; }
  .side-box h2, .side-box h3 { font-size: 17px; }
  .contact-form h2, .contact-details h2 { font-size: 29px; }
  .contact-form { padding: 24px; }
  .process-grid > div { padding: 22px; }
  .process-grid h3 { font-size: 22px; }
  .hub-card { padding: 24px 20px; grid-template-columns: 28px minmax(0, 1fr); }
  .hub-card h2 { font-size: 26px; }
  .hub-card p { font-size: 16px; }
  .application-gallery { padding-top: 36px; gap: 32px; }
  .application-card-featured { border: 0; border-radius: 0; }
  .application-card-featured .application-card-photo { border-radius: 18px; }
  .application-card-featured .application-card-copy, .application-card-copy { padding: 23px 0 0; }
  .application-card h2, .application-card-featured h2 { font-size: 29px; }
  .application-card p, .application-card-featured p { font-size: 16px; }
  .vrf-brands-caption h2 { font-size: 25px; }
  .brand-page section[id], .product-page section[id] { scroll-margin-top: 95px; }
  .mhi-hero-grid, .fuji-hero-grid { gap: 0; padding-block: 16px 30px; }
  .mhi-hero h1, .fuji-hero h1 { font-size: clamp(36px, 8.5vw, 46px); line-height: 1.08; }
  .mhi-hero h1 > span, .fuji-hero h1 > span { font-size: clamp(24px, 5.5vw, 28px); line-height: 1.2; }
  .brand-hero-copy > p, .fuji-hero .brand-hero-copy > p:not(.fuji-hero-lead) { font-size: 16px; line-height: 1.7; }
  .brand-hero-copy > .fuji-hero-lead { font-size: 22px; line-height: 1.3; margin-top: 24px; }
  .brand-page .mhi-hero-scene, .brand-page .fuji-hero-scene { margin-top: 24px; border-radius: 18px; }
  .mhi-hero-scene figcaption, .fuji-hero-scene figcaption { font-size: 10px; }
  .mhi-hero-scene figcaption { left: 18px; right: 18px; gap: 8px; }
  .brand-actions { gap: 16px 22px; margin-top: 24px; }
  .fuji-hero-bottom { font-size: 11px; padding-block: 18px; }
  .fuji-hero-bottom > a { font-size: 13px; }
  .brand-section-nav a, .brand-page-fuji .brand-section-nav a { font-size: 13px; }
  .brand-section-nav .wrap > div { gap: 13px 22px; }
  .project-steps, .brand-page-fuji .project-steps { padding-block: 28px; }
  .steps-grid { gap: 14px; }
  .process-card, .brand-page-fuji .process-card,
  .brand-page-fuji .process-card:first-child, .brand-page-fuji .process-card:nth-child(3) {
    padding: 22px 18px;
    border: 1px solid var(--line);
    border-top: 3px solid var(--brand-accent);
    border-radius: 16px;
  }
  .process-card h3 { font-size: 17px; }
  .process-card p { font-size: 14px; line-height: 1.65; }
  .process-card > svg { margin-bottom: 16px; }
  .step-index { font-size: 11px; right: 18px; }
  .brand-page .steps-label h2 { font-size: 24px; }
  .steps-label > a { font-size: 13px; }
  .architectural-section, .brand-page-fuji .architectural-section { padding-block: 52px; gap: 26px; }
  .architectural-photo > img, .brand-page-fuji .architectural-photo > img { height: 330px; border-radius: 18px; }
  .architectural-copy p { font-size: 16px; }
  .brand-section-heading > p { font-size: 16px; max-width: none; }
  .brand-family-section, .brand-page-fuji .brand-family-section, .brand-unit-section { padding-block: 52px; }
  .family-copy { padding: 24px; }
  .family-copy h3, .brand-page-fuji .family-copy h3 { font-size: 30px; }
  .family-copy > p, .brand-page-fuji .family-copy > p { font-size: 16px; }
  .brand-page-fuji .family-copy { padding: 24px 6px 16px; }
  .brand-page-fuji .family-copy dd { font-size: 20px; }
  .brand-page .family-copy .brand-inline-link, .brand-page-fuji .family-copy .brand-inline-link { font-size: 14px; gap: 18px; }
  .family-visual-note, .brand-data-note, .brand-page-fuji .brand-data-note { font-size: 12px; }
  .unit-tabs button { font-size: 13px; padding: 15px 9px; gap: 7px; }
  .unit-tabs button > span:first-child { font-size: 10px; }
  .unit-panel-copy, .brand-page-fuji .unit-panel-copy { padding: 27px 24px; }
  .unit-panel-copy h3 { font-size: 28px; }
  .unit-panel-copy p { font-size: 16px; }
  .unit-panel-copy li { font-size: 15px; }
  .brand-coordination { padding-block: 52px; }
  .coordination-layout { gap: 32px; }
  .coordination-intro > p, .coordination-item p { font-size: 16px; }
  .coordination-item h3 { font-size: 21px; }
  .coordination-item { gap: 13px; }
  .project-brief, .brand-docs { padding-block: 52px; gap: 30px; }
  .brand-docs .faq-list summary { font-size: 16px; }
  .brand-docs .faq-list details > p { font-size: 16px; }
  .brand-doc-link { gap: 12px; }
  .brand-doc-link strong { font-size: 14px; }
  .brand-doc-link small { font-size: 12px; }
  .brand-page .brand-operations h2, .brand-page-fuji .brand-operations h2 { font-size: 27px; }
  .brand-operations p { font-size: 15px; }
  .product-hero { padding-block: 15px 30px; gap: 26px; }
  .product-hero h1 { font-size: clamp(30px, 7.5vw, 40px); line-height: 1.16; }
  .product-hero h1 > span { font-size: 22px; margin-bottom: 15px; }
  .product-hero-copy > p { font-size: 16px; line-height: 1.7; }
  .product-hero-copy .eyebrow { font-size: 11px; }
  .product-hero-foot { font-size: 11px; gap: 15px; }
  .product-actions { gap: 18px; }
  .product-stage, .brand-page-mhi .product-stage { border-radius: 18px; }
  .product-stage-label { font-size: 10px; }
  .product-stage figcaption { font-size: 11px; }
  .product-metrics { padding-block: 20px; gap: 18px 0; }
  .product-metrics > div { padding-inline: 20px; }
  .product-metrics > div:first-child { padding-left: 20px; }
  .product-metrics > div:last-child { padding-right: 20px; }
  .product-metrics dt { font-size: 12px; }
  .product-metrics dd { font-size: 23px; }
  .product-metrics > div:last-child dd { font-size: 16px; }
  .product-section-nav .wrap > span { font-size: 12px; }
  .product-section-nav a { font-size: 13px; }
  .product-overview, .product-faq, .product-placement { padding-block: 52px; }
  .product-overview, .product-tech-grid, .product-faq, .product-brief { gap: 26px; }
  .product-overview-copy > p, .product-tech-intro > p,
  .product-placement-heading > p, .product-brief p { font-size: 16px; }
  .product-technical { padding-block: 48px; }
  .product-spec-sheet dl { padding-inline: 20px; }
  .spec-sheet-head { padding: 23px 20px; }
  .product-spec-sheet dl > div { font-size: 14px; gap: 14px; padding-block: 14px; }
  .product-spec-sheet > p { font-size: 12px; padding: 20px; }
  .product-catalog-link strong { font-size: 14px; }
  .product-related { padding-block: 48px; }
  .product-related-heading > a { font-size: 14px; }
  .related-model-grid h3 { font-size: 22px; }
  .product-faq .faq-list summary { font-size: 16px; }
  .product-faq .faq-list p { font-size: 16px; }
  .product-brief { padding-block: 48px; }
  .product-brief-list { font-size: 12px; }
  .product-service h2 { font-size: 27px; }
  .product-service p { font-size: 15px; }
  .model-index-hero { gap: 28px; padding-block: 15px 35px; }
  .model-index-hero h1 { font-size: clamp(34px, 8vw, 42px); }
  .model-index-hero > div > p { font-size: 16px; }
  .model-index-stats { padding: 24px; gap: 0 24px; }
  .model-index-stats > strong { font-size: 52px; }
  .model-index-hero .model-index-stats > p { font-size: 14px; }
  .model-index-stats dl { font-size: 12px; }
  .model-filter { padding: 22px; }
  .model-filter-top { gap: 18px; }
  .model-filter-types button { font-size: 12px; padding: 8px 11px; }
  .model-filter-bottom > [role=status] { font-size: 12px; }
  .model-source-note { font-size: 12px; }
  .model-group-heading h2 { font-size: 25px; }
  .model-group-heading p { font-size: 15px; }
  .model-count { font-size: 11px; }
  .model-table th, .model-table td { padding: 15px 17px; }
  .brand-product-directory > .directory-link-panel { padding: 25px; }
  .brand-product-directory h2 { font-size: 27px; }
  .brand-product-directory p { font-size: 16px; }
  .brand-product-directory a { font-size: 14px; white-space: normal; }
}

@media (max-width: 500px) {
  .product-actions { align-items: flex-start; flex-direction: column; }
  .product-metrics > div:nth-child(2) { padding-right: 20px; }
  .product-metrics > div:last-child { padding: 16px 20px 0; }
  .model-group-heading { flex-wrap: wrap; gap: 12px; }
  .model-count { margin-top: 0; }
  .model-filter { padding: 18px; }
  .product-hero h1 > span { font-size: 21px; }
  .process-grid > div { padding: 20px 17px; }
}
@media (max-width: 380px) {
  .wrap, .product-page .wrap { width: calc(100% - 32px); }
  .mhi-hero h1, .fuji-hero h1 { font-size: 34px; }
  .mhi-hero h1 > span, .fuji-hero h1 > span { font-size: 23px; }
  .hero, .hero-inner { min-height: 760px; }
  .hero h1 { font-size: 34px; }
  .hero-actions .button, .hero-actions .text-link { font-size: 14px; }
  .credentials-inner > div { padding-inline: 8px; }
  .credentials strong { font-size: 16px; }
  .credentials span { font-size: 10px; }
  .brand-page .brand-button { font-size: 13px; gap: 14px; }
  .steps-grid { grid-template-columns: 1fr; }
  .process-card h3 { font-size: 18px; }
  .unit-tabs button { font-size: 12px; gap: 5px; padding-inline: 7px; }
  .unit-tabs button > span:first-child { display: none; }
  .brand-page .family-copy .brand-inline-link { font-size: 13px; }
  .product-hero h1 { font-size: 30px; }
  .model-index-hero h1 { font-size: 34px; }
  .model-index-stats { padding: 21px; gap: 0 18px; }
  .model-index-stats > strong { font-size: 48px; }
  .model-filter-types button { font-size: 12px; padding-inline: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  .button:hover, .brand-page .brand-button:hover, .editorial-card:hover,
  .related-card:hover, .brand-family:hover, .brand-page-fuji .brand-family:hover,
  .related-model-grid > a:hover { transform: none; }
}
@media print {
  .wrap, .product-page .wrap { width: 100%; }
  .product-spec-sheet, .brand-family, .related-card { box-shadow: none; }
  .product-technical, .brand-family-section { background: #fff; }
}


/* /assets/identity-transparent-v3.css */
/* Approved logo: colored on light surfaces, white on dark surfaces. */
.brand .brand-logo {
  display: block;
  width: 152px;
  height: auto;
  max-width: none;
  flex: 0 0 auto;
}
.footer .brand .brand-logo { width: 172px; max-width: 100%; }
.footer-brand > .brand {
  display: inline-flex;
  padding: 0;
  background: transparent;
  border-radius: 0;
}
@media (max-width: 1180px) {
  .header-inner { gap: 24px; }
  .header nav {
    display: none;
    position: absolute;
    top: 86px;
    left: 0;
    right: 0;
    padding: 22px 32px;
    background: #fff;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 20px 30px #18324410;
  }
  .header nav.open { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .header nav a { padding: 14px 0; font-size: 15px; }
  .menu-button { display: inline-flex; margin-left: auto; }
}
@media (max-width: 760px) {
  .brand .brand-logo { width: 134px; }
  .header-inner { gap: 12px; }
  .header nav { top: 76px; padding: 18px 20px; }
  .footer .brand .brand-logo { width: 172px; }
}
@media (max-width: 360px) {
  .brand .brand-logo { width: 124px; }
  .menu-button { gap: 8px; }
}


/* /assets/logo-theme.css */
/* Shared site palette, matched to the approved navy/red logo. */
:root {
  --logo-navy: #303f75;
  --logo-red: #df252a;
  --logo-red-text: #bc1d24;
  --logo-navy-deep: #26315c;
  --logo-muted: #60677a;
  --logo-line: #e0e4ef;
  --logo-soft: #f7f8fc;
  --logo-red-tint: #fff2f3;
}

body,
body:has(.brand-page),
body:has(.brand-page-fuji),
body:has(.product-page.brand-page-mhi) {
  --ink: var(--logo-navy);
  --muted: var(--logo-muted);
  --blue: var(--logo-red);
  --accent: var(--logo-red);
  --line: var(--logo-line);
  --soft: var(--logo-soft);
  --theme-shadow: 0 14px 36px #303f750a;
  color: var(--logo-navy);
}

::selection { background: var(--logo-navy); color: #fff; }
a:focus-visible, button:focus-visible, summary:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline-color: var(--logo-red);
}

/* Navigation: navy identity, red actions and active states. */
.topbar { background: var(--logo-navy); color: #eef0f8; }
.topbar a:hover { color: #ffccd0; }
.top-dot { color: #c6cce1; }
.header { border-color: var(--logo-line); }
.header nav a, .menu-button { color: var(--logo-navy); }
.header nav a:hover, .header nav a[aria-current] {
  color: var(--logo-red-text);
  border-color: var(--logo-red);
}
.header-contact {
  color: var(--logo-red-text);
  border-color: #ebc9cd;
  background: #fff;
}
.header-contact:hover {
  color: #fff;
  border-color: var(--logo-red);
  background: var(--logo-red);
}
.header nav.open { border-color: var(--logo-line); box-shadow: 0 20px 30px #303f7510; }

/* Red is reserved for actions, rules and short emphasis. */
.button:not(.button-outline):not(.button-white) {
  color: #fff;
  background: var(--logo-red);
  border-color: var(--logo-red);
}
.button:not(.button-outline):not(.button-white):hover {
  color: #fff;
  background: var(--logo-red-text);
  border-color: var(--logo-red-text);
}
.button-outline { color: var(--logo-navy); border-color: var(--logo-line); background: #fff; }
.button-outline:hover { color: var(--logo-red-text); border-color: var(--logo-red); background: var(--logo-red-tint); }
.button-white { color: var(--logo-red-text); background: #fff; border-color: #fff; }
.button-white:hover { color: #fff; background: var(--logo-red); border-color: var(--logo-red); }
.text-link { color: var(--logo-navy); }
.text-link:hover, .intro .text-link:hover { color: var(--logo-red-text); }
.eyebrow, .row-number, .application-card-index, .form-status {
  color: var(--logo-red-text);
}
.small-rule { background: var(--logo-red); }
.hero h1 { color: var(--logo-navy); }
.hero h1 span { color: var(--logo-red); }
.hero-copy > p { color: var(--logo-muted); }
.hero { background: #f5f6fa; }
.hero-shade {
  background: linear-gradient(90deg, #f5f6fa 0%, #f5f6fa 32%, #f5f6fad9 43%, #f5f6fa00 70%);
}
.hero-caption { color: #fff; background: #303f75e6; }
.image-label { background: var(--logo-navy); color: #fff; }

/* Neutral surfaces carry the palette without competing with project images. */
.section-soft, .page-hero, .application-page-heading .page-hero,
.istanbul-strip, .side-contact, .checklist, .contact-form,
.coverage-grid > div, .application-card-featured { background: var(--logo-soft); }
.page-hero p, .application-page-heading .page-hero p,
.prose p, .prose li { color: var(--logo-muted); }
.breadcrumbs, body:has(.brand-page) .breadcrumbs { color: var(--logo-muted); }
.breadcrumbs [aria-current], .breadcrumbs a:hover { color: var(--logo-red-text); }
.credentials strong { color: var(--logo-navy); }
.credentials span { color: var(--logo-muted); }
.service-row:hover { background: #f0f2f9; }
.service-row:hover h3, .editorial-card:hover h3,
.application-card:hover h2, .hub-card:hover h2 { color: var(--logo-red-text); }
.editorial-card:hover, .related-card:hover { border-color: #df252a70; }
.article-index { color: #8992b3; }
.row-plus { color: var(--logo-red-text); }
.checklist, .quote-block { border-left-color: var(--logo-red); }
.technical-note, .side-box, .contact-item, .source-links,
.field input, .field select, .field textarea { border-color: var(--logo-line); }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--logo-red); }
th { color: var(--logo-navy); background: var(--logo-soft); }
td { color: var(--logo-muted); }
.faq-list summary > span { color: var(--logo-red-text); }
.source-links a, .contact-item > a { color: var(--logo-red-text); }
.vrf-brand-logo .brand-home-link > span { border-color: var(--logo-line); }
.vrf-brand-logo .brand-home-link:hover > span { color: var(--logo-red-text); border-color: var(--logo-red); }

/* Larger bands use navy; pale text stays readable on their dark surface. */
.section-dark, .contact-band { background: var(--logo-navy); color: #fff; }
.contact-band { border-top: 3px solid var(--logo-red); }
.section-dark h1, .section-dark h2, .section-dark h3,
.contact-band h2 { color: #fff; }
.section-dark .eyebrow, .section-dark .row-number,
.sector-grid .row-number, .contact-band .eyebrow { color: #ffd1d4; }
.section-dark .text-link, .contact-band .contact-phone { color: #fff; }
.section-dark .text-link:hover, .sector-grid > a:hover h3 { color: #ffd1d4; }
.sector-grid, .sector-grid > a { border-color: #ffffff30; }
.sector-grid p, .section-dark .sector-foot { color: #e0e4f2; }
.contact-band .button-white { color: var(--logo-red-text); background: #fff; border-color: #fff; }
.contact-band .button-white:hover { color: #fff; background: var(--logo-red); border-color: var(--logo-red); }
.footer { background: var(--logo-navy-deep); color: #d9deed; }
.footer h3, .footer-operator { color: #fff; }
.footer-grid a:hover, .footer-bottom a:hover { color: #ffd1d4; }
.footer-bottom { border-color: #ffffff25; }

@media (max-width: 760px) {
  .hero-shade {
    background: linear-gradient(180deg, #f5f6fa 0%, #f5f6fa 49%, #f5f6fab3 59%, #f5f6fa00 80%);
  }
}


/* /assets/logo-theme-brands.css */
/* Manufacturer, model and catalogue UI colors follow the approved VRF identity.
   Loaded after logo-theme.css. Manufacturer artwork and PDF canvases are untouched. */

body:has(.brand-page-fuji),
body:has(.brand-page-mhi),
body:has(.product-page.brand-page-mhi),
body:has(.catalogue-page) {
  --ink: var(--logo-navy);
  --blue: var(--logo-red);
  --accent: var(--logo-red);
  --muted: var(--logo-muted);
  --line: var(--logo-line);
  --soft: var(--logo-soft);
}

.brand-page,
.brand-page.brand-page-fuji,
.brand-page.brand-page-mhi,
.product-page,
.product-page.brand-page-fuji,
.catalogue-page {
  --brand-accent: var(--logo-red);
  --brand-tint: var(--logo-red-tint);
  --brand-dark: var(--logo-navy);
  --brand-ink: var(--logo-navy);
  --brand-muted: var(--logo-muted);
  --product-line: var(--logo-line);
  --product-soft: var(--logo-soft);
  --product-deep: var(--logo-navy);
  color: var(--logo-navy);
}

/* Shared manufacturer copy and calls to action. */
.brand-page .eyebrow,
.brand-page.brand-page-fuji .eyebrow,
.product-page .eyebrow,
.product-page.brand-page-fuji .eyebrow {
  color: var(--logo-red-text);
}
.brand-page .brand-button {
  background: var(--logo-red);
  color: #fff;
}
.brand-page .brand-button:hover,
.brand-page.brand-page-fuji .brand-button:hover {
  background: var(--logo-navy);
  color: #fff;
}
.brand-page .brand-inline-link,
.brand-page.brand-page-fuji .brand-inline-link,
.brand-page .brand-call,
.brand-page.brand-page-fuji .brand-call {
  color: var(--logo-navy);
  border-color: var(--logo-line);
}
.brand-page .brand-inline-link:hover,
.brand-page.brand-page-fuji .brand-inline-link:hover,
.brand-page.brand-page-fuji .family-copy .brand-inline-link:hover {
  color: var(--logo-red-text);
  border-color: var(--logo-red);
}
.mhi-hero h1,
.fuji-hero h1,
.fuji-hero h1 > span .fuji-word-black,
.brand-page .family-copy h3,
.brand-page.brand-page-fuji .family-copy h3,
.brand-page .family-copy dd,
.brand-page.brand-page-fuji .family-copy dd {
  color: var(--logo-navy);
}
.mhi-hero h1 > span,
.fuji-hero h1 > span {
  color: var(--logo-red-text);
}
.brand-hero-copy > .fuji-hero-lead {
  color: var(--logo-navy);
}
.brand-page .hero-rule { background: var(--logo-red); }
.brand-page .hero-explore,
.brand-page .fuji-hero-bottom {
  color: var(--logo-muted);
}
.brand-page .hero-explore span,
.brand-page .fuji-hero-bottom > a {
  color: var(--logo-red-text);
}
.brand-page .fuji-hero-bottom { border-color: var(--logo-line); }
.brand-page .mhi-hero-scene,
.brand-page .fuji-hero-scene,
.brand-page.brand-page-fuji .fuji-hero-scene {
  border-color: var(--logo-line);
  background: var(--logo-navy);
}
.brand-page .mhi-hero-scene figcaption,
.brand-page .mhi-hero-scene figcaption span:last-child {
  color: #eef0f8;
}
.brand-page .fuji-hero-scene figcaption {
  background: #303f75f2;
  color: #fff;
  border-top-color: var(--logo-red);
}
.brand-page .fuji-hero-scene figcaption span:last-child {
  color: #eef0f8;
}

/* Process cards, manufacturer tabs and supporting surfaces. */
.brand-page .project-steps,
.brand-page.brand-page-fuji .project-steps,
.brand-page .brand-family-section,
.brand-page.brand-page-fuji .brand-family-section,
.brand-page .family-visual,
.brand-page.brand-page-fuji .family-visual,
.brand-page .unit-panel,
.brand-page.brand-page-fuji .unit-panel,
.brand-page .brand-operations,
.brand-page.brand-page-fuji .brand-operations {
  background: var(--logo-soft);
  border-color: var(--logo-line);
}
.brand-page .process-card,
.brand-page.brand-page-fuji .process-card,
.brand-page.brand-page-fuji .process-card:first-child,
.brand-page.brand-page-fuji .process-card:nth-child(3) {
  background: #fff;
  border-color: var(--logo-line);
  border-top-color: var(--logo-red);
}
.brand-page .process-card > svg,
.brand-page.brand-page-fuji .process-card > svg {
  stroke: var(--logo-red);
}
.brand-page .step-index,
.brand-page.brand-page-fuji .step-index,
.brand-page .family-index,
.brand-page.brand-page-fuji .family-index,
.brand-page .family-copy dt,
.brand-page.brand-page-fuji .family-copy dt,
.brand-page .architectural-photo > figcaption,
.brand-page.brand-page-fuji .architectural-photo > figcaption,
.brand-page .family-visual-note,
.brand-page.brand-page-fuji .family-visual-note,
.brand-page .brand-data-note,
.brand-page.brand-page-fuji .brand-data-note,
.brand-page .unit-panel-visual figcaption,
.brand-page.brand-page-fuji .unit-panel-visual figcaption {
  color: var(--logo-muted);
}
.brand-page .brand-family,
.brand-page.brand-page-fuji .brand-family,
.brand-page .unit-panel-visual,
.brand-page.brand-page-fuji .unit-panel-visual {
  background: #fff;
  border-color: var(--logo-line);
}
.brand-page .brand-family:hover,
.brand-page.brand-page-fuji .brand-family:hover {
  border-color: var(--logo-navy);
}
.brand-page .family-copy dl,
.brand-page .brand-data-note,
.brand-page .steps-label > a,
.brand-page.brand-page-fuji .steps-label > a,
.brand-page .brand-audience,
.brand-page.brand-page-fuji .brand-audience,
.brand-page .brand-docs,
.brand-page.brand-page-fuji .brand-docs,
.brand-page .brand-doc-link,
.brand-page.brand-page-fuji .brand-doc-link {
  border-color: var(--logo-line);
}
.brand-page .brand-audience,
.brand-page.brand-page-fuji .brand-audience {
  color: var(--logo-muted);
}
.brand-page .architectural-photo-label,
.brand-page.brand-page-fuji .architectural-photo-label {
  background: #fffffff0;
  color: var(--logo-navy);
  border-color: var(--logo-line);
}
.brand-page .brand-section-nav,
.brand-page.brand-page-fuji .brand-section-nav {
  background: #fff;
  border-color: var(--logo-line);
}
.brand-page .brand-section-nav .wrap > span {
  color: var(--logo-red-text);
}
.brand-page .brand-section-nav a,
.brand-page.brand-page-fuji .brand-section-nav a {
  color: var(--logo-muted);
}
.brand-page .brand-section-nav a:hover,
.brand-page.brand-page-fuji .brand-section-nav a:hover {
  color: var(--logo-red-text);
  border-color: var(--logo-red);
}
.brand-page .unit-tabs,
.brand-page.brand-page-fuji .unit-tabs {
  border-color: var(--logo-line);
}
.brand-page .unit-tabs button,
.brand-page .unit-tabs button > span:first-child,
.brand-page.brand-page-fuji .unit-tabs button,
.brand-page.brand-page-fuji .unit-tabs button > span:first-child {
  color: var(--logo-muted);
}
.brand-page .unit-tabs button[aria-selected=true],
.brand-page.brand-page-fuji .unit-tabs button[aria-selected=true] {
  color: var(--logo-red-text);
  background: var(--logo-red-tint);
  border-bottom-color: var(--logo-red);
}
.brand-page .unit-tabs button:hover,
.brand-page.brand-page-fuji .unit-tabs button:hover {
  color: var(--logo-red-text);
}
.brand-page .brief-documents span,
.brand-page.brand-page-fuji .brief-documents span {
  background: #fff;
  color: var(--logo-muted);
  border-color: var(--logo-line);
}
.brand-page .brand-doc-link > span:first-child,
.brand-page.brand-page-fuji .brand-doc-link > span:first-child {
  background: var(--logo-red-tint);
  color: var(--logo-red-text);
}
.brand-page .brand-doc-link > span:last-child,
.brand-page .brand-doc-link:hover strong,
.brand-page .brand-inline-link.product-family-link {
  color: var(--logo-red-text);
}

/* Dark coordination bands and route diagrams retain readable light copy. */
.brand-page .brand-coordination,
.brand-page.brand-page-fuji .brand-coordination {
  background: var(--logo-navy);
  color: #fff;
  border-top-color: var(--logo-red);
}
.brand-page .brand-coordination h2,
.brand-page .brand-coordination h3 {
  color: #fff;
}
.brand-page .coordination-intro > .eyebrow,
.brand-page.brand-page-fuji .coordination-intro > .eyebrow {
  color: #ffb8bd;
}
.brand-page .coordination-intro > p,
.brand-page .coordination-item p,
.brand-page.brand-page-fuji .coordination-intro > p,
.brand-page.brand-page-fuji .coordination-item p {
  color: #e2e5f0;
}
.brand-page .coordination-item > span,
.brand-page.brand-page-fuji .coordination-item > span,
.brand-page .coordination-sketch > span,
.brand-page.brand-page-fuji .coordination-sketch > span {
  color: #c9cde1;
}
.brand-page .coordination-sketch .sketch-route,
.brand-page.brand-page-fuji .coordination-sketch .sketch-route {
  stroke: #ffb8bd;
}
.brand-page .coordination-sketch circle,
.brand-page.brand-page-fuji .coordination-sketch circle {
  fill: #ffb8bd;
  stroke: #ffb8bd;
}

/* Model detail pages and model directories. */
.product-page .product-hero h1 { color: var(--logo-navy); }
.product-page .product-hero h1 > span { color: var(--logo-muted); }
.product-page .product-hero-foot,
.product-page .product-metrics dt,
.product-page .product-use-tags,
.product-page .product-model-note ul,
.product-page .product-catalog-link small,
.product-page .product-spec-sheet dt,
.product-page .product-spec-sheet > p,
.product-page .related-model-grid > a > span:first-child,
.product-page .related-model-grid dt,
.product-page .model-source-note,
.product-page .model-filter-bottom > [role=status] {
  color: var(--logo-muted);
}
.product-page .product-hero-foot > span:first-child,
.product-page .product-spec-sheet dd,
.product-page .model-detail-link {
  color: var(--logo-navy);
}
.product-page .product-stage,
.product-page.brand-page-mhi .product-stage {
  background: linear-gradient(140deg, #fff, var(--logo-soft));
  border-color: var(--logo-line);
}
.product-page .product-stage-label,
.product-page .product-stage figcaption {
  color: var(--logo-muted);
}
.product-page .product-stage.has-architecture { background: var(--logo-navy); }
.product-page .product-stage.has-architecture:after {
  background: linear-gradient(0deg, #26315cd6, transparent 40%);
}
.product-page .product-stage.has-architecture .product-stage-label {
  background: #fffffff2;
  color: var(--logo-navy);
}
.product-page .product-stage.has-architecture figcaption { color: #fff; }
.product-page .product-metrics dd { color: var(--logo-red-text); }
.product-page .product-metrics > div:last-child dd { color: var(--logo-navy); }
.product-page .product-section-nav,
.product-page.brand-page-mhi .product-section-nav,
.product-page.brand-page-fuji .product-section-nav {
  background: var(--logo-navy);
  color: #fff;
  border-bottom-color: var(--logo-red);
}
.product-page .product-section-nav a { color: #e2e5f0; }
.product-page .product-section-nav a:hover { color: #fff; }
.product-page .product-technical,
.product-page .product-related,
.product-page .product-service,
.product-page .product-placement-grid article,
.product-page .model-filter,
.product-page .model-count,
.product-page .model-empty,
.product-page .brand-product-directory > .directory-link-panel,
.brand-page .brand-product-directory > .directory-link-panel {
  background: var(--logo-soft);
  border-color: var(--logo-line);
}
.product-page .product-placement-grid article,
.product-page .brand-product-directory > .directory-link-panel,
.brand-page .brand-product-directory > .directory-link-panel {
  border-top-color: var(--logo-red);
}
.product-page .brand-product-directory > .directory-link-panel,
.brand-page .brand-product-directory > .directory-link-panel {
  border-left-color: var(--logo-red);
}
.product-page .product-placement-grid article:hover {
  background: #fff;
  border-color: var(--logo-red);
}
.product-page .product-catalog-link,
.product-page .catalog-pdf,
.product-page .product-spec-sheet,
.product-page .product-spec-sheet dl > div,
.product-page .product-brief,
.product-page .product-brief-list,
.product-page .related-model-grid > a,
.product-page .related-model-grid dl,
.product-page .model-table-scroll,
.product-page .model-table tbody tr {
  border-color: var(--logo-line);
}
.product-page .catalog-pdf,
.product-page .product-placement-grid article > span,
.product-page .related-model-foot > span,
.product-page .model-detail-link > span,
.product-page .model-detail-link:hover,
.product-page .model-table th[scope=row] > a:hover,
.product-page .model-index-hero h1 span {
  color: var(--logo-red-text);
}
.product-page .product-catalog-link:hover,
.product-page .related-model-grid > a:hover {
  border-color: var(--logo-red);
}
.product-page .spec-sheet-head,
.product-page .model-index-stats {
  background: var(--logo-navy);
  color: #fff;
  border-top-color: var(--logo-red);
}
.product-page .spec-sheet-head > strong,
.product-page .model-index-stats > strong,
.product-page .model-index-stats dd { color: #fff; }
.product-page .spec-sheet-head > span,
.product-page .model-index-stats > span,
.product-page .model-index-stats dt {
  color: #c9cde1;
}
.product-page .model-index-stats > p,
.product-page .model-index-hero .model-index-stats > p { color: #e2e5f0; }
.product-page .model-index-stats dl { border-color: #ffffff30; }
.product-page .model-search > svg { stroke: var(--logo-muted); }
.product-page .model-search input,
.product-page .model-filter select,
.product-page .model-filter-types button {
  background: #fff;
  color: var(--logo-navy);
  border-color: var(--logo-line);
}
.product-page .model-search input::placeholder { color: var(--logo-muted); }
.product-page .model-filter-types button[aria-pressed=true] {
  background: var(--logo-navy);
  border-color: var(--logo-navy);
  color: #fff;
}
.product-page .model-filter-types button:hover { border-color: var(--logo-red); }
.product-page .model-count,
.product-page .model-table thead,
.product-page .model-table td,
.product-page .model-empty p { color: var(--logo-muted); }
.product-page .model-table thead,
.product-page .model-table thead th,
.product-page .model-table tbody tr:hover { background: var(--logo-soft); }
.product-page .model-empty button {
  background: var(--logo-red);
  color: #fff;
}
.product-page .model-empty button:hover { background: var(--logo-navy); }

/* Catalogue chrome uses the same palette; actual rendered PDF paper remains white. */
.brand-page.catalogue-page {
  background: var(--logo-soft);
  color: var(--logo-navy);
}
.catalogue-page .catalogue-hero h1 span,
.catalogue-page .catalogue-heading > p,
.catalogue-page .catalogue-chapter p,
.catalogue-page .catalogue-viewer-toolbar p,
.catalogue-page .catalogue-viewer-help,
.catalogue-page .catalogue-pdf-text pre {
  color: var(--logo-muted);
}
.catalogue-page .catalogue-summary,
.catalogue-page .catalogue-summary dl > div,
.catalogue-page .catalogue-chapter,
.catalogue-page .catalogue-chapter-foot,
.catalogue-page .catalogue-viewer,
.catalogue-page .catalogue-pdf-frame,
.catalogue-page .catalogue-archive,
.catalogue-page .catalogue-pdf-controls,
.catalogue-page .catalogue-pdf-controls button,
.catalogue-page .catalogue-pdf-controls input,
.catalogue-page .catalogue-pdf-text {
  border-color: var(--logo-line);
}
.catalogue-page .catalogue-summary,
.catalogue-page .catalogue-chapter,
.catalogue-page .catalogue-viewer,
.catalogue-page .catalogue-pdf-controls button,
.catalogue-page .catalogue-pdf-controls input {
  background: #fff;
}
.catalogue-page .catalogue-summary > strong,
.catalogue-page .catalogue-pdf-controls button,
.catalogue-page .catalogue-pdf-controls input {
  color: var(--logo-navy);
}
.catalogue-page .catalogue-chapter-index,
.catalogue-page .catalogue-chapter-foot,
.catalogue-page .catalogue-viewer-help a {
  color: var(--logo-red-text);
}
.catalogue-page .catalogue-chapter:hover,
.catalogue-page .catalogue-pdf-controls button:not(:disabled):hover {
  border-color: var(--logo-red);
}
.catalogue-page .catalogue-pdf-controls button:not(:disabled):hover {
  background: var(--logo-red-tint);
}
.catalogue-page .catalogue-archive,
.catalogue-page .catalogue-pdf-controls,
.catalogue-page .catalogue-pdf-frame {
  background: var(--logo-soft);
}
.catalogue-page .catalogue-pdf-workspace { background: #e9ecf4; }

/* Override the old Fuji-specific global chrome without altering page geometry. */
body:has(.brand-page-fuji) ::selection {
  background: var(--logo-red);
  color: #fff;
}
body:has(.brand-page-fuji) .topbar {
  background: var(--logo-navy);
  color: #e2e5f0;
}
body:has(.brand-page-fuji) .contact-band {
  background: var(--logo-navy);
  color: #fff;
  border-top-color: var(--logo-red);
}
body:has(.brand-page-fuji) .contact-band .eyebrow { color: #ffb8bd; }
body:has(.brand-page-fuji) .contact-band .button-white {
  background: var(--logo-red);
  border-color: var(--logo-red);
  color: #fff;
}
body:has(.brand-page-fuji) .contact-band .button-white:hover {
  background: var(--logo-navy-deep);
  border-color: var(--logo-navy-deep);
}
body:has(.brand-page-fuji) .footer {
  background: var(--logo-navy-deep);
  color: #dce0ef;
}
body:has(.brand-page-fuji) .footer-bottom { border-color: #ffffff24; }

@media print {
  .brand-page .brand-family-section,
  .product-page .product-technical {
    background: #fff;
  }
}



/* /assets/navigation-v1.css */
.header nav{gap:16px;align-items:center}
.header-inner{gap:20px}
.header nav .nav-primary-link{display:flex;align-items:center;min-height:44px;border-bottom:2px solid transparent}
.header nav .nav-primary-link[aria-current]{color:var(--logo-red-text,#bc1d24);border-bottom-color:var(--logo-red,#df252a)}
.nav-mobile-contact{display:none}
.header nav .nav-primary-link,.nav-disclosure>summary{font-size:13px;font-weight:600;color:var(--logo-deep-navy,#26315c);white-space:nowrap}
.nav-disclosure{position:relative}
.nav-disclosure>summary{display:flex;align-items:center;gap:6px;list-style:none;min-height:44px;cursor:pointer;border-bottom:2px solid transparent}
.nav-disclosure>summary::-webkit-details-marker{display:none}
.nav-disclosure>summary>svg{fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .18s ease}
.nav-disclosure[open]>summary>svg{transform:rotate(180deg)}
.nav-disclosure.is-current>summary,.nav-disclosure[open]>summary{color:var(--logo-red-text,#bc1d24);border-color:var(--logo-red,#df252a)}
.nav-disclosure>summary:focus-visible,.header nav a:focus-visible{outline:2px solid var(--logo-navy,#303f75);outline-offset:4px;border-radius:3px}
.nav-panel{position:absolute;z-index:30;top:calc(100% + 16px);left:0;width:330px;padding:22px;background:#fff;border:1px solid var(--logo-line,#e0e4ef);border-radius:14px;box-shadow:0 18px 45px #26315c20;animation:nav-panel-enter .16s ease-out}
.header nav .nav-brand-heading{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding:0 0 18px;border-bottom:1px solid var(--logo-line,#e0e4ef);font-size:12px;color:var(--logo-muted,#60677a)}
.nav-brand-heading img{display:block;width:200px;height:auto;max-height:48px;object-fit:contain;object-position:left center}
.nav-brand-heading>span{display:flex;align-items:center;gap:8px}
.nav-brand-heading>span>svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;transform:rotate(-90deg)}
.header nav .nav-unit-link{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--logo-line,#e0e4ef);white-space:normal}
.nav-unit-link>svg{width:34px;height:34px;flex-shrink:0;fill:none;stroke:var(--logo-navy,#303f75);stroke-width:1.4}
.nav-unit-link>span:nth-child(2){display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}
.nav-unit-link strong{font-size:15px;font-weight:600;color:var(--logo-deep-navy,#26315c)}
.nav-unit-link small{font-size:12px;line-height:1.5;color:var(--logo-muted,#60677a)}
.nav-unit-link>span:last-child{color:var(--logo-red,#df252a)}
.nav-unit-link:hover strong{color:var(--logo-red-text,#bc1d24)}
.nav-brand-secondary{display:flex;justify-content:space-between;gap:14px;padding-top:16px}
.header nav .nav-brand-secondary a{font-size:12px;padding:4px 0;color:var(--logo-muted,#60677a)}
.nav-corporate-panel{left:auto;right:0;width:250px;padding:12px 22px}
.header nav .nav-corporate-panel a{display:block;padding:13px 0;font-size:13px}
.nav-corporate-panel a+a{border-top:1px solid var(--logo-line,#e0e4ef)}
.nav-services-panel{width:285px;padding:10px 22px}
.header nav .nav-services-panel a{display:block;padding:12px 0;font-size:13px;border-bottom:1px solid var(--logo-line,#e0e4ef)}
.header nav .nav-services-panel a:last-child{border-bottom:0}
.header nav .nav-services-panel .nav-services-overview{display:flex;justify-content:space-between;color:var(--logo-red-text,#bc1d24)}
@media(min-width:1181px) and (max-width:1350px){.header nav{gap:13px}.header-inner{gap:17px}.header-contact{padding-inline:13px}.header nav .nav-primary-link,.nav-disclosure>summary{font-size:12px}}
@keyframes nav-panel-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1180px){
 .header-inner{min-height:80px}
 .header nav{display:none;position:absolute;top:80px;left:0;right:0;margin:0;background:#fff;padding:16px 28px;border-bottom:1px solid var(--logo-line,#e0e4ef);box-shadow:0 20px 30px #26315c15}
 .header nav.open{display:flex;flex-direction:column;align-items:stretch}
 .menu-button{display:flex;margin-left:auto}
 .header nav.open{gap:0;max-height:calc(100dvh - 86px);overflow-y:auto;overscroll-behavior:contain}
 .header nav .nav-primary-link,.nav-disclosure>summary{font-size:15px;padding:14px 0;min-height:48px}
 .nav-disclosure>summary{justify-content:space-between}
 .nav-disclosure.is-current>summary,.nav-disclosure[open]>summary{border-bottom-color:var(--logo-line,#e0e4ef)}
 .nav-panel{position:static;display:block;width:auto;margin:0 0 12px;padding:18px;background:var(--logo-soft,#f7f8fc);border-radius:8px;box-shadow:none}
 .nav-brand-heading img{width:180px;max-height:44px}
 .header nav .nav-brand-heading{padding:0 0 14px}
 .header nav .nav-brand-secondary a{font-size:13px;padding:4px 0}
 .header nav .nav-corporate-panel a{font-size:14px;padding:12px 0}
 .header nav .nav-services-panel a{font-size:14px;padding:12px 0}
 .nav-mobile-contact{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--logo-line,#e0e4ef);margin-top:15px;padding-top:18px;padding-bottom:10px}
 .header nav .nav-mobile-contact a{padding:0;font-size:14px}
 .header nav .nav-mobile-contact .nav-mobile-project{display:flex;justify-content:space-between;background:var(--logo-navy,#303f75);color:white;border-radius:5px;padding:13px 16px;min-height:48px}
 .header nav .nav-mobile-contact .nav-mobile-coverage{font-size:12px;color:var(--logo-muted,#60677a)}
}
@media(max-width:760px){.header-inner{min-height:76px}.header nav{top:76px;padding-inline:20px}.header nav.open{max-height:calc(100dvh - 76px)}.nav-panel{padding:16px}.nav-unit-link small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.nav-panel{animation:none}.nav-disclosure>summary>svg{transition:none}}


/* /assets/growth.css */
.growth-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding-block:65px 80px}.growth-hero h1{font-size:clamp(2.4rem,4.3vw,4.4rem);line-height:1.08;letter-spacing:-.045em;margin:22px 0 26px}.growth-hero p{font-size:1.13rem;line-height:1.8;color:#65728c}.growth-hero img{width:100%;aspect-ratio:1.13;object-fit:cover;border-radius:18px}.growth-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:30px}.growth-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.growth-card{padding:32px;border:1px solid #e1e5ef;border-radius:14px;background:white}.growth-card h3{font-size:1.35rem;margin:16px 0}.growth-card p{line-height:1.75;color:#65728c}.growth-card .text-link{display:inline-block;margin-top:16px}.growth-card .eyebrow{font-size:.72rem}.growth-table{width:100%;border-collapse:collapse;font-size:.95rem}.growth-table th,.growth-table td{text-align:left;padding:22px 18px;border-bottom:1px solid #e1e5ef;vertical-align:top;line-height:1.7}.growth-table th{background:#f4f6fa;color:#303f75}.growth-form-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}.growth-form{padding:40px;background:#f6f7fb;border:1px solid #e1e5ef;border-radius:16px}.growth-form h2{margin-top:0}.growth-form .field input,.growth-form .field select,.growth-form .field textarea{background:white;min-height:48px}.growth-form .form-grid{gap:22px}.growth-form .field textarea{min-height:130px}.growth-form .consent-field{display:flex;align-items:flex-start;gap:12px;line-height:1.6;font-size:.88rem;margin:24px 0}.growth-form input[type=checkbox]{width:18px;height:18px;flex-shrink:0;margin-top:4px}.growth-form .is-success{color:#245443;background:#eef6f1;padding:20px;border-radius:8px}.growth-form [type=submit]:disabled{opacity:.65;cursor:wait}.growth-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.growth-aside h2{font-size:2rem}.growth-aside p,.growth-aside li{color:#65728c;line-height:1.85}.growth-aside ol{padding-left:22px}.growth-note{border-left:3px solid #e8202b;background:#f6f7fb;padding:24px;margin:30px 0}.growth-banner{display:flex;justify-content:space-between;gap:40px;align-items:center;padding:48px;background:#303f75;border-radius:18px;color:white}.growth-banner h2{color:white;margin:10px 0;font-size:2rem}.growth-banner p{color:#dbe0ee;max-width:650px;line-height:1.7}.growth-banner .eyebrow{color:#ffbfc4}.analytics-choice{position:fixed;bottom:18px;left:18px;right:18px;margin:auto;max-width:1060px;z-index:1000;border:1px solid #d9dfea;background:white;box-shadow:0 10px 45px #18244125;border-radius:12px;padding:20px 24px;display:flex;align-items:center;gap:30px;color:#303f75}.analytics-choice p{font-size:.82rem;line-height:1.55;margin:6px 0 0;color:#596780}.analytics-actions{display:flex;gap:12px;flex-shrink:0}.analytics-actions button{border:1px solid #cfd6e6;border-radius:7px;padding:12px 15px;background:white;color:#303f75;font:inherit;font-size:.84rem;cursor:pointer}.analytics-actions [data-choice=accepted]{background:#e8202b;color:white;border-color:#e8202b}.analytics-settings{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0}.growth-project-links{display:flex;flex-wrap:wrap;gap:15px;margin:26px 0}.growth-project-links a{border:1px solid #dce2ee;padding:14px 18px;border-radius:8px}.growth-form :focus-visible,.analytics-choice :focus-visible{outline:3px solid #303f75;outline-offset:3px}@media(max-width:900px){.growth-hero,.growth-form-layout{grid-template-columns:1fr;gap:35px}.growth-hero img{aspect-ratio:1.7}.growth-grid{grid-template-columns:1fr 1fr}.growth-banner{align-items:start;flex-direction:column}.analytics-choice{align-items:start;flex-direction:column;gap:14px}.growth-table-wrap{overflow:auto}}@media(max-width:600px){.growth-hero{padding-block:35px 45px}.growth-hero h1{font-size:2.55rem}.growth-grid{grid-template-columns:1fr}.growth-form{padding:24px 18px}.growth-banner{padding:28px}.growth-table{min-width:640px}.analytics-choice{left:10px;right:10px;bottom:10px;padding:16px}.analytics-actions{width:100%}.analytics-actions button{flex:1}.growth-card{padding:26px}}


/* /assets/whatsapp.css */
.whatsapp-float{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:calc(max(22px,env(safe-area-inset-bottom)) + var(--whatsapp-clearance,0px));z-index:900;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:2px solid white;border-radius:50%;background:#169b50;color:#fff!important;box-shadow:0 5px 22px #142d382b;text-decoration:none;transition:background .18s,transform .18s}.whatsapp-float:hover{background:#128344;transform:translateY(-2px)}.whatsapp-float:focus-visible{outline:3px solid #303f75;outline-offset:4px}.whatsapp-float svg{flex-shrink:0}.whatsapp-float-label{position:absolute;right:calc(100% + 12px);white-space:nowrap;background:#303f75;color:white;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:500;opacity:0;visibility:hidden;transform:translateX(4px);transition:opacity .18s,transform .18s,visibility .18s;pointer-events:none}.whatsapp-float:hover .whatsapp-float-label,.whatsapp-float:focus-visible .whatsapp-float-label{opacity:1;visibility:visible;transform:none}@media(max-width:600px){.whatsapp-float{width:52px;height:52px;right:max(16px,env(safe-area-inset-right));bottom:calc(max(16px,env(safe-area-inset-bottom)) + var(--whatsapp-clearance,0px))}body:has(.nav.open) .whatsapp-float{visibility:hidden}}@media(prefers-reduced-motion:reduce){.whatsapp-float,.whatsapp-float-label{transition:none}}
