:root{--c-ink:#0e1a2b;--c-ink-2:#1a2942;--c-brand:#b9892f;--c-brand-dk:#8e6720;--c-accent:#2d6cdf;--c-surface:#f7f4ee;--c-surface-2:#efe9da;--c-line:#d8d2c4;--c-muted:#6b6b73;--c-white:#fff;--c-success:#3f8a4f;--c-danger:#b73a2f;--r-sm:4px;--r-md:10px;--r-lg:18px;--r-pill:999px;--shadow-1:0 4px 14px rgba(14,26,43,.08);--shadow-2:0 18px 38px rgba(14,26,43,.18);--maxw:1180px;--fs-body:clamp(16px,1.02vw + 14px,18px);--ff-body:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--ff-heading:"Playfair Display",Georgia,serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--ff-body);font-size:var(--fs-body);line-height:1.6;color:var(--c-ink);background:var(--c-white);overflow-x:hidden}
img,picture{max-width:100%;height:auto;display:block}
a{color:var(--c-accent);text-decoration:none;transition:color .2s}
a:hover{color:var(--c-brand-dk)}
h1,h2,h3,h4{font-family:var(--ff-heading);font-weight:700;color:var(--c-ink);line-height:1.2;margin:0 0 .6em}
h1{font-size:clamp(2rem,4vw + 1rem,3.6rem)}
h2{font-size:clamp(1.6rem,2.4vw + .8rem,2.6rem)}
h3{font-size:clamp(1.2rem,1.2vw + .8rem,1.6rem)}
h4{font-size:1.1rem}
p{margin:0 0 1em}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-to-content{position:absolute;top:-40px;left:8px;background:var(--c-ink);color:#fff;padding:8px 12px;z-index:1000;border-radius:var(--r-sm)}
.skip-to-content:focus{top:8px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
.btn{display:inline-block;padding:14px 26px;font-weight:600;border-radius:var(--r-pill);border:2px solid transparent;cursor:pointer;text-align:center;font-size:.98rem;transition:transform .15s ease,background .2s,color .2s,border-color .2s;line-height:1;min-height:48px}
.btn:hover{transform:translateY(-1px)}
.btn--primary{background:var(--c-brand);color:#fff;border-color:var(--c-brand)}
.btn--primary:hover{background:var(--c-brand-dk);border-color:var(--c-brand-dk);color:#fff}
.btn--ghost{background:transparent;color:var(--c-ink);border-color:var(--c-ink)}
.btn--ghost:hover{background:var(--c-ink);color:#fff}
.btn--inverse{background:#fff;color:var(--c-ink);border-color:#fff}
.btn--inverse:hover{background:var(--c-brand);color:#fff;border-color:var(--c-brand)}
/* HEADER */
.topbar{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--c-line)}
.topbar__wrap{max-width:var(--maxw);margin:0 auto;padding:14px 20px;display:flex;align-items:center;gap:20px;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;color:var(--c-ink);font-weight:700}
.brand__mark{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--c-ink);color:var(--c-brand);font-family:var(--ff-heading);font-size:.95rem;border-radius:var(--r-md);letter-spacing:.04em}
.brand__name{font-family:var(--ff-heading);font-size:1.12rem;letter-spacing:.01em}
.brand--inverted .brand__mark{background:var(--c-brand);color:var(--c-ink)}
.brand--inverted{color:#fff}
.brand--inverted .brand__name{color:#fff}
.nav-trigger{display:none;background:none;border:0;padding:10px;cursor:pointer;width:48px;height:48px;flex-direction:column;gap:5px;justify-content:center;align-items:center}
.nav-trigger__bar{display:block;width:24px;height:3px;background:var(--c-ink);border-radius:2px;transition:.25s}
.nav-trigger[aria-expanded=true] .nav-trigger__bar:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav-trigger[aria-expanded=true] .nav-trigger__bar:nth-child(2){opacity:0}
.nav-trigger[aria-expanded=true] .nav-trigger__bar:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}
.primary-nav{display:flex;align-items:center;gap:24px}
.primary-nav__list{list-style:none;display:flex;gap:22px;margin:0;padding:0;align-items:center}
.primary-nav__list li{position:relative}
.primary-nav__link{color:var(--c-ink);font-weight:500;padding:8px 2px;border-bottom:2px solid transparent}
.primary-nav__link.is-current,.primary-nav__link:hover{color:var(--c-brand-dk);border-bottom-color:var(--c-brand)}
.sub-nav{position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--c-line);border-radius:var(--r-md);box-shadow:var(--shadow-1);min-width:240px;padding:10px 0;list-style:none;margin:8px 0 0;display:none;z-index:50}
.has-sub:hover>.sub-nav,.has-sub:focus-within>.sub-nav{display:block}
.sub-nav li{padding:0}
.sub-nav a{display:block;padding:9px 16px;color:var(--c-ink);font-size:.95rem}
.sub-nav a:hover{background:var(--c-surface);color:var(--c-brand-dk)}
.topbar__cta{display:inline-block;background:var(--c-ink);color:var(--c-brand);font-weight:600;padding:11px 20px;border-radius:var(--r-pill);font-size:.92rem;border:2px solid var(--c-ink)}
.topbar__cta:hover{background:var(--c-brand);color:var(--c-ink);border-color:var(--c-brand)}
@media (max-width:912px){
 .nav-trigger{display:flex}
 .primary-nav{position:fixed;inset:74px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;padding:18px 20px 24px;gap:14px;border-bottom:1px solid var(--c-line);transform:translateY(-110%);transition:transform .3s;height:auto;max-height:calc(100vh - 74px);overflow:auto;z-index:55}
 .primary-nav.is-open{transform:translateY(0)}
 .primary-nav__list{flex-direction:column;align-items:stretch;gap:0}
 .primary-nav__list>li{border-bottom:1px solid var(--c-line)}
 .primary-nav__link{display:block;padding:14px 4px;border-bottom:0}
 .sub-nav{position:static;border:0;box-shadow:none;padding:0 0 10px 18px;display:block;background:transparent;margin:0}
 .sub-nav a{padding:8px 0}
 .topbar__cta{align-self:flex-start}
}
/* HERO */
.hero-block{position:relative;background:linear-gradient(135deg,#0e1a2b 0%,#1a2942 60%,#2a3858 100%);color:#fff;padding:72px 0 88px;overflow:hidden}
.hero-block::after{content:"";position:absolute;inset:auto -10% -40% auto;width:60%;height:80%;background:radial-gradient(ellipse at center,rgba(185,137,47,.32) 0%,transparent 65%);filter:blur(20px);pointer-events:none}
.hero-block__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;position:relative;z-index:2}
.hero-block__kicker{display:inline-block;background:rgba(185,137,47,.18);color:var(--c-brand);padding:6px 14px;border-radius:var(--r-pill);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin-bottom:18px}
.hero-block h1{color:#fff;margin-bottom:18px}
.hero-block h1 em{font-style:normal;color:var(--c-brand);font-family:var(--ff-heading)}
.hero-block__sub{font-size:1.1rem;color:#d6dae3;max-width:560px;margin-bottom:30px}
.hero-block__cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px}
.hero-block__chips{display:flex;flex-wrap:wrap;gap:16px}
.hero-block__chips span{font-size:.85rem;color:#aab2c1;display:inline-flex;align-items:center;gap:6px}
.hero-block__chips span::before{content:"";width:8px;height:8px;background:var(--c-brand);border-radius:50%;display:inline-block}
.hero-block__media{position:relative}
.hero-block__media picture{display:block;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-2)}
.hero-block__media img{display:block;width:100%;height:auto}
.hero-block__badge{position:absolute;bottom:-22px;left:-22px;background:#fff;color:var(--c-ink);padding:16px 22px;border-radius:var(--r-md);box-shadow:var(--shadow-2);max-width:230px}
.hero-block__badge strong{font-family:var(--ff-heading);font-size:1.7rem;color:var(--c-brand-dk);display:block;line-height:1}
.hero-block__badge span{font-size:.85rem;color:var(--c-muted)}
@media (max-width:912px){
 .hero-block{padding:56px 0 68px}
 .hero-block__grid{grid-template-columns:1fr;gap:36px}
 .hero-block__badge{left:0;bottom:-12px}
}
/* SECTION wrappers */
.band{padding:84px 0}
.band--alt{background:var(--c-surface)}
.band--ink{background:var(--c-ink);color:#f3eede}
.band--ink h2,.band--ink h3{color:#fff}
.band__head{max-width:760px;margin:0 auto 56px;text-align:center}
.band__head .eyebrow{color:var(--c-brand-dk);font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;display:block;margin-bottom:10px}
.band__head p{color:var(--c-muted);font-size:1.04rem}
.band--ink .band__head p{color:#bfc7d4}
@media (max-width:768px){.band{padding:60px 0}}
/* TRUST STRIP */
.trust-strip{display:flex;flex-wrap:wrap;justify-content:space-around;gap:24px;padding:30px 0;background:#fff;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line)}
.trust-strip__item{display:flex;align-items:center;gap:10px;color:var(--c-muted);font-weight:500;font-size:.92rem}
.trust-strip__item span{width:28px;height:28px;border-radius:50%;background:var(--c-surface-2);color:var(--c-brand-dk);display:inline-flex;align-items:center;justify-content:center;font-weight:700}
/* FEATURE GRID */
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.feature-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-md);padding:28px 24px;transition:transform .25s ease,box-shadow .25s ease}
.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.feature-card__num{font-family:var(--ff-heading);font-size:2.2rem;color:var(--c-brand);display:block;margin-bottom:8px;line-height:1}
.feature-card h3{font-size:1.18rem;margin-bottom:8px}
.feature-card p{color:var(--c-muted);font-size:.96rem;margin:0}
/* SERVICES GRID */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px}
.service-card{background:#fff;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--c-line);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-2)}
.service-card picture{display:block;overflow:hidden}
.service-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .4s ease}
.service-card:hover img{transform:scale(1.04)}
.service-card__body{padding:24px;display:flex;flex-direction:column;flex:1}
.service-card__body h3{font-size:1.25rem;margin-bottom:10px}
.service-card__body p{color:var(--c-muted);font-size:.96rem;flex:1}
.service-card__link{margin-top:14px;font-weight:600;color:var(--c-brand-dk);display:inline-flex;align-items:center;gap:6px}
.service-card__link::after{content:"\2192";transition:transform .2s}
.service-card__link:hover::after{transform:translateX(4px)}
/* PROCESS / STEPS */
.steps{counter-reset:step;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.steps__item{padding:30px 26px;background:var(--c-surface-2);border-radius:var(--r-md);position:relative}
.steps__item::before{counter-increment:step;content:counter(step,decimal-leading-zero);position:absolute;top:-22px;left:24px;font-family:var(--ff-heading);font-size:2.6rem;color:var(--c-brand);line-height:1;background:var(--c-surface);padding:0 8px}
.steps__item h3{font-size:1.14rem;margin-top:10px;margin-bottom:8px}
.steps__item p{color:var(--c-muted);font-size:.95rem;margin:0}
/* SPLIT IMAGE / TEXT */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.split--reverse{direction:rtl}
.split--reverse>*{direction:ltr}
.split__media picture{border-radius:var(--r-lg);overflow:hidden;display:block;box-shadow:var(--shadow-1)}
.split__media img{width:100%;height:auto}
.split__copy h2 .accent{color:var(--c-brand-dk)}
.split__copy ul{padding:0;margin:18px 0 0;list-style:none}
.split__copy ul li{padding:10px 0 10px 32px;position:relative;border-bottom:1px dashed var(--c-line)}
.split__copy ul li:last-child{border-bottom:0}
.split__copy ul li::before{content:"\2713";position:absolute;left:0;top:10px;width:22px;height:22px;border-radius:50%;background:var(--c-brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700}
@media (max-width:912px){.split{grid-template-columns:1fr;gap:36px}.split--reverse{direction:ltr}}
/* TESTIMONIALS — carousel-ish horizontal scroll */
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.quote{background:#fff;border-radius:var(--r-md);padding:28px;border-left:4px solid var(--c-brand);position:relative}
.quote::before{content:"\201C";position:absolute;top:6px;right:18px;font-family:var(--ff-heading);font-size:5rem;color:var(--c-surface-2);line-height:1}
.quote__text{font-size:1rem;color:var(--c-ink);margin-bottom:18px;position:relative;z-index:2}
.quote__person{display:flex;align-items:center;gap:14px}
.quote__person picture{width:54px;height:54px;border-radius:50%;overflow:hidden;flex-shrink:0}
.quote__person img{width:100%;height:100%;object-fit:cover;display:block}
.quote__person strong{display:block;font-size:.96rem}
.quote__person span{color:var(--c-muted);font-size:.86rem}
/* FAQ */
.faq{max-width:820px;margin:0 auto;border-top:1px solid var(--c-line)}
.faq details{border-bottom:1px solid var(--c-line);padding:0}
.faq summary{padding:22px 50px 22px 6px;font-weight:600;font-size:1.05rem;cursor:pointer;position:relative;list-style:none;color:var(--c-ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:1.6rem;color:var(--c-brand);transition:.25s;font-weight:300}
.faq details[open] summary::after{content:"\2013";color:var(--c-brand-dk)}
.faq__answer{padding:0 6px 22px;color:var(--c-muted);font-size:.98rem}
/* CTA BAND */
.cta-band{background:linear-gradient(135deg,#1a2942,#0e1a2b);color:#fff;padding:64px 0;text-align:center}
.cta-band h2{color:#fff;max-width:720px;margin:0 auto 14px}
.cta-band p{color:#cfd6e2;max-width:640px;margin:0 auto 28px}
.cta-band__row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
/* PAGE HEADER (interior) */
.page-head{background:linear-gradient(135deg,#1a2942 0%,#0e1a2b 100%);color:#fff;padding:64px 0 56px;position:relative;text-align:center}
.page-head h1{color:#fff;margin-bottom:12px}
.page-head p{color:#cfd6e2;max-width:660px;margin:0 auto}
.page-head .breadcrumbs{font-size:.84rem;color:#94a1b7;margin-bottom:22px}
.page-head .breadcrumbs a{color:#cfd6e2}
.page-head .breadcrumbs a:hover{color:var(--c-brand)}
/* CONTENT PROSE */
.prose{max-width:780px;margin:0 auto;padding:60px 0}
.prose h2{margin:1.4em 0 .6em}
.prose h3{margin:1.4em 0 .5em}
.prose p,.prose li{color:var(--c-ink-2);font-size:1.03rem}
.prose ul,.prose ol{padding-left:1.4em}
.prose ul li,.prose ol li{margin-bottom:.4em}
.prose strong{color:var(--c-ink)}
/* CONTACT */
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:start}
@media (max-width:912px){.contact-grid{grid-template-columns:1fr}}
.contact-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-md);padding:30px;box-shadow:var(--shadow-1)}
.contact-card h3{margin-bottom:12px}
.contact-card p{margin:0 0 .4em;color:var(--c-ink-2)}
.contact-card a{color:var(--c-ink-2);font-weight:500}
.contact-card a:hover{color:var(--c-brand-dk)}
.contact-list{list-style:none;padding:0;margin:0}
.contact-list li{padding:10px 0;border-bottom:1px dashed var(--c-line);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.contact-list li:last-child{border-bottom:0}
.contact-list li strong{color:var(--c-muted);font-weight:500}
/* FORM */
.case-form{background:var(--c-surface);border-radius:var(--r-md);padding:30px;border:1px solid var(--c-line)}
.case-form h3{margin-bottom:6px}
.case-form .small{color:var(--c-muted);margin-bottom:20px;font-size:.94rem}
.case-form .field{margin-bottom:16px}
.case-form label{display:block;font-weight:500;margin-bottom:6px;font-size:.94rem}
.case-form input,.case-form select,.case-form textarea{width:100%;padding:13px 14px;border:1px solid var(--c-line);border-radius:var(--r-sm);font-family:inherit;font-size:1rem;background:#fff;color:var(--c-ink);min-height:48px}
.case-form textarea{min-height:130px;resize:vertical}
.case-form input:focus,.case-form select:focus,.case-form textarea:focus{outline:0;border-color:var(--c-brand);box-shadow:0 0 0 3px rgba(185,137,47,.15)}
.case-form .error{color:var(--c-danger);font-size:.85rem;margin-top:4px;min-height:1em}
.case-form button{width:100%}
.case-form__consent{display:flex;gap:10px;font-size:.86rem;color:var(--c-muted);align-items:flex-start;margin:6px 0 16px}
.case-form__consent input{width:auto;min-height:0;margin-top:3px}
.alert{padding:14px 18px;border-radius:var(--r-sm);margin-bottom:18px;font-size:.94rem}
.alert--ok{background:#e3f1e6;color:#205a30;border:1px solid #b5d4be}
.alert--err{background:#fae2df;color:#7a2118;border:1px solid #e5b4ae}
/* BLOG */
.posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}
.post-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.post-card picture{aspect-ratio:16/10;overflow:hidden;display:block}
.post-card img{width:100%;height:100%;object-fit:cover}
.post-card__body{padding:22px;flex:1;display:flex;flex-direction:column}
.post-card__tag{font-size:.78rem;font-weight:600;color:var(--c-brand-dk);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}
.post-card__body h3{font-size:1.18rem;margin-bottom:8px;flex:0}
.post-card__body p{font-size:.95rem;color:var(--c-muted);flex:1}
.post-card__meta{margin-top:14px;font-size:.86rem;color:var(--c-muted)}
.article{max-width:780px;margin:0 auto;padding:50px 0}
.article__hero{aspect-ratio:16/9;border-radius:var(--r-md);overflow:hidden;margin-bottom:30px}
.article__hero img{width:100%;height:100%;object-fit:cover}
.article__meta{display:flex;gap:18px;color:var(--c-muted);font-size:.92rem;margin-bottom:18px}
.article p,.article li{color:var(--c-ink-2)}
.article h2{margin:1.6em 0 .5em}
.article blockquote{border-left:4px solid var(--c-brand);padding:14px 22px;background:var(--c-surface);font-family:var(--ff-heading);font-size:1.16rem;margin:1.6em 0;color:var(--c-ink)}
/* FOOTER */
.footing{background:#0a1626;color:#bfc7d4;padding:64px 0 0;font-size:.95rem}
.footing a{color:#dfe4ec}
.footing a:hover{color:var(--c-brand)}
.footing__top{max-width:var(--maxw);margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1.1fr 2.2fr;gap:50px}
.footing__brand .brand--inverted{margin-bottom:14px}
.footing__tag{color:#9aa3b5;max-width:340px;line-height:1.6}
.footing__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.footing__h{color:#fff;font-family:var(--ff-heading);font-size:1.05rem;margin:0 0 14px}
.footing__col ul{list-style:none;padding:0;margin:0}
.footing__col ul li{padding:5px 0}
.footing__col--contact address{font-style:normal;line-height:1.7}
.footing__bottom{border-top:1px solid #1d2a40;margin-top:50px;padding:24px 20px;text-align:center;color:#7c8595;font-size:.85rem;max-width:var(--maxw);margin-left:auto;margin-right:auto}
@media (max-width:912px){.footing__top{grid-template-columns:1fr;gap:40px}.footing__cols{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.footing__cols{grid-template-columns:1fr}}
/* COOKIE CONSENT */
.cc-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:200;background:#0e1a2b;color:#f5f1e5;border-radius:var(--r-md);box-shadow:var(--shadow-2);max-width:760px;margin:0 auto;padding:18px 22px;animation:ccin .35s ease}
.cc-banner[hidden]{display:none!important}
.cc-banner__inner{display:flex;gap:16px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.cc-banner__msg{margin:0;font-size:.92rem;flex:1;min-width:240px;line-height:1.5}
.cc-banner__msg a{color:var(--c-brand);text-decoration:underline}
.cc-banner__buttons{display:flex;gap:10px}
.cc-banner__btn{border:0;padding:10px 18px;border-radius:var(--r-pill);font-weight:600;font-size:.88rem;cursor:pointer;min-height:44px}
.cc-banner__btn--accept{background:var(--c-brand);color:#0e1a2b}
.cc-banner__btn--accept:hover{background:var(--c-brand-dk);color:#fff}
.cc-banner__btn--reject{background:transparent;color:#dfe4ec;border:1px solid #4a5670}
.cc-banner__btn--reject:hover{background:#1a2942}
.cc-handle{position:fixed;left:18px;bottom:18px;z-index:150;background:#0e1a2b;color:var(--c-brand);border:1px solid var(--c-brand);border-radius:var(--r-pill);padding:9px 14px;font-size:.84rem;cursor:pointer;box-shadow:var(--shadow-1);font-weight:500;min-height:40px}
.cc-handle[hidden]{display:none!important}
.cc-handle:hover{background:var(--c-brand);color:#0e1a2b}
@keyframes ccin{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:520px){.cc-banner{left:10px;right:10px;bottom:10px;padding:14px}.cc-banner__buttons{width:100%}.cc-banner__btn{flex:1}}
/* MISC */
.kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px;text-align:center}
.kv{padding:22px 16px;background:#fff;border-radius:var(--r-md);border:1px solid var(--c-line)}
.kv strong{display:block;font-family:var(--ff-heading);font-size:2.2rem;color:var(--c-brand-dk);line-height:1;margin-bottom:6px}
.kv span{color:var(--c-muted);font-size:.92rem}
.tag-pill{display:inline-block;background:var(--c-surface-2);color:var(--c-ink-2);padding:4px 12px;border-radius:var(--r-pill);font-size:.8rem;font-weight:500}
.case-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.case-strip__item{padding:24px;background:#fff;border-radius:var(--r-md);border-top:3px solid var(--c-brand)}
.case-strip__item small{color:var(--c-muted);font-size:.82rem;display:block;margin-bottom:6px}
.case-strip__item strong{font-family:var(--ff-heading);font-size:1.4rem;color:var(--c-ink);display:block;margin-bottom:6px}
.case-strip__item p{margin:0;font-size:.94rem;color:var(--c-muted)}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:26px}
.team-card{text-align:center}
.team-card picture{display:block;width:140px;height:140px;border-radius:50%;overflow:hidden;margin:0 auto 14px;border:3px solid var(--c-brand)}
.team-card img{width:100%;height:100%;object-fit:cover}
.team-card h4{margin-bottom:4px;font-size:1.08rem}
.team-card span{color:var(--c-muted);font-size:.9rem;display:block;margin-bottom:8px}
.team-card p{color:var(--c-ink-2);font-size:.9rem}
/* SERVICE PAGE blocks */
.service-hero{background:linear-gradient(135deg,#1a2942 0%,#0e1a2b 100%);color:#fff;padding:64px 0;position:relative;overflow:hidden}
.service-hero__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;position:relative;z-index:2}
.service-hero h1{color:#fff;margin-bottom:14px}
.service-hero__sub{color:#cfd6e2;font-size:1.05rem;margin-bottom:22px;max-width:520px}
.service-hero__media picture{border-radius:var(--r-md);overflow:hidden;display:block;box-shadow:var(--shadow-2)}
.service-hero__media img{width:100%;height:auto}
.service-hero__list{margin:24px 0 30px;padding:0;list-style:none}
.service-hero__list li{padding:8px 0 8px 28px;position:relative;color:#dfe4ec;font-size:.97rem}
.service-hero__list li::before{content:"\2192";position:absolute;left:0;color:var(--c-brand);font-weight:700}
@media (max-width:912px){.service-hero__grid{grid-template-columns:1fr;gap:36px}}
.checklist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.checklist-item{padding:22px 24px;background:#fff;border-radius:var(--r-md);border:1px solid var(--c-line)}
.checklist-item h4{color:var(--c-brand-dk);margin-bottom:6px}
.checklist-item p{margin:0;color:var(--c-ink-2);font-size:.95rem}
