
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:light dark;--ink:#111315;--muted:#626a70;--line:#e7e9e9;--accent:#16c9bb;--paper:#fff;--soft:#f5f7f6;--panel:#fafbfa;--max:1200px;--shadow:0 20px 60px rgba(15,25,25,.07)}
@media(prefers-color-scheme:dark){:root{--ink:#f4f6f5;--muted:#aeb7b6;--line:#303938;--paper:#070909;--soft:#0d1312;--panel:#151d1b;--shadow:0 20px 60px rgba(0,0,0,.22)}}
:root[data-theme="light"]{color-scheme:light;--ink:#111315;--muted:#626a70;--line:#e7e9e9;--paper:#fff;--soft:#f5f7f6;--panel:#fafbfa;--shadow:0 20px 60px rgba(15,25,25,.07)}
:root[data-theme="dark"]{color-scheme:dark;--ink:#f4f6f5;--muted:#aeb7b6;--line:#303938;--paper:#070909;--soft:#0d1312;--panel:#151d1b;--shadow:0 20px 60px rgba(0,0,0,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;transition:background .25s,color .25s}h1,h2,h3,.statement{font-family:'Manrope','DM Sans',sans-serif;font-weight:600}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 56px));margin:auto}
.site-header{height:86px;display:flex;align-items:center;position:sticky;top:0;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(18px);z-index:20;border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent)}.nav{display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;flex:0 0 175px}.brand-logo{display:block;width:164px;height:56px;object-fit:contain}.nav nav{display:flex;gap:clamp(15px,2.4vw,32px);align-items:center;white-space:nowrap;font-size:13px;font-weight:600;color:var(--muted)}nav a{transition:color .2s}nav a:hover,nav a.active{color:var(--accent)}.nav-actions{display:flex;align-items:center;gap:13px}.theme-toggle{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--ink);font-size:19px;cursor:pointer}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:var(--paper);padding:13px 20px;border-radius:999px;font-size:13px;font-weight:700;transition:.2s}.nav-cta:hover,.button:hover{background:var(--accent);color:#071312;transform:translateY(-2px)}
.hero{padding:105px 0 88px;position:relative;overflow:hidden;isolation:isolate}.hero:before{content:"";position:absolute;width:650px;height:650px;border-radius:50%;right:-220px;top:-285px;background:radial-gradient(circle,rgba(22,201,187,.12),rgba(22,201,187,0) 68%);z-index:-1;pointer-events:none}.hero:after{content:"";position:absolute;inset:10% 0 0 48%;z-index:-1;opacity:.23;background-image:radial-gradient(var(--muted) .65px,transparent .65px);background-size:19px 19px;mask-image:linear-gradient(90deg,transparent,black 55%,transparent)}.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:700}.hero-brandmark{margin:28px 0 22px;max-width:min(620px,100%)}.hero-brandmark img{width:100%;height:auto;max-height:190px;object-fit:contain;object-position:left center}.hero h1{font-size:clamp(43px,6.5vw,78px);line-height:1.02;letter-spacing:-.065em;max-width:790px;margin:18px 0 20px}.hero h1 em{font-style:normal;color:var(--accent)}.lead{font-size:clamp(16px,1.7vw,19px);line-height:1.75;color:var(--muted);max-width:630px}.actions{display:flex;gap:13px;align-items:center;margin-top:30px;flex-wrap:wrap}.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}.button.secondary:hover{border-color:var(--accent);background:var(--soft)}.hero-note{margin-top:68px;padding-top:20px;border:0;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px;letter-spacing:.1em}
.section{padding:88px 0}.section.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px}.section h2,.page-hero h1{font-size:clamp(34px,4.8vw,58px);letter-spacing:-.06em;line-height:1.08;margin:12px 0}.section-intro{max-width:455px;color:var(--muted);font-size:16px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.card{border:0;border-radius:18px;padding:30px;min-height:220px;background:var(--panel);transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.num{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.15em}.card h3{font-size:22px;letter-spacing:-.04em;margin:22px 0 8px}.card p,.service-item p{color:var(--muted);margin:0}.arrow{display:inline-block;margin-top:20px;font-size:13px;font-weight:700}.arrow:after{content:" ↗";color:var(--accent)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.statement{font-size:clamp(27px,3.8vw,44px);line-height:1.2;letter-spacing:-.05em}.statement span{color:var(--accent)}.ticks{list-style:none;padding:0;margin:24px 0}.ticks li{padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted)}.ticks li:before{content:"↗";color:var(--accent);margin-right:12px}.band{background:#111817;color:#fff;border-radius:24px;padding:54px;display:flex;justify-content:space-between;align-items:center;gap:30px}.band h2{font-size:clamp(30px,4vw,48px);margin:10px 0;letter-spacing:-.06em}.band p{color:#b8c2c0;max-width:530px}.band .button{background:var(--accent);color:#071312}.page-hero{padding:86px 0 54px}.page-hero h1{max-width:850px}.page-hero p{max-width:680px;color:var(--muted);font-size:18px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.service-item{padding:28px 0;border-top:1px solid var(--line)}.service-item h3{font-size:22px;letter-spacing:-.04em;margin:0 0 8px}.pill{display:inline-block;border:1px solid var(--line);border-radius:30px;padding:7px 12px;font-size:11px;color:var(--muted);margin:6px 5px 0 0}form{display:grid;gap:14px;max-width:680px}input,textarea,select{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--panel);color:var(--ink)}textarea{min-height:140px;resize:vertical}label{font-size:12px;color:var(--muted)}footer{padding:54px 0 28px;background:#101514;color:white;margin-top:90px}.foot-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:42px;border-bottom:1px solid #303938}.foot-brand{font-size:24px;font-weight:750;letter-spacing:-.05em}.foot-brand span{color:var(--accent)}.foot-links{display:flex;gap:22px;flex-wrap:wrap;color:#c0c9c7;font-size:13px}.copyright{display:flex;justify-content:space-between;gap:20px;color:#858f8d;font-size:11px;padding-top:22px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.wrap{width:min(var(--max),calc(100% - 36px))}.site-header{height:auto;min-height:76px;padding:10px 0}.nav{gap:12px;flex-wrap:wrap}.brand{flex:0 0 125px}.brand-logo{width:122px;height:46px}.nav nav{order:3;flex:1 0 100%;justify-content:center;gap:clamp(14px,4vw,28px);padding:8px 0 3px;font-size:12px}.nav-actions{margin-left:auto}.nav-cta{padding:10px 14px}.hero{padding:72px 0 60px}.hero-brandmark{max-width:500px}.hero-brandmark img{max-height:145px}}
@media(max-width:600px){.wrap{width:calc(100% - 32px)}.site-header{padding:8px 0}.nav{gap:8px}.brand{flex-basis:112px}.brand-logo{width:108px;height:40px}.nav nav{justify-content:flex-start;overflow-x:auto;scrollbar-width:none;white-space:nowrap;padding:11px 0 7px}.nav nav::-webkit-scrollbar{display:none}.nav-actions{gap:8px}.theme-toggle{width:34px;height:34px}.nav-cta{font-size:11px;padding:9px 11px}.hero{padding:62px 0 52px}.hero-brandmark{margin:24px 0 18px}.hero-brandmark img{max-height:105px}.hero h1{font-size:clamp(40px,12vw,58px)}.hero-note{margin-top:45px;flex-direction:column;gap:8px}.section{padding:65px 0}.section-head,.split,.band,.foot-top,.copyright{display:block}.section-head{margin-bottom:26px}.grid,.service-list{grid-template-columns:1fr}.card{min-height:unset;padding:25px}.split{gap:26px}.band{padding:32px 24px}.band .button{margin-top:18px}.foot-links{margin-top:24px}.copyright span{display:block;margin-top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{transition:none!important}}

/* V6 logo treatment: use the supplied clean wordmark, centered in the header and hero. */
.site-header{height:auto;min-height:108px;padding:12px 0}
.nav{display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"brand . actions" "menu menu menu";gap:8px 18px}
.brand{grid-area:brand;grid-column:1 / 4;grid-row:1;justify-self:center;align-self:center;display:flex;align-items:center;justify-content:center;width:max-content;max-width:100%;flex:none}
.brand-logo{width:220px;height:66px;object-fit:contain;display:block}
.nav nav{grid-area:menu;grid-row:2;grid-column:1 / 4;justify-self:center;display:flex;justify-content:center;align-items:center;gap:clamp(18px,2.8vw,34px)}
.nav-actions{grid-area:actions;grid-row:1;grid-column:3;justify-self:end;align-self:center;z-index:2}
.logo-dark{display:none!important}
@media(prefers-color-scheme:dark){.logo-light{display:none!important}.logo-dark{display:block!important}}
:root[data-theme="light"] .logo-light{display:block!important}
:root[data-theme="light"] .logo-dark{display:none!important}
:root[data-theme="dark"] .logo-light{display:none!important}
:root[data-theme="dark"] .logo-dark{display:block!important}
.hero-brandmark{width:100%;max-width:100%;margin:32px 0 28px;display:flex;justify-content:center;align-items:center}
.hero-brandmark .hero-logo{width:min(520px,82%);height:auto;max-height:150px;object-fit:contain;object-position:center}
@media(max-width:900px){
 .site-header{min-height:100px}
 .brand{grid-column:1 / 4}
 .brand-logo{width:205px;height:60px}
 .nav nav{grid-column:1 / 4;justify-self:center;justify-content:center}
 .nav-actions{grid-column:3;grid-row:1}
}
@media(max-width:600px){
 .site-header{min-height:112px;padding:8px 0 5px}
 .nav{grid-template-columns:1fr auto 1fr;gap:7px 8px}
 .brand-logo{width:176px;height:54px}
 .nav-actions{grid-column:3;grid-row:1;gap:6px}
 .theme-toggle{width:32px;height:32px}
 .nav-cta{font-size:10px;padding:8px 10px}
 .nav nav{grid-column:1 / 4;grid-row:2;justify-self:stretch;justify-content:center;gap:clamp(12px,4vw,22px);font-size:12px}
 .hero-brandmark{margin:24px 0 22px}
 .hero-brandmark .hero-logo{width:min(390px,90%);max-height:112px}
}

/* Keep the centered wordmark clear of the utility buttons on narrow screens. */
.nav{grid-template-areas:"brand brand brand" "menu menu menu";grid-template-columns:1fr 1fr 1fr}
.brand{grid-area:brand;grid-column:1 / 4;grid-row:1}
.nav nav{grid-area:menu;grid-column:1 / 4;grid-row:2}
.nav-actions{grid-area:auto;grid-column:3;grid-row:1;justify-self:end}
@media(max-width:600px){
 .nav{grid-template-areas:"brand brand brand" "actions actions actions" "menu menu menu";grid-template-columns:1fr 1fr 1fr}
 .brand{grid-area:brand;grid-column:1 / 4;grid-row:1}
 .nav-actions{grid-area:actions;grid-column:1 / 4;grid-row:2;justify-self:center}
 .nav nav{grid-area:menu;grid-column:1 / 4;grid-row:3;justify-self:stretch}
 .site-header{min-height:142px}
}

/* V7 refinement: compact right-aligned header logo and justified content copy. */
.nav{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  grid-template-areas:"menu actions brand";
  align-items:center;
  gap:14px 22px;
}
.brand{
  grid-area:brand;
  grid-column:auto;
  grid-row:auto;
  justify-self:end;
  width:auto;
  max-width:100%;
  flex:none;
  margin-left:0;
}
.brand-logo{width:104px;height:42px;object-fit:contain}
.nav nav{
  grid-area:menu;
  grid-column:auto;
  grid-row:auto;
  justify-self:start;
  justify-content:flex-start;
  min-width:0;
}
.nav-actions{grid-area:actions;grid-column:auto;grid-row:auto;justify-self:center}
/* Align explanatory copy consistently across every page and content section. */
main p,
main li,
footer p{
  text-align:justify;
  text-justify:inter-word;
}
.section-intro,
.lead,
.page-hero p,
.card p,
.service-item p,
.band p,
.ticks li{
  text-align:justify;
}
/* Keep navigation, controls and short labels visually crisp. */
.site-header nav,
.site-header nav a,
.nav-actions,
.nav-cta,
.button,
.eyebrow,
.num,
.pill,
.foot-links,
.copyright,
label{
  text-align:initial;
}
@media(max-width:900px){
  .nav{
    grid-template-columns:minmax(0,1fr) auto auto;
    grid-template-areas:"menu actions brand";
    gap:10px 12px;
  }
  .brand{grid-column:auto;grid-row:auto;justify-self:end}
  .brand-logo{width:92px;height:38px}
  .nav nav{grid-column:auto;grid-row:auto;justify-self:start;justify-content:flex-start;flex:initial;white-space:nowrap;overflow-x:auto}
  .nav-actions{grid-column:auto;grid-row:auto;justify-self:center;margin-left:0}
}
@media(max-width:600px){
  .site-header{min-height:0;padding:9px 0}
  .nav{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"actions brand" "menu menu";
    gap:8px 12px;
  }
  .brand{grid-area:brand;grid-column:2;grid-row:1;justify-self:end}
  .brand-logo{width:82px;height:34px}
  .nav-actions{grid-area:actions;grid-column:1;grid-row:1;justify-self:start}
  .nav nav{grid-area:menu;grid-column:1 / -1;grid-row:2;justify-self:stretch;justify-content:flex-start;overflow-x:auto;white-space:nowrap;padding:8px 0 3px}
  .hero-brandmark .hero-logo{width:min(390px,90%);max-height:112px}
}

/* V8: centered editorial composition and compact logo tagline. */
body, main, main section, footer { text-align: center; }
.site-header .nav { justify-items: center; }
.site-header nav { justify-self: center; justify-content: center; text-align: center; }
.brand { justify-self: end; }
.brand-logo { width: 76px; height: 32px; }
.hero .wrap { display: flex; flex-direction: column; align-items: center; }
.hero .eyebrow { text-align: center; }
.hero-brandmark { justify-content: center; margin: 24px auto 8px; }
.hero-brandmark .hero-logo { width: min(430px, 78%); max-height: 126px; object-position: center; }
.hero h1 { width: 100%; max-width: 760px; margin: 8px auto 18px; text-align: center; font-size: clamp(20px, 2.6vw, 27px); line-height: 1.35; letter-spacing: -.025em; font-weight: 600; }
.hero .lead { max-width: 720px; margin: 0 auto; text-align: center; }
.hero .actions { justify-content: center; }
.hero-note { width: 100%; justify-content: center; flex-wrap: wrap; text-align: center; }
.section-head { flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.section-head > div { width: 100%; }
.section-intro, .page-hero p, .card p, .service-item p, .band p, .ticks li, main p, main li { text-align: center; margin-left: auto; margin-right: auto; }
.section h2, .page-hero h1, .statement, .card h3, .service-item h3 { text-align: center; margin-left: auto; margin-right: auto; }
.grid, .service-list { justify-items: stretch; }
.card, .service-item { text-align: center; }
.num, .arrow, .pill { text-align: center; }
.split { justify-items: center; text-align: center; }
.split > * { width: 100%; }
.ticks { max-width: 620px; margin-left: auto; margin-right: auto; }
.ticks li { padding-left: 8px; padding-right: 8px; }
.band { flex-direction: column; justify-content: center; align-items: center; text-align: center; }
.band > div { width: 100%; }
.page-hero { display: flex; flex-direction: column; align-items: center; }
.page-hero h1, .page-hero p { margin-left: auto; margin-right: auto; }
form { margin-left: auto; margin-right: auto; text-align: center; }
form label { text-align: center; }
input, textarea, select { text-align: center; }
footer .foot-top, footer .copyright { justify-content: center; align-items: center; text-align: center; }
footer .foot-top { flex-direction: column; }
footer .foot-top > div { width: 100%; }
footer .foot-links { justify-content: center; }
footer p { margin-left: auto; margin-right: auto; text-align: center; }
@media(max-width:900px){
 .brand-logo { width: 72px; height: 30px; }
 .nav nav { justify-content: center; }
 .hero-brandmark .hero-logo { width: min(390px, 86%); max-height: 112px; }
}
@media(max-width:600px){
 .brand-logo { width: 68px; height: 28px; }
 .nav nav { justify-content: center; }
 .hero h1 { font-size: 19px; line-height: 1.35; }
 .hero-brandmark .hero-logo { width: min(340px, 88%); max-height: 100px; }
 .hero-note { align-items: center; }
 .section-head { align-items: center; }
 .foot-links { justify-content: center; }
 .copyright { text-align: center; }
}


/* V9 — centered, minimal, brand-led presentation */
body, main, main section, footer { text-align:center; }
main p, main li, .section-intro, .page-hero p, .card p, .service-item p, .band p, .ticks li { text-align:center !important; margin-left:auto; margin-right:auto; }
.section-head, .section-head > div, .split, .page-hero, .page-hero .wrap, .band { text-align:center; justify-content:center; align-items:center; }
.section-head { display:flex; flex-direction:column; gap:8px; }
.section-head > div { width:100%; }
.section-intro, .page-hero p, .lead { max-width:620px; }
.hero .wrap { display:flex; flex-direction:column; align-items:center; }
.hero-brandmark { justify-content:center; margin:20px auto 8px; }
.hero-brandmark .hero-logo { width:min(350px,72%); max-height:105px; object-position:center; }
.brand-tagline { margin:7px 0 14px; font-size:clamp(15px,2vw,20px); line-height:1.35; font-weight:600; letter-spacing:-.025em; color:var(--ink); text-align:center; }
.hero .lead { margin:0 auto; font-size:14px; letter-spacing:.12em; text-transform:uppercase; }
.hero h1 { display:none; }
.hero .actions { justify-content:center; }
.hero-note { justify-content:center; text-align:center; margin-top:48px; }
.brand { justify-self:end; }
.brand-logo { width:72px; height:30px; }
.nav nav { justify-content:center; text-align:center; }
.nav-actions { justify-self:start; }
.grid { gap:16px; }
.card { min-height:190px; padding:25px 24px; text-align:center; }
.card h3 { margin:12px auto 7px; text-align:center; }
.doodle-icon { display:flex; width:48px; height:48px; align-items:center; justify-content:center; margin:0 auto 13px; color:var(--accent); }
.doodle-icon svg { width:42px; height:42px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.service-list { justify-items:stretch; }
.service-item { text-align:center; padding:26px 18px; }
.service-item h3 { text-align:center; margin:8px auto; }
.service-item .pill { margin:5px 4px 0; }
.split { grid-template-columns:1fr; gap:24px; }
.split > div { max-width:720px; margin:0 auto; }
.statement { text-align:center; max-width:700px; margin:10px auto; }
.ticks { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 22px; }
.ticks li { border:0; padding:6px 0; }
.band { display:flex; flex-direction:column; padding:42px 28px; }
.band h2 { text-align:center; }
form { margin:0 auto; text-align:center; }
form label { text-align:center; }
input, textarea, select { text-align:center; }
footer .foot-top, footer .copyright { justify-content:center; align-items:center; text-align:center; }
footer .foot-top > div { margin:0 auto; }
footer .foot-links { justify-content:center; }
footer p { margin-left:auto; margin-right:auto; text-align:center; }
@media(max-width:600px){
 .brand-logo{width:66px;height:28px}
 .hero{padding:52px 0 46px}
 .hero-brandmark .hero-logo{width:min(300px,78%);max-height:88px}
 .brand-tagline{font-size:16px;margin:5px 0 12px}
 .hero .lead{font-size:11px;letter-spacing:.1em}
 .section{padding:54px 0}
 .grid{grid-template-columns:1fr 1fr;gap:10px}
 .card{padding:20px 12px;min-height:165px}
 .card h3{font-size:17px}
 .card p{font-size:13px;line-height:1.5}
 .doodle-icon{width:40px;height:40px;margin-bottom:8px}
 .doodle-icon svg{width:36px;height:36px}
 .service-list{grid-template-columns:1fr}
 .service-item{padding:22px 10px}
 .band{padding:30px 20px}
}

/* V10 — compact single-line navigation and consistent centered sections */
.site-header{height:72px;min-height:72px;padding:0;}
.nav{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:18px;}
.brand{order:0;flex:0 0 auto;justify-self:auto;width:auto;max-width:none;display:flex;align-items:center;justify-content:flex-start;}
.brand-logo{width:78px;height:38px;object-fit:contain;}
.nav nav{order:1;display:flex;flex:1 1 auto;justify-content:center;align-items:center;gap:clamp(12px,2.2vw,30px);white-space:nowrap;padding:0;margin:0;font-size:13px;}
.nav-actions{order:2;display:flex;flex:0 0 auto;align-items:center;justify-self:auto;margin:0;}
.theme-toggle{width:36px;height:36px;}
.nav-cta{display:none!important;}
/* All section labels, headings and supporting copy share a centered composition. */
main, main section, main section .wrap, footer{text-align:center;}
.section-head{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin-bottom:28px;gap:8px;}
.section-head>div{width:100%;}
.section h2,.page-hero h1,.section-intro,.page-hero p,.statement,.card h3,.card p,.service-item h3,.service-item p,.band h2,.band p,.hero h1,.hero .lead{margin-left:auto;margin-right:auto;text-align:center;}
.section-intro,.page-hero p,.lead,.band p{max-width:650px;}
.split{grid-template-columns:1fr;justify-items:center;gap:20px;text-align:center;}
.split>div{width:100%;max-width:760px;margin:0 auto;text-align:center;}
.ticks{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 22px;}
.ticks li{text-align:center;border:0;padding:6px 0;}
.page-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:58px 0 34px;}
.page-hero .wrap{display:flex;flex-direction:column;align-items:center;}
.service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;}
.service-item{text-align:center;padding:22px 18px;border:1px solid var(--line);border-radius:16px;background:var(--panel);}
.service-item h3,.service-item p{ text-align:center; }
form{margin:0 auto;text-align:center;}
form label{text-align:center;}
input,textarea,select{text-align:center;}
.band{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:38px 28px;gap:16px;}
.band>div{width:100%;}
.foot-top,.copyright{justify-content:center;align-items:center;text-align:center;}
.foot-top{flex-direction:column;gap:20px;padding-bottom:28px;}
.foot-top>div{width:100%;}
.foot-links{justify-content:center;}
footer p{margin-left:auto;margin-right:auto;text-align:center;}
/* Compact vertical rhythm: retain breathing room without oversized blank bands. */
.hero{padding:54px 0 42px;}
.hero-brandmark{margin:12px auto 5px;}
.brand-tagline{margin:5px auto 12px;font-size:clamp(13px,1.6vw,17px);}
.hero .actions{justify-content:center;margin-top:22px;}
.hero-note{display:none;}
.section{padding:58px 0;}
.section.soft{padding:58px 0;}
footer{margin-top:42px;padding:38px 0 22px;}
.grid{gap:12px;}
.card{min-height:170px;padding:22px 18px;}
.doodle-icon{width:46px;height:46px;margin:0 auto 10px;color:var(--accent);}
.doodle-icon svg{fill:var(--accent);stroke:var(--accent);stroke-width:1.6;}
.doodle-icon svg rect,.doodle-icon svg path,.doodle-icon svg circle,.doodle-icon svg line{vector-effect:non-scaling-stroke;}
@media(max-width:900px){
 .site-header{height:66px;min-height:66px;padding:0;}
 .nav{flex-wrap:nowrap;gap:10px;}
 .brand{flex:0 0 auto;}
 .brand-logo{width:66px;height:32px;}
 .nav nav{order:1;flex:1 1 auto;justify-content:center;gap:clamp(9px,1.8vw,16px);font-size:11px;overflow:visible;}
 .nav-actions{margin:0;}
 .theme-toggle{width:32px;height:32px;}
}
@media(max-width:600px){
 .site-header{height:62px;min-height:62px;padding:0;}
 .wrap{width:calc(100% - 24px);}
 .nav{gap:7px;}
 .brand-logo{width:52px;height:28px;}
 .nav nav{flex:1 1 auto;justify-content:flex-start;gap:12px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;font-size:10px;padding:8px 0;}
 .nav nav::-webkit-scrollbar{display:none;}
 .nav-actions{flex:0 0 auto;}
 .theme-toggle{width:29px;height:29px;font-size:15px;}
 .hero{padding:40px 0 34px;}
 .hero-brandmark .hero-logo{width:min(260px,76%);max-height:78px;}
 .brand-tagline{font-size:14px;margin:4px auto 10px;}
 .hero .lead{font-size:10px;letter-spacing:.08em;}
 .hero .actions{gap:9px;margin-top:18px;}
 .button{padding:11px 15px;font-size:12px;}
 .section,.section.soft{padding:42px 0;}
 .section h2,.page-hero h1{font-size:clamp(29px,8vw,40px);}
 .grid{grid-template-columns:1fr 1fr;gap:9px;}
 .card{min-height:150px;padding:17px 10px;border-radius:14px;}
 .card h3{font-size:15px;margin:8px auto 5px;}
 .card p{font-size:12px;line-height:1.45;}
 .card .arrow{font-size:11px;margin-top:12px;}
 .doodle-icon{width:36px;height:36px;}
 .doodle-icon svg{width:34px;height:34px;}
 .service-list{grid-template-columns:1fr;gap:10px;}
 .service-item{padding:18px 12px;}
 .band{padding:28px 17px;}
 footer{margin-top:28px;padding:30px 0 18px;}
}

/* V11 — enforce true page-centred alignment across every page */
main, main *, footer, footer * { text-align:center !important; }
main .wrap, main .section-head, main .section-head > *, main .page-hero, main .page-hero > *,
main .page-hero .wrap, main .split, main .split > *, main .band, main .band > *,
main .service-list, main .service-item, main .grid, main .card,
footer .wrap, footer .foot-top, footer .foot-top > *, footer .foot-links, footer .copyright {
  margin-left:auto;
  margin-right:auto;
  justify-content:center;
  align-items:center;
}
main .eyebrow, main .num, main .section-intro, main p, main li,
main h1, main h2, main h3, main .statement, footer p, footer a {
  text-align:center !important;
  margin-left:auto;
  margin-right:auto;
}
main .eyebrow { display:block; width:100%; }
main .ticks, main .actions { justify-content:center !important; }
main .service-item, main .card { display:flex; flex-direction:column; }
main .pill { display:inline-flex; align-self:center; }
main form { width:min(100%, 620px); margin-left:auto !important; margin-right:auto !important; }
main form label { display:block; width:100%; text-align:center !important; }


/* V12 — high-contrast, evenly spaced, single-line navigation */
.site-header{height:72px;min-height:72px;padding:0;}
.site-header .nav{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:14px;width:min(var(--max),calc(100% - 48px));}
.site-header .brand{flex:0 0 82px;width:82px;max-width:82px;display:flex;justify-content:flex-start;align-items:center;margin:0;}
.site-header .brand-logo{width:78px;height:42px;object-fit:contain;object-position:left center;}
.site-header .nav nav{order:0;flex:1 1 auto;min-width:0;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-evenly;align-items:center;gap:0;padding:0;margin:0;overflow:visible;white-space:nowrap;font-size:14px;font-weight:800;letter-spacing:.01em;color:var(--ink);}
.site-header .nav nav a{flex:1 1 0;text-align:center!important;color:var(--ink);font-weight:800;opacity:1;}
.site-header .nav nav a:hover,.site-header .nav nav a.active{color:var(--accent);}
.site-header .nav-actions{flex:0 0 38px;margin:0;display:flex;justify-content:flex-end;}
.site-header .theme-toggle{width:36px;height:36px;flex:0 0 36px;}
@media(max-width:900px){
 .site-header{height:66px;min-height:66px;padding:0;}
 .site-header .nav{width:calc(100% - 28px);flex-wrap:nowrap;gap:7px;}
 .site-header .brand{flex:0 0 62px;width:62px;max-width:62px;}
 .site-header .brand-logo{width:60px;height:34px;}
 .site-header .nav nav{order:0;flex:1 1 auto;justify-content:space-evenly;gap:0;font-size:11.5px;font-weight:800;overflow:visible;white-space:nowrap;padding:0;}
 .site-header .nav nav a{flex:1 1 0;font-weight:800;}
 .site-header .nav-actions{flex:0 0 32px;margin:0;}
 .site-header .theme-toggle{width:30px;height:30px;flex-basis:30px;font-size:15px;}
}
@media(max-width:380px){
 .site-header .nav{width:calc(100% - 18px);gap:4px;}
 .site-header .brand{flex-basis:54px;width:54px;max-width:54px;}
 .site-header .brand-logo{width:53px;height:30px;}
 .site-header .nav nav{font-size:10.5px;letter-spacing:-.02em;}
 .site-header .nav-actions{flex-basis:29px;}
 .site-header .theme-toggle{width:28px;height:28px;flex-basis:28px;}
}

/* V13 — precise, equal service-card alignment only */
main .grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  justify-items: stretch;
  justify-content: stretch;
  gap: 16px;
  width: 100%;
}
main .grid > .card {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 250px;
  height: 100%;
  align-self: stretch;
  justify-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 30px 24px;
  text-align: center;
}
main .grid > .card .doodle-icon,
main .grid > .card .num,
main .grid > .card h3,
main .grid > .card p,
main .grid > .card .arrow {
  flex: 0 0 auto;
  max-width: 100%;
  text-align: center;
}
main .grid > .card p { min-height: 1.5em; }
@media (max-width: 600px) {
  main .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  main .grid > .card { min-height: 205px; padding: 22px 14px; }
}


/* V14 — BALENZQ SOLUTIONS dark canvas; hero color overlay intentionally retained */
:root[data-theme="dark"]{--paper:#070909;--soft:#0d1312;--panel:#151d1b;--ink:#f4f6f5;--muted:#aeb7b6;--line:#252d2b;}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#070909;--soft:#0d1312;--panel:#151d1b;--ink:#f4f6f5;--muted:#aeb7b6;--line:#252d2b;}}
