*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--surface);color:var(--primary);font:16px/1.65 var(--body);overflow-x:hidden}a{color:inherit}svg{display:block}.shell{width:min(1160px,calc(100% - 40px));margin:auto}.skip-link{position:fixed;left:16px;top:-60px;z-index:999;background:#fff;color:#111;padding:12px 18px}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface) 94%,transparent);border-bottom:1px solid color-mix(in srgb,var(--primary) 14%,transparent);backdrop-filter:blur(12px)}.nav-row{min-height:76px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;font:700 1.05rem var(--heading);text-decoration:none}.brand svg{width:34px;fill:none;stroke:var(--secondary);stroke-width:2}.nav-row nav{display:flex;gap:28px;margin-left:auto}.nav-row nav a,.text-link{text-decoration:none;font-weight:700}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 22px;border:2px solid var(--secondary);border-radius:var(--radius,10px);background:var(--secondary);color:#fff;text-decoration:none;font-weight:800;transition:transform .2s ease,box-shadow .2s ease}.button.small{min-height:44px;padding:9px 16px}.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px color-mix(in srgb,var(--secondary) 24%,transparent)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.hero{padding:clamp(64px,8vw,112px) 0}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(36px,7vw,90px)}h1,h2,h3{font-family:var(--heading);line-height:1.12;margin:0}h1{font-size:clamp(2.7rem,6vw,5.4rem);letter-spacing:-.045em;max-width:12ch}h2{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.03em}.eyebrow{color:var(--secondary);font-weight:900;text-transform:uppercase;letter-spacing:.13em;font-size:.78rem}.lede{font-size:clamp(1.05rem,2vw,1.25rem);max-width:58ch;color:color-mix(in srgb,var(--primary) 76%,white)}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:30px 0}.trust-list{display:flex;gap:22px;flex-wrap:wrap;padding:0;list-style:none;font-size:.9rem;font-weight:700}.trust-list li::before{content:"✓";color:var(--accent);margin-right:7px}.hero-art svg{width:100%;max-height:520px}.blob{fill:color-mix(in srgb,var(--secondary) 12%,var(--surface))}.tooth{fill:var(--surface);stroke:var(--secondary);stroke-width:8}.spark{fill:var(--accent)}.services{padding:clamp(70px,9vw,120px) 0;background:color-mix(in srgb,var(--secondary) 6%,var(--surface))}.section-heading{max-width:620px;margin-bottom:42px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-grid article{padding:28px;border:1px solid color-mix(in srgb,var(--primary) 14%,transparent);border-radius:var(--card-radius,16px);background:var(--surface);box-shadow:var(--shadow,0 12px 30px rgba(18,48,74,.06))}.service-grid svg{width:38px;height:38px;margin-bottom:22px;fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.service-grid h3{font-size:1.18rem}.service-grid p{color:color-mix(in srgb,var(--primary) 72%,white)}.about{padding:clamp(70px,9vw,120px) 0}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(36px,9vw,120px);align-items:start}.about-grid>p{font-size:1.12rem;margin:40px 0 0}.contact{padding:0 0 80px}.contact-card{padding:clamp(30px,6vw,64px);border-radius:var(--card-radius,20px);background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-card .eyebrow{color:color-mix(in srgb,var(--accent) 65%,white)}.contact-actions{display:flex;flex-direction:column;align-items:center;gap:12px}.button.light{background:#fff;color:var(--primary);border-color:#fff}footer{border-top:1px solid color-mix(in srgb,var(--primary) 14%,transparent);padding:30px 0}footer .shell{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.9rem}body[data-profile=classic]{--radius:2px;--card-radius:2px;--shadow:none}body[data-profile=classic] h1,body[data-profile=classic] h2{letter-spacing:-.02em}body[data-profile=modern]{--radius:12px;--card-radius:20px}body[data-profile=warm]{--radius:999px;--card-radius:28px}body[data-profile=warm] .service-grid article:nth-child(even){transform:translateY(14px)}@media(max-width:900px){.nav-row nav{display:none}.hero-grid,.about-grid{grid-template-columns:1fr}.hero-art{max-width:560px;margin:auto}.service-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.shell{width:min(100% - 28px,1160px)}.site-header .button.small{display:none}.nav-row{min-height:64px}.hero{padding-top:52px}.service-grid{grid-template-columns:1fr}.actions{align-items:stretch;flex-direction:column}.button{width:100%}.contact-card{align-items:stretch;flex-direction:column}.contact-actions{align-items:stretch}body[data-profile=warm] .service-grid article:nth-child(even){transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.button:hover{transform:none}body[data-profile=warm] .service-grid article:nth-child(even){transform:none}}
/* Accessible pointer targets */
.brand,.text-link,.contact-actions>a,.nav-row nav a{min-height:44px;display:inline-flex;align-items:center}
body[data-profile=warm] .contact-card .eyebrow{color:#b8d2cb}
