*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Montserrat,system-ui,sans-serif;font-weight:300;color:#1d3247;background:#fff;line-height:1.7}
h1,h2{font-weight:500;margin:0}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}.narrow{max-width:680px;text-align:center}
.hero{position:relative;overflow:hidden;min-height:min(88vh,680px);display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 24px;color:#fff;background:#fff}
.blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.92;pointer-events:none}
.b1{width:75%;height:110%;left:-12%;top:-20%;background:radial-gradient(circle,#0b2a5b 0,#123f7a 55%,transparent 72%)}
.b2{width:60%;height:95%;left:25%;top:5%;background:radial-gradient(circle,#0f6f8a 0,#14879a 50%,transparent 72%)}
.b3{width:55%;height:90%;right:-12%;top:-10%;background:radial-gradient(circle,#1d8f7a 0,#2fa77f 50%,transparent 72%)}
.b4{width:45%;height:70%;left:5%;bottom:-25%;background:radial-gradient(circle,#0d4f7c 0,transparent 70%)}
.hero .inner{position:relative;z-index:1;text-shadow:0 2px 18px rgba(5,25,50,.35)}
.eyebrow{letter-spacing:.25em;text-transform:uppercase;font-size:.75rem;margin:0 0 18px;opacity:.92}
.hero h1{font-size:clamp(2.6rem,8.5vw,5.8rem);font-weight:300;line-height:1.05;letter-spacing:.02em}
.amp{font-weight:200}
.by{font-size:clamp(1.3rem,3vw,1.8rem);font-weight:300;letter-spacing:.3em;margin:8px 0 0}
.role{font-size:1rem;letter-spacing:.3em;text-transform:uppercase;margin:18px 0 36px;font-weight:400}
.role::before,.role::after{content:"";display:inline-block;width:40px;height:1px;background:rgba(255,255,255,.7);vertical-align:middle;margin:0 14px}
.btn{display:inline-block;background:#0f3d6e;color:#fff;text-decoration:none;padding:14px 32px;border-radius:999px;font-weight:500;letter-spacing:.05em;transition:background .2s,transform .2s;text-shadow:none}
.btn:hover{background:#127a86;transform:translateY(-2px)}
.hero .btn{background:#fff;color:#0f3d6e;box-shadow:0 10px 30px rgba(5,25,50,.25)}
.hero .btn:hover{background:#e8f6f3}
section{padding:90px 0}
.kicker{display:inline-block;letter-spacing:.3em;text-transform:uppercase;font-size:.8rem;font-weight:500;color:#14879a;margin-bottom:8px}
h2{font-size:clamp(1.9rem,4.5vw,2.6rem);color:#0f2f5c;margin-bottom:18px;font-weight:400}
.about{background:#fff}
.visit{background:linear-gradient(135deg,#eef4fb 0,#e8f6f6 50%,#ecf7f0 100%)}
.grid{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center}
address{font-style:normal;margin:28px 0 6px;font-size:1.05rem}
.map{border-radius:18px;overflow:hidden;box-shadow:0 12px 40px rgba(15,47,92,.18);aspect-ratio:4/3}
.map iframe{width:100%;height:100%;border:0;display:block}
footer{text-align:center;padding:36px 24px;background:linear-gradient(90deg,#0b2a5b,#0f6f8a 55%,#1d8f7a);color:#e6f3f5;font-size:.95rem}
footer a{color:#fff;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.grid{grid-template-columns:1fr;text-align:center}section{padding:64px 0}.hero{min-height:auto;padding:90px 20px}.role{letter-spacing:.2em;font-size:.85rem}.role::before,.role::after{width:18px;margin:0 8px}.blob{filter:blur(40px)}.b1{width:120%;left:-40%}.b2{width:100%;left:10%}.b3{width:100%;right:-45%}}

/* decorative accents */
.hero{position:relative;overflow:hidden}
.tdeco{position:absolute;top:0;bottom:0;right:0;width:40%;pointer-events:none;z-index:0;color:inherit}
.tdeco span{position:absolute;opacity:.8;line-height:0}
.tdeco svg{height:auto}
.tdeco .a1{left:14%;top:16%;transform:rotate(-22deg)}.tdeco .a1 svg{width:150px}
.tdeco .a2{right:10%;top:30%;transform:rotate(16deg)}.tdeco .a2 svg{width:150px}
.tdeco .a3{left:22%;bottom:16%;transform:rotate(-10deg)}.tdeco .a3 svg{width:130px}
.tdeco .a4{right:18%;bottom:10%;transform:rotate(12deg)}.tdeco .a4 svg{width:54px}
@media(min-width:900px){.hero{padding-right:42%!important}}
.tdiv{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 auto;padding:6px 0;max-width:420px;color:inherit;opacity:.35}
.tdiv::before,.tdiv::after{content:"";flex:1;height:1px;background:currentColor}
.tdiv svg{width:30px;height:auto}
@media(max-width:899px){.tdeco{width:100%}.tdeco span{opacity:.13}.tdeco .a1 svg,.tdeco .a2 svg,.tdeco .a3 svg{width:64px}.tdeco .a4 svg{width:30px}.tdeco .a1{left:4%;top:4%}.tdeco .a2{right:4%;top:6%}.tdeco .a3{left:5%;bottom:4%}.tdeco .a4{right:6%;bottom:5%}.tdiv{max-width:240px}.tdiv svg{width:22px}}
.hero .tdeco{z-index:2;color:#fff}

/* Services & Pricing (matches Debra's page) */
.services{background:rgba(255,255,255,.5)}
.services .head{margin:0 auto 40px}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}
.svc-cat{background:#fff;border-radius:18px;padding:28px 26px;box-shadow:0 8px 26px rgba(0,0,0,.06)}
.svc-cat h3{font-family:inherit;font-weight:400;font-size:1.35rem;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #e3e3e3}
.svc-cat ul{list-style:none;margin:0;padding:0}
.svc-cat li{padding:10px 0}
.svc-row{display:flex;align-items:baseline;gap:8px}
.svc-name{font-weight:500}
.svc-dots{flex:1;border-bottom:1px dotted #bbb;transform:translateY(-4px)}
.svc-price{font-weight:500;white-space:nowrap}
.svc-meta{margin:2px 0 0;color:#6b6b6b;font-size:.88rem;line-height:1.5}
.svc-note{text-align:center;color:#6b6b6b;font-size:.95rem;margin:36px 0 18px}
.services .btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
@media(max-width:960px){.svc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.svc-grid{grid-template-columns:1fr}.svc-cat{padding:22px 20px}}
.svc-single{grid-column:1/-1}.svc-single ul{columns:2;column-gap:48px}.svc-single li{break-inside:avoid}
@media(max-width:640px){.svc-single ul{columns:1}}
