@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--navy:#183a4a;--blue:#367b91;--mint:#d7eee8;--cream:#fbf8f1;--ink:#19323b;--muted:#6e858a;--line:#dbe6e2;--coral:#e79a83}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--cream);color:var(--ink);font:14px/1.7 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 44px));margin:auto}.notice{background:var(--navy);color:#d6e9e7;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.notice .wrap{display:flex;justify-content:space-between;padding:8px 0}.notice span:first-child{color:var(--mint)}header{position:sticky;top:0;z-index:10;background:rgba(251,248,241,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:12px;font-weight:700;font-size:13px;letter-spacing:.11em}.logo-mark{position:relative;display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:var(--mint);color:var(--navy);font:600 16px 'Playfair Display',serif;letter-spacing:-.08em}.logo-mark span{color:var(--coral);font-size:13px;position:absolute;right:3px;top:0}.logo small{display:block;font-size:8px;font-weight:500;letter-spacing:.15em;color:var(--muted);margin-top:4px}nav{display:flex;align-items:center;gap:27px;font-size:12px;font-weight:600}nav a:hover{color:var(--blue)}nav select{border:1px solid var(--line);background:transparent;padding:8px;color:var(--navy)}.nav-appointment{background:var(--navy);color:white;padding:12px 16px}.nav-appointment b{color:var(--mint);margin-left:10px}.mobile{display:none}.hero{position:relative;overflow:hidden;background:#e8f3ef;padding-top:55px}.hero-layout{display:grid;grid-template-columns:1fr .88fr;gap:55px;align-items:center;padding-bottom:65px}.hero-copy{padding:30px 0 25px}.eyebrow,.kicker{font-size:10px;letter-spacing:.19em;font-weight:700;color:var(--blue);text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{width:24px;height:1px;background:var(--coral)}h1,h2,h3{margin-top:0}h1{font:500 clamp(44px,5.8vw,72px)/1.06 'Playfair Display',serif;letter-spacing:-.045em;margin:24px 0 20px;color:var(--navy)}h1 i{color:var(--blue);font-weight:500}.hero-copy>p{font-size:14px;color:#59757b;max-width:475px;line-height:1.95}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.btn{display:inline-flex;align-items:center;gap:22px;background:var(--navy);color:white;border:0;padding:15px 19px;font:600 12px 'DM Sans',sans-serif;cursor:pointer}.btn b{color:var(--mint);font-size:16px}.quiet-link{font-size:12px;font-weight:700;border-bottom:1px solid #a8c3c0;padding-bottom:5px}.quiet-link span{color:var(--blue);margin-left:9px}.hero-note{display:flex;align-items:center;gap:13px;margin-top:55px;color:var(--navy);font-size:11px;font-weight:700}.note-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid #a9d1c9;border-radius:50%;font-size:20px;color:var(--blue)}.hero-note small{display:block;font-weight:400;color:var(--muted);margin-top:2px}.hero-photo{position:relative;padding:0 0 30px 25px}.hero-photo>img{display:block;width:100%;height:490px;object-fit:cover;border-radius:48% 48% 5px 5px}.hero-photo:before{content:'';position:absolute;top:20px;left:0;right:25px;bottom:0;border:1px solid #9dc8c0;border-radius:48% 48% 5px 5px}.photo-tag{position:absolute;left:0;bottom:0;background:var(--coral);color:var(--navy);padding:16px 20px;display:flex;gap:13px;align-items:center;font-size:9px;letter-spacing:.12em;line-height:1.5}.photo-tag b{font:500 27px 'Playfair Display'}.circle-stamp{position:absolute;right:-15px;top:55px;width:83px;height:83px;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--navy);color:var(--mint);font:600 9px/1.45 'DM Sans';letter-spacing:.13em;transform:rotate(9deg)}.hero-bottom{border-top:1px solid #cfe1dc}.bottom-inner{display:flex;justify-content:space-between;padding:17px 0;color:#65817e;font-size:9px;letter-spacing:.16em;font-weight:700}.section{padding:100px 0}.section-title{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.section-title h2,.feature-copy h2,.steps h2,.contact-copy h2{font:500 clamp(32px,4vw,48px)/1.15 'Playfair Display',serif;letter-spacing:-.035em;color:var(--navy);margin:14px 0 0}.section-title>p{max-width:330px;color:var(--muted);font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{background:#fffdf8;border:1px solid #e4e9e3;padding:24px 25px 28px;min-height:245px;position:relative;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #1e47500d}.service-top{display:flex;justify-content:space-between;align-items:center;color:#9bb3b0;font-size:10px}.service-icon{width:44px;height:44px;border-radius:14px 14px 14px 4px;background:var(--mint);color:var(--blue);display:grid;place-items:center;font-size:21px}.service-card h3{font:600 19px 'Playfair Display',serif;margin:22px 0 8px;color:var(--navy)}.service-card p{font-size:12px;color:var(--muted);line-height:1.85;max-width:300px}.service-card>a{position:absolute;right:23px;bottom:18px;color:var(--blue);font-size:18px}.feature{display:grid;grid-template-columns:1fr 1fr;background:#e5f0eb;min-height:510px}.feature-image{min-height:510px;position:relative}.feature-image img{position:absolute;width:100%;height:100%;object-fit:cover}.feature-copy{padding:80px clamp(35px,7vw,100px);align-self:center}.feature-copy>p{color:#5f7a7c;font-size:13px;line-height:2;margin:22px 0}.promise{display:grid;gap:13px;margin:28px 0}.promise div{display:flex;gap:14px;align-items:center;font-size:12px;font-weight:600}.promise b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#c7e3db;color:var(--blue);font-size:10px}.dark-btn{background:var(--blue)}.steps h2{max-width:620px;margin-bottom:43px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.step-grid article{border-top:1px solid #bcd4cf;padding-top:20px}.step-number{display:grid;place-items:center;width:39px;height:39px;border:1px solid #a6c9c2;border-radius:50%;color:var(--blue);font:500 14px 'Playfair Display'}.step-grid h3{font:600 19px 'Playfair Display';margin:17px 0 7px;color:var(--navy)}.step-grid p{font-size:12px;color:var(--muted);max-width:290px}.testimonial{background:var(--navy);color:white;padding:70px 0}.quote-layout{display:grid;grid-template-columns:100px 1fr 90px;gap:20px;align-items:center}.quote-symbol{font:130px/.7 'Playfair Display';color:var(--coral)}.testimonial .kicker{color:var(--mint)}blockquote{font:italic 500 clamp(23px,3vw,36px)/1.4 'Playfair Display';max-width:760px;margin:18px 0;color:#f4f8f5}.review-note{font-size:9px;letter-spacing:.14em;color:#a8c8c2}.review-dots{font-size:14px;letter-spacing:7px;color:var(--coral)}.contact{background:#f0f5ef}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-copy h2{margin:15px 0}.contact-copy>p{font-size:13px;color:var(--muted);line-height:1.9}.contact-info{display:flex;gap:13px;align-items:center;margin-top:23px}.contact-info>span{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:var(--mint);color:var(--blue)}.contact-info small{display:block;font-size:8px;letter-spacing:.15em;color:var(--muted)}.contact-info strong{font-size:12px;font-weight:600}.disclaimer{font-size:10px!important;color:#8a9d9b!important;margin-top:25px}.contact form{background:white;padding:32px;display:grid;gap:19px;box-shadow:0 10px 35px #23494b0b}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact form label{display:grid;gap:7px;color:#607578;font-size:10px;font-weight:700}.contact input,.contact select,.contact textarea{width:100%;border:1px solid #e0e9e4;background:#fbfdfa;padding:12px;font:12px 'DM Sans';color:var(--navy);outline:none;border-radius:0}.contact input:focus,.contact textarea:focus,.contact select:focus{border-color:var(--blue)}.contact textarea{resize:vertical}.contact form .btn{justify-self:start}.form-note{font-size:9px;color:#849894}footer{background:#142f3c;color:#e3efeb;padding-top:30px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:27px}.footer-logo{color:white}.footer-main p{font-size:11px;color:#b5ccc7}.footer-main>a:last-child{font-size:11px;color:var(--mint)}.footer-bottom{border-top:1px solid #31505a;display:flex;justify-content:space-between;padding:16px 0;color:#a8c1bd;font-size:10px}.footer-bottom b{color:var(--mint)}
@media(max-width:850px){nav{gap:12px}.hero-layout{gap:25px}.hero-photo>img{height:430px}.feature-copy{padding:55px 35px}.contact-layout{gap:35px}}@media(max-width:650px){.wrap{width:calc(100% - 32px)}.notice .wrap span:last-child{display:none}.nav{height:72px}.mobile{display:block;border:0;background:none;color:var(--navy);font-size:23px}nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--cream);padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}nav.active{display:flex}nav a{padding:8px}.hero{padding-top:30px}.hero-layout{grid-template-columns:1fr;padding-bottom:45px}.hero-copy{padding:20px 0}.hero h1{font-size:49px}.hero-photo{width:90%;margin:0 auto}.hero-photo>img{height:370px}.circle-stamp{right:-15px}.bottom-inner{gap:12px;flex-wrap:wrap;font-size:8px}.section{padding:70px 0}.section-title{display:block}.section-title>p{margin-top:18px}.service-grid{grid-template-columns:1fr}.service-card{min-height:210px}.feature{grid-template-columns:1fr}.feature-image{min-height:330px}.feature-copy{padding:50px 24px}.step-grid{grid-template-columns:1fr;gap:20px}.quote-layout{grid-template-columns:45px 1fr}.quote-symbol{font-size:75px;align-self:start}.review-dots{grid-column:2}.contact-layout{grid-template-columns:1fr;gap:30px}.contact form{padding:22px 17px}.fields{grid-template-columns:1fr}.footer-main{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column;gap:8px}.hero-actions{flex-wrap:wrap}}
