:root{--navy:#123c5a;--blue:#1d6287;--green:#80b918;--green-dark:#5e8d0f;--mint:#eef8e7;--sky:#eaf5fa;--ink:#17313f;--muted:#61727b;--white:#fff;--line:#dbe7e8;--shadow:0 24px 60px rgba(18,60,90,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}img{display:block;width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Manrope",sans-serif;line-height:1.12}h1{font-size:clamp(2.8rem,6vw,5.7rem);letter-spacing:-.06em;margin-bottom:1.5rem;max-width:820px}h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.045em;margin-bottom:1.2rem}h3{font-size:1.2rem;margin-bottom:.65rem}.site-header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,5rem);max-width:1600px;margin:auto}.brand{display:flex;align-items:center;line-height:1.05}.brand-logo{width:clamp(190px,20vw,255px);height:76px;object-fit:contain;object-position:left center}.site-header nav{display:flex;gap:2rem;font-weight:600}.site-header nav a:hover{color:var(--green-dark)}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--green);color:#102b14;padding:1rem 1.45rem;font-family:"Manrope";font-weight:800;transition:.2s transform,.2s background;box-shadow:0 10px 26px rgba(128,185,24,.22)}.button:hover{transform:translateY(-2px);background:#91ca24}.button-small{padding:.78rem 1.2rem;font-size:.9rem}.hero{min-height:720px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(2rem,5vw,6rem);padding:5rem clamp(1.25rem,6vw,7rem) 6rem;overflow:hidden;background:radial-gradient(circle at 75% 30%,#f3f9d8 0,transparent 28%),linear-gradient(120deg,#f7fbfd 0,#fff 62%)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;font-weight:800;color:var(--blue);margin-bottom:1rem}.eyebrow span{display:inline-block;width:30px;height:3px;background:var(--green);vertical-align:middle;margin-right:.65rem}.lead{font-size:clamp(1.08rem,2vw,1.3rem);color:var(--muted);max-width:660px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:1.4rem;margin:2rem 0}.text-link{font-weight:800;color:var(--navy)}.text-link span{color:var(--green-dark);margin-left:.3rem}.trust-row{display:flex;gap:1.4rem;flex-wrap:wrap;color:#48606b;font-size:.92rem;font-weight:600}.trust-row span::first-letter{color:var(--green-dark)}.hero-visual{position:relative}.image-frame{border-radius:38px 38px 120px 38px;overflow:hidden;box-shadow:var(--shadow);background:var(--sky);aspect-ratio:4/5}.image-frame img{height:100%;object-fit:cover}.floating-card{position:absolute;left:-2rem;bottom:2rem;background:white;border-radius:18px;padding:1rem 1.3rem;box-shadow:var(--shadow);border-left:5px solid var(--green)}.floating-card strong,.floating-card span{display:block}.floating-card span{color:var(--muted);font-size:.9rem}.service-strip{background:var(--navy);color:white;padding:1.25rem clamp(1.25rem,6vw,7rem);display:flex;justify-content:space-between;align-items:center}.service-strip p{margin:0;font-family:"Manrope";font-weight:700}.service-strip a{color:#c9ef6d;font-weight:800;font-size:1.2rem}.section{padding:7rem clamp(1.25rem,6vw,7rem)}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:end;max-width:1400px;margin:0 auto 3rem}.section-heading>p{color:var(--muted);font-size:1.05rem;max-width:520px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;max-width:1400px;margin:auto}.service-grid article{padding:2rem;border:1px solid var(--line);border-radius:24px;background:white;transition:.2s transform,.2s box-shadow}.service-grid article:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(18,60,90,.1)}.service-grid p{color:var(--muted);margin:0}.icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--mint);color:var(--green-dark);font-size:1.5rem;margin-bottom:1.4rem;font-weight:800}.about{background:var(--sky);display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem);align-items:stretch}.about-card{background:var(--blue);color:white;border-radius:32px;padding:clamp(2rem,5vw,4.5rem);box-shadow:var(--shadow)}.about-card>p:not(.eyebrow){font-size:1.08rem;color:#e5f4fa;max-width:620px}.eyebrow.light{color:#c9ef6d}.button-light{background:white;color:var(--navy);box-shadow:none;margin-top:1rem}.steps{display:grid;align-content:center}.steps>div{display:grid;grid-template-columns:64px 1fr;column-gap:1rem;padding:1.6rem 0;border-bottom:1px solid #c8dfe6}.steps>div:last-child{border:0}.steps span{grid-row:1/3;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--green);font-family:"Manrope";font-weight:800}.steps h3{margin:.1rem 0 .4rem}.steps p{margin:0;color:var(--muted)}.contact{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}.contact>div>p:not(.eyebrow){color:var(--muted);font-size:1.08rem}.contact-card{background:var(--mint);border-radius:26px;padding:2.4rem;display:flex;flex-direction:column;border:1px solid #d8edc5}.contact-card span{font-weight:700;color:var(--green-dark)}.contact-card a{font-family:"Manrope";font-weight:800;font-size:clamp(1.8rem,4vw,3rem);color:var(--navy);letter-spacing:-.04em;margin:.25rem 0}.contact-card small{font-size:.9rem;color:var(--muted)}footer{padding:2.2rem clamp(1.25rem,6vw,7rem);border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:2rem;color:var(--muted);font-size:.9rem}.brand-footer{color:var(--ink)}.mobile-call{display:none}.brand-footer .brand-logo{width:220px;height:72px}
@media(max-width:900px){.site-header nav{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:3.5rem}.hero-copy{max-width:720px}.hero-visual{max-width:620px;margin:auto}.image-frame{aspect-ratio:4/3}.section-heading,.about,.contact{grid-template-columns:1fr;gap:2rem}.service-grid{grid-template-columns:repeat(2,1fr)}footer{flex-wrap:wrap}.site-header .button-small{display:none}.mobile-call{display:block;position:fixed;z-index:20;left:1rem;right:1rem;bottom:1rem;text-align:center;background:var(--green);color:#102b14;font-family:"Manrope";font-weight:800;padding:.9rem;border-radius:999px;box-shadow:0 10px 30px rgba(18,60,90,.25)}body{padding-bottom:4.8rem}}
@media(max-width:560px){h1{font-size:2.7rem}.site-header{height:76px}.hero{padding-top:2.5rem}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{display:grid;gap:.5rem}.service-strip{align-items:flex-start;flex-direction:column;padding-top:1rem;padding-bottom:1rem}.section{padding-top:5rem;padding-bottom:5rem}.service-grid{grid-template-columns:1fr}.floating-card{left:.8rem;bottom:.8rem}.section-heading{margin-bottom:2rem}.about-card{border-radius:24px}.contact-card{padding:1.7rem}footer{display:grid}.brand strong{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-grid article{transition:none}}
.booking-group{display:grid;gap:1.15rem;margin:0;padding:1.35rem;border:1px solid var(--line);border-radius:18px;background:#f9fcfd}.booking-group legend{padding:0 .5rem;font-family:"Manrope",sans-serif;font-size:1.05rem;font-weight:800;color:var(--navy)}.booking-note{margin:1.5rem 0 0;padding:1rem 1.15rem;border-left:4px solid var(--green);border-radius:0 12px 12px 0;background:#f7fbf3;color:var(--muted)}.booking-note strong{color:var(--navy)}

/* Testimonials */
.site-header nav a[aria-current="page"]{color:var(--green-dark)}.testimonial-hero{position:relative;overflow:hidden;min-height:460px;display:flex;align-items:center;justify-content:space-between;gap:3rem;padding:5rem clamp(1.25rem,8vw,10rem);background:linear-gradient(120deg,var(--sky),#fff 68%)}.testimonial-hero>div:first-child{max-width:900px}.testimonial-hero h1{font-size:clamp(3rem,7vw,6.2rem);margin-bottom:1.25rem}.quote-mark{font-family:Georgia,serif;font-size:clamp(13rem,25vw,24rem);line-height:.6;color:rgba(128,185,24,.18);transform:translateY(2rem)}.testimonial-section{background:#fff}.testimonial-heading{align-items:center}.testimonial-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}.testimonial-card{padding:2.2rem;border:1px solid var(--line);border-radius:26px;background:white;box-shadow:0 14px 36px rgba(18,60,90,.07)}.testimonial-card.featured{grid-row:span 2;display:flex;flex-direction:column;justify-content:center;padding:clamp(2.3rem,5vw,4rem);background:var(--navy);color:white}.stars{color:#92ca24;letter-spacing:.18em;font-size:1.05rem;margin-bottom:1.25rem}.testimonial-card blockquote{margin:0;font-family:"Manrope",sans-serif;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.55;letter-spacing:-.02em}.testimonial-card.featured blockquote{font-size:clamp(1.45rem,2.8vw,2.1rem)}.testimonial-card footer{border:0;padding:1.8rem 0 0;display:flex;justify-content:flex-start;gap:.9rem;color:inherit}.avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--mint);color:var(--green-dark);font-weight:800}.featured .avatar{background:var(--green);color:#102b14}.testimonial-card footer strong,.testimonial-card footer small{display:block}.testimonial-card footer small{color:var(--muted)}.featured footer small{color:#bcd3de}.review-values{display:grid;grid-template-columns:repeat(3,1fr);background:var(--mint);border-top:1px solid #d8edc5;border-bottom:1px solid #d8edc5;padding:0 clamp(1.25rem,6vw,7rem)}.review-values div{padding:2.2rem;text-align:center;border-right:1px solid #d8edc5}.review-values div:last-child{border:0}.review-values strong,.review-values span{display:block}.review-values strong{font-family:"Manrope";font-size:1.3rem;color:var(--navy)}.review-values span{color:var(--muted);font-size:.92rem}.testimonial-cta{background:#f9fcfd}.site-footer{background:white}
@media(max-width:900px){.testimonial-hero{min-height:380px}.quote-mark{position:absolute;right:1rem;opacity:.7}.testimonial-hero>div:first-child{position:relative;z-index:1}.testimonial-grid{grid-template-columns:1fr}.testimonial-card.featured{grid-row:auto}.review-values{grid-template-columns:1fr;padding-top:1rem;padding-bottom:1rem}.review-values div{border-right:0;border-bottom:1px solid #d8edc5;padding:1.2rem}.review-values div:last-child{border-bottom:0}}

.service-list{list-style:none;margin:1.25rem 0 0;padding:1.15rem 0 0;border-top:1px solid var(--line);display:grid;gap:.62rem;color:#415965}.service-list li{position:relative;padding-left:1.35rem;line-height:1.45}.service-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--green-dark);font-weight:800}.service-note{max-width:1400px;margin:1.5rem auto 0;padding:1rem 1.25rem;border-radius:16px;background:var(--sky);color:var(--muted);font-size:.92rem}.service-grid article{display:flex;flex-direction:column}.service-grid .service-list{margin-top:auto}.service-grid article>p{margin-bottom:1.25rem}
.reviews-coming-soon{max-width:920px;margin:0 auto;padding:clamp(2rem,5vw,4rem);border-radius:30px;background:var(--navy);color:white;display:flex;align-items:center;gap:1.5rem;box-shadow:var(--shadow)}.reviews-coming-soon h3{font-size:clamp(1.5rem,3vw,2.3rem);margin:0 0 .5rem}.reviews-coming-soon p{margin:0;color:#cfe1e9;font-size:1.05rem}.coming-icon{width:68px;height:68px;flex:0 0 68px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#17313f;font-size:1.8rem}
@media(max-width:560px){.reviews-coming-soon{align-items:flex-start;flex-direction:column}.coming-icon{width:56px;height:56px;flex-basis:56px}}

/* Service details and forms */
.page-hero{padding:6rem clamp(1.25rem,8vw,10rem);background:var(--sky)}.page-hero h1{margin-bottom:1.2rem}.compact-hero{min-height:430px;display:flex;flex-direction:column;justify-content:center}.service-details{display:grid;gap:1.5rem;max-width:1400px;margin:auto}.detail-card{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(2rem,7vw,7rem);padding:clamp(2rem,5vw,4.5rem);border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:0 14px 40px rgba(18,60,90,.06)}.detail-card:nth-child(even){background:var(--sky)}.detail-title h2{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:1rem}.detail-title>p:last-child{color:var(--muted);font-size:1.05rem}.detail-body h3{font-size:1.35rem}.check-list{list-style:none;margin:1.2rem 0 1.5rem;padding:0;display:grid;gap:.8rem}.check-list li{position:relative;padding-left:1.8rem;color:#415965}.check-list li::before{content:"✓";position:absolute;left:0;top:0;width:1.25rem;height:1.25rem;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--green-dark);font-size:.75rem;font-weight:900}.scope-note{margin:0;padding:1rem 1.15rem;border-left:4px solid var(--green);background:#f7fbf3;border-radius:0 12px 12px 0;color:var(--muted)}.cta-band{background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:3rem}.cta-band h2{margin-bottom:.6rem}.cta-band p:not(.eyebrow){margin:0;color:#dcecf3}.cta-band .button{flex:0 0 auto;margin:0}
.form-hero,.payment-hero{padding-bottom:4rem}.form-hero h1,.payment-hero h1{font-size:clamp(3rem,7vw,6rem)}.form-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(2.5rem,7vw,7rem);align-items:start;max-width:1400px;margin:auto}.mini-steps{display:grid;gap:1rem;margin:2rem 0}.mini-steps>div{display:grid;grid-template-columns:42px 1fr;gap:.8rem;align-items:center}.mini-steps strong{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#102b14}.mini-steps p{margin:0;color:var(--muted)}.compact-contact{margin-top:2rem;padding:1.5rem}.compact-contact a{font-size:clamp(1.5rem,3vw,2.2rem)}.request-form{display:grid;gap:1.25rem;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.15rem}.request-form label{display:grid;gap:.45rem;font-weight:700;color:var(--navy)}.request-form label>span,.request-form label>span:first-child{color:var(--green-dark)}.request-form input,.request-form select,.request-form textarea{width:100%;border:1px solid #b9cdd2;border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-weight:400;padding:.85rem 1rem;outline:none}.request-form textarea{resize:vertical}.request-form input:focus,.request-form select:focus,.request-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(29,98,135,.13)}.request-form .consent{grid-template-columns:22px 1fr;align-items:start;font-size:.9rem;font-weight:500;color:var(--muted)}.request-form .consent input{width:18px;height:18px;margin-top:.15rem;accent-color:var(--green-dark)}.request-form .consent span{color:var(--muted)}.form-submit{border:0;cursor:pointer;font-size:1rem}.form-submit:disabled{cursor:wait;opacity:.7}.form-status{display:none;padding:1rem;border-radius:12px;font-weight:700}.form-status:not(:empty){display:block}.form-status.success{background:#e8f7df;color:#315e12}.form-status.error{background:#fff0ef;color:#8a2822}.form-status.pending{background:var(--sky);color:var(--blue)}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.payment-main{background:#f7fbfd}.payment-section{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,6vw,6rem);max-width:1200px;margin:auto;align-items:start}.payment-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:clamp(1rem,3vw,2rem);box-shadow:var(--shadow)}.payment-card .request-form{box-shadow:none;border:0;padding:1.5rem 0}.secure-badge{display:flex;gap:1rem;align-items:center;padding:1.2rem;border-radius:16px;background:var(--mint)}.secure-badge>span{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:50%;background:var(--green);font-weight:900}.secure-badge strong,.secure-badge small{display:block}.secure-badge small{color:var(--muted)}.money-input{position:relative}.money-input>span{position:absolute;left:1rem;top:.78rem;color:var(--muted)}.money-input input{padding-left:2rem}.security-note{margin:0;color:var(--muted);font-size:.86rem}.payment-help{padding:clamp(1.5rem,4vw,3rem);border-radius:28px;background:var(--navy);color:#fff}.payment-help p:not(.eyebrow){color:#cfe1e9}.payment-help a{display:inline-block;color:#c9ef6d;font-family:"Manrope";font-weight:800;font-size:1.2rem}.success-page{min-height:70vh;display:grid;place-items:center;padding:4rem 1.25rem;background:var(--sky)}.success-card{max-width:760px;text-align:center;padding:clamp(2rem,6vw,5rem);border-radius:32px;background:#fff;box-shadow:var(--shadow)}.success-card .lead{margin-left:auto;margin-right:auto}.success-card .hero-actions{justify-content:center}.success-icon{width:76px;height:76px;margin:0 auto 1.5rem;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#102b14;font-size:2rem;font-weight:900}
@media(max-width:1150px){.site-header nav{gap:1.1rem}.site-header{padding-left:1.5rem;padding-right:1.5rem}.brand-logo{width:200px}}
@media(max-width:900px){.detail-card,.form-section,.payment-section{grid-template-columns:1fr}.cta-band{align-items:flex-start;flex-direction:column}.form-intro{max-width:680px}.payment-help{order:-1}}
@media(max-width:560px){.page-hero{padding-top:4rem;padding-bottom:3.5rem}.detail-card{padding:1.6rem}.form-row{grid-template-columns:1fr}.request-form{padding:1.3rem;border-radius:20px}.success-card .hero-actions{align-items:stretch}.success-card .button{text-align:center}}
@media(max-width:900px){.site-header{height:auto;min-height:96px;flex-wrap:wrap;padding-top:.55rem;padding-bottom:.65rem}.site-header nav{display:flex;order:3;width:100%;gap:1.25rem;overflow-x:auto;padding:.35rem 0 .1rem;white-space:nowrap;font-size:.9rem}.site-header .button-small{display:inline-flex}.page-hero{padding-top:5rem}}
@media(max-width:560px){.site-header .button-small{display:none}.brand-logo{width:190px;height:66px}.site-header nav{gap:1rem}.page-hero{padding-top:4rem}}
