:root{--ink:#122b3a;--muted:#526670;--accent:#087e8b;--accent-dark:#05636e;--tint:#eef7f7;--border:#d6e2e5;--white:#fff;--radius:14px;--wrap:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--white)}a{color:var(--accent-dark);text-underline-offset:4px}a:hover{color:var(--ink)}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.16;letter-spacing:-.035em}h1{font-size:clamp(2.35rem,4.6vw,3.9rem);font-weight:740;max-width:900px}h2{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:720}h3{font-size:1.38rem;font-weight:700}p{margin-top:18px}ul{padding-left:22px}li+li{margin-top:9px}.wrap{width:min(var(--wrap),calc(100% - 64px));margin:auto}.narrow{max-width:800px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:750;color:var(--accent-dark);margin:0 0 16px}.lead{font-size:1.2rem;line-height:1.65;color:var(--muted);margin:25px 0 30px}.section-intro{max-width:760px;color:var(--muted);margin:20px 0 35px}.muted{color:var(--muted);font-size:.93rem}.site-header{border-bottom:1px solid var(--border);background:rgba(255,255,255,.98);position:sticky;top:0;z-index:5}.nav-wrap{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:var(--ink);text-decoration:none;font-size:1.05rem;letter-spacing:.08em;font-weight:750;white-space:nowrap}.brand span{color:var(--accent)}.brand small{display:block;font-size:.72rem;font-weight:450;letter-spacing:.025em;color:var(--muted);margin-top:3px}nav{display:flex;gap:24px;align-items:center}nav>a:not(.button){font-size:.9rem;color:var(--muted);text-decoration:none}nav a[aria-current=page]{color:var(--ink);font-weight:750}nav>a:not(.button):hover{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;min-height:49px;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:7px;padding:12px 22px;text-decoration:none;font:650 .94rem/1.4 system-ui;cursor:pointer;transition:background .15s}.button:hover{background:var(--accent-dark);color:white}.button.secondary{background:white;color:var(--ink);border-color:var(--border)}.button.secondary:hover{background:var(--tint)}.button.small{min-height:43px;padding:9px 18px}.button:disabled{opacity:.65;cursor:wait}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.menu-toggle{display:none;min-height:44px;min-width:66px;border:1px solid var(--border);background:white;border-radius:6px;color:var(--ink);font:inherit}.hero{padding:76px 0 66px;background:linear-gradient(120deg,#fff 30%,#f2f8f8)}.hero-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:90px;align-items:center}.hero-facts{display:flex;gap:22px;color:var(--muted);font-size:.88rem;margin-top:34px}.portrait{max-width:340px;margin-left:auto;width:100%}.portrait img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius)}.portrait figcaption{display:flex;flex-direction:column;font-size:.87rem;margin-top:14px}.portrait figcaption strong{font-size:1.05rem}.portrait figcaption span{color:var(--muted)}.section{padding:80px 0}.tinted{background:var(--tint)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:36px}.card{padding:30px;border:1px solid var(--border);border-radius:var(--radius);background:white;display:flex;flex-direction:column}.card p{color:var(--muted)}.card h2{font-size:1.5rem}.card-number{font-size:.85rem;color:var(--accent);margin-bottom:26px;font-weight:700}.card .text-link{margin-top:22px;font-size:.9rem;font-weight:650}.card .text-link+.text-link{margin-top:10px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:56px}.demo-image{border:1px solid var(--border);border-radius:var(--radius);padding:16px;background:white;overflow:hidden}.demo-image figcaption{font-size:.8rem;color:var(--muted);margin-top:12px}.about-grid{display:grid;grid-template-columns:.85fr 1.1fr;gap:70px}.about-grid p:first-child{margin-top:0}.tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:26px}.tags span{border:1px solid var(--border);border-radius:6px;padding:7px 12px;font-size:.81rem}.references{padding-top:30px}.logo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;margin-top:36px}.logo-grid a{height:98px;padding:17px;display:flex;align-items:center;justify-content:center;border:1px solid #e8eff0;border-radius:8px}.logo-grid img{max-height:65px;max-width:100%;width:auto;object-fit:contain}.page-hero{background:var(--tint);padding:70px 0 60px}.page-hero h1{max-width:940px}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;counter-reset:step;margin:38px 0}.steps.three{grid-template-columns:repeat(3,minmax(0,1fr))}.steps li{counter-increment:step;margin:0}.steps li:before{content:"0" counter(step);color:var(--accent);font-weight:700;display:block;margin-bottom:14px}.steps p{font-size:.94rem;color:var(--muted)}.check-list li{padding-left:6px}.faq{max-width:900px}.faq h2{margin-bottom:30px}details{padding:20px 0;border-bottom:1px solid var(--border)}summary{cursor:pointer;font-size:1.08rem;font-weight:650}details p{color:var(--muted);max-width:760px}.contact-section{padding:76px 0;background:#f5f8fa;border-top:1px solid var(--border)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px}.contact-grid h2{max-width:350px}.contact-grid p{color:var(--muted)}address{font-style:normal;display:flex;flex-direction:column;gap:6px;margin-top:26px;overflow-wrap:anywhere}address a{font-size:1rem}.contact-form{padding:30px;background:white;border:1px solid var(--border);border-radius:var(--radius)}label{font-size:.9rem;font-weight:650;display:block;margin-bottom:18px}label span{font-size:.75rem;font-weight:400;color:var(--muted)}input,textarea{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #a5b8bf;border-radius:6px;font:inherit;font-size:1rem;background:white;color:var(--ink)}textarea{resize:vertical;min-height:130px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.privacy-note{font-size:.8rem;margin:10px 0 22px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.submit-row{display:flex;flex-wrap:wrap;align-items:center;gap:15px}.form-status{font-size:.86rem;margin:0;flex:1;min-width:160px}.form-status.error{color:#9a2431}.legal{max-width:880px;overflow-wrap:anywhere}.legal h1{font-size:2.8rem}.legal h2,.legal h3{margin-top:34px;font-size:1.45rem}.legal>p:first-child{font-size:2.5rem;margin-top:0}footer{padding:28px 0;border-top:1px solid var(--border);font-size:.83rem;color:var(--muted)}.footer-wrap{display:flex;justify-content:space-between;gap:20px}.footer-wrap>div{display:flex;flex-wrap:wrap;gap:22px}.skip-link{position:absolute;top:-80px;left:16px;background:white;padding:12px;z-index:20}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #057d8b;outline-offset:4px}
@media(max-width:1050px){nav{gap:16px}.hero-grid{gap:40px}.logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card{padding:24px}.split,.contact-grid{gap:35px}.brand{font-size:.95rem}}
@media(max-width:820px){.wrap{width:calc(100% - 40px)}.nav-wrap{flex-wrap:wrap;min-height:80px;padding:15px 0;gap:12px}.menu-toggle{display:block}nav{width:100%;display:flex;flex-wrap:wrap;gap:16px}html.js nav{display:none}html.js nav.is-open{display:flex}nav>a{padding:6px 0}nav .button{margin-left:auto}.hero{padding:50px 0}.hero-grid{grid-template-columns:1.25fr .75fr;gap:28px}.portrait figcaption span{font-size:.75rem}.cards{grid-template-columns:1fr}.card{padding:28px}.card-number{margin-bottom:14px}.split,.about-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.section{padding:56px 0}.references{padding-top:10px}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.steps.three{grid-template-columns:1fr}.contact-grid h2{max-width:none}.contact-section{padding:56px 0}.logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.logo-grid a{padding:12px}.page-hero{padding:48px 0}.legal h1{font-size:2.2rem}}
@media(max-width:560px){.hero-grid{grid-template-columns:1fr}.hero .eyebrow{font-size:.68rem;letter-spacing:.1em}.hero .lead{font-size:1.06rem}.portrait{max-width:230px;margin:8px 0 0;display:grid;grid-template-columns:84px 1fr;gap:16px;align-items:center;max-width:none}.portrait img{border-radius:10px}.portrait figcaption{margin:0}.hero-facts{margin-top:26px;gap:18px}.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.logo-grid a{height:80px}.contact-form{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.steps{grid-template-columns:1fr;gap:26px}.footer-wrap{flex-direction:column}.button{padding:12px 17px}.brand{font-size:.89rem}.brand small{font-size:.68rem}.actions{gap:10px}.lead{font-size:1.06rem}.legal>p:first-child{font-size:1.9rem}.contact-grid{gap:28px}nav .button{margin-left:0}}
.card,.split>* ,.hero-grid>*,.contact-grid>*{min-width:0}.card h2,.card h3{hyphens:auto;overflow-wrap:anywhere}.contact-card{padding:30px;border:1px solid var(--border);border-radius:var(--radius);background:white;display:flex;flex-direction:column;align-items:flex-start}.contact-card>strong{font-size:1.3rem}.contact-card>span{color:var(--muted);font-size:.9rem;margin-top:4px}.contact-mail{font-weight:650;font-size:clamp(.95rem,2vw,1.22rem);margin-top:24px;overflow-wrap:anywhere;max-width:100%}.contact-phone{margin-top:10px}.contact-card .actions{margin-top:26px}
h1,h2,h3{overflow-wrap:anywhere;hyphens:manual}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* V02: actual demo examples and a quieter secondary service area. */
.demo-heading{display:flex;justify-content:space-between;align-items:center;gap:32px}.demo-heading>div{max-width:760px}.demo-heading>.button{flex-shrink:0}.demo-heading .section-intro{margin-bottom:0}.demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:36px}.demo-card{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:#fff;min-width:0}.demo-screen{display:block;background:#f5f8fa;padding:16px;border-bottom:1px solid var(--border)}.demo-screen img{width:100%;height:auto;border-radius:7px}.demo-screen:hover{background:var(--tint)}.demo-copy{padding:26px}.demo-copy p{color:var(--muted);margin-top:14px}.demo-label{display:block;margin-top:18px;font-size:.79rem;font-weight:650;color:var(--accent-dark)}.demo-note{max-width:900px;color:var(--muted);font-size:.94rem;margin-top:26px}.demo-section{scroll-margin-top:20px}
@media(max-width:1050px){nav{gap:15px}nav>a:not(.button){font-size:.85rem}.demo-heading{align-items:flex-start;flex-direction:column;gap:24px}}
@media(max-width:820px){.demo-grid{grid-template-columns:1fr}.demo-screen{padding:12px}.demo-copy{padding:24px}nav>a:not(.button){font-size:.9rem}}

/* V03: decorative pictograms for the primary service cards. */
.service-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:14px;background:var(--tint);margin-bottom:22px;flex-shrink:0}
.service-icon img{width:48px;height:48px}
@media(max-width:560px){.service-icon{width:56px;height:56px;margin-bottom:18px}.service-icon img{width:42px;height:42px}}

/* V05: concise practical examples using the existing responsive card layout. */
.practice-label{display:block;margin-top:auto;padding-top:20px;font-size:.79rem;font-weight:650;color:var(--accent-dark)}
.practice-section .service-icon{background:#fff}
