:root{--ink:#17221d;--muted:#66716b;--green:#123d2a;--green2:#1e6848;--wa:#20b85a;--cream:#f5f1e9;--gold:#b89555;--line:#e7e9e7;--white:#fff;--shadow:0 20px 60px rgba(19,48,35,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Manrope,Arial,sans-serif;line-height:1.65}.container{width:min(1160px,calc(100% - 40px));margin:auto}a{text-decoration:none;color:inherit}.site-header{height:82px;display:flex;align-items:center;position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(15px);z-index:50;border-bottom:1px solid rgba(20,50,35,.08)}.nav-wrap{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;color:white;background:var(--green);font:700 19px 'Cormorant Garamond'}.brand strong,.brand small{display:block}.brand strong{font-family:'Cormorant Garamond';font-size:20px;line-height:1.1}.brand small{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;color:var(--muted)}.nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:700}.nav>a:not(.nav-cta):hover{color:var(--green2)}.nav-cta{background:var(--green);color:#fff;padding:12px 18px;border-radius:4px}.menu-btn{display:none;border:0;background:none;font-size:25px}.hero{min-height:700px;position:relative;overflow:hidden;background:linear-gradient(115deg,#fff 0 61%,#f3efe7 61%)}.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:75px;align-items:center;min-height:700px}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--gold);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800}.eyebrow span{height:1px;width:31px;background:currentColor}.hero h1,.section-heading h2,.process h2,.final-box h2{font-family:'Cormorant Garamond';font-weight:700;line-height:.98;margin:22px 0;font-size:clamp(48px,5.5vw,76px);letter-spacing:-2px}.hero h1 em{color:var(--green2);font-style:italic}.hero-copy>p{max-width:640px;color:var(--muted);font-size:16px}.hero-actions{display:flex;gap:12px;margin:34px 0}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 23px;border-radius:4px;font-weight:800;font-size:13px;cursor:pointer}.btn-primary{color:#fff;background:var(--green);box-shadow:0 13px 35px rgba(18,61,42,.2)}.btn-primary:hover{background:var(--green2);transform:translateY(-2px)}.btn-ghost{border:1px solid #d6ddd9;background:white}.trust-row{display:flex;gap:0;border-top:1px solid var(--line);margin-top:45px;padding-top:25px}.trust-row div{min-width:130px;border-right:1px solid var(--line);padding:0 24px}.trust-row div:first-child{padding-left:0}.trust-row strong,.trust-row span{display:block}.trust-row strong{font-family:'Cormorant Garamond';font-size:20px}.trust-row span{font-size:10px;color:var(--muted)}.hero-card{height:505px;padding:60px 50px;position:relative;overflow:hidden;color:#fff;background:linear-gradient(145deg,#1a4d36,#0b2a1c);box-shadow:var(--shadow)}.card-lines{position:absolute;inset:-30%;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.025),0 0 0 210px rgba(255,255,255,.02)}.portrait-monogram{font:700 120px 'Cormorant Garamond';opacity:.06;position:absolute;right:25px;top:5px}.hero-card-kicker{color:#c7ad78;letter-spacing:2px;text-transform:uppercase;font-size:10px;position:relative}.hero-card h2{font:700 52px/.95 'Cormorant Garamond';margin:25px 0;position:relative}.hero-card blockquote{position:relative;margin:70px 0 28px;padding-left:16px;border-left:2px solid var(--gold);color:#d4ded8;font:italic 17px 'Cormorant Garamond'}.mini-link{position:relative;font-size:12px;font-weight:800;color:#d7bd87}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:230px;height:230px;border:1px solid rgba(184,149,85,.18);left:-100px;top:90px}.orb-two{width:80px;height:80px;background:rgba(184,149,85,.08);left:52%;bottom:20px}.section{padding:100px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.section-heading h2{font-size:clamp(38px,4.5vw,55px)}.intro-text{padding-top:30px;color:var(--muted)}.text-link{display:inline-flex;gap:12px;margin-top:15px;color:var(--green);font-weight:800;border-bottom:1px solid #b9c9c0}.services{background:#f7f8f6}.centered{text-align:center;max-width:660px;margin:0 auto 45px}.centered .eyebrow{justify-content:center}.centered p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{position:relative;background:#fff;padding:36px;min-height:295px;border:1px solid #edf0ed;transition:.3s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}.service-no{position:absolute;right:25px;top:18px;color:#d2d8d4;font:20px 'Cormorant Garamond'}.service-icon{font-size:29px;color:var(--gold)}.service-card h3{font:700 25px 'Cormorant Garamond';margin:24px 0 10px}.service-card p{color:var(--muted);font-size:13px}.service-card a{font-size:12px;color:var(--green2);font-weight:800}.accent-card{background:var(--green);color:white}.accent-card p{color:#c6d4cc}.accent-card a{color:#e2c489}.process{background:var(--green);color:white}.process-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}.process-media{border-radius:6px;overflow:hidden;box-shadow:var(--shadow)}.process-media img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/5}.process-copy ol{margin-top:30px}.eyebrow.light{color:#d6b675}.process h2{font-size:48px}.process ol{list-style:none;padding:0;margin:0}.process li{display:flex;gap:22px;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.12)}.process li>span{flex:none;width:39px;height:39px;display:grid;place-items:center;border:1px solid #a1b4aa;border-radius:50%;color:#e0c58c}.process li strong{font-family:'Cormorant Garamond';font-size:21px}.process li p{margin:2px 0;color:#aebfb5;font-size:12px}.reviews-head{display:flex;align-items:end;justify-content:space-between}.rating-summary{display:flex;gap:14px;align-items:center}.rating-summary>strong{font:700 48px 'Cormorant Garamond'}.rating-summary div>*{display:block}.rating-summary span{color:#e7a928;letter-spacing:2px}.rating-summary small{color:var(--muted)}.demo-notice{margin:8px 0 30px;padding:13px 16px;background:#fff9e8;border:1px solid #ead9a8;color:#756333;font-size:12px;border-radius:4px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.review-card{padding:25px;border:1px solid var(--line);background:white}.review-top{display:flex;align-items:center;gap:12px}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:white;font-weight:800}.review-name strong,.review-name small{display:block}.review-name strong{font-size:13px}.review-name small{font-size:10px;color:var(--muted)}.stars{margin:16px 0 8px;color:#e4a724;letter-spacing:1px}.review-card p{font-size:12px;color:#59645e;margin:0}.review-badge{margin-top:15px;font-size:9px;text-transform:uppercase;color:#8c958f;letter-spacing:1px}.btn-more{display:flex;margin:35px auto 0;background:white;border:1px solid var(--green);color:var(--green)}
.review-form-wrap{margin-top:60px;padding-top:50px;border-top:1px solid var(--line)}
.review-form{max-width:640px;margin:20px auto 0;display:flex;flex-direction:column;gap:16px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-field{display:flex;flex-direction:column;gap:7px}
.form-field label{font-size:11px;font-weight:800;letter-spacing:.5px;color:var(--ink)}
.form-field input,.form-field select,.form-field textarea{border:1px solid #d6ddd9;border-radius:4px;padding:13px 14px;font:inherit;font-size:14px;color:var(--ink);background:#fff}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--green2)}
.form-field textarea{resize:vertical}
.review-form .btn{align-self:flex-start}
.form-note{margin:0;font-size:12px;min-height:16px}
.form-note.success{color:var(--green2);font-weight:700}
.form-note.error{color:#b3401f;font-weight:700}
.review-card.is-new{border-color:var(--gold)}
.fame{background:#f7f8f6}
.fame-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center;max-width:1000px;margin:0 auto}
.fame-media{border-radius:6px;overflow:hidden;box-shadow:var(--shadow)}
.fame-media img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/5}
.fame-copy h2{font-family:'Cormorant Garamond';font-weight:700;font-size:clamp(30px,4vw,42px);margin:18px 0;letter-spacing:-1px}
.fame-copy p{color:var(--muted);font-size:15px;margin:0}
.footer-address{display:block;font-size:11px;color:var(--muted);max-width:220px}
.footer-address:hover{color:var(--green2);text-decoration:underline}.final-cta{padding-top:25px}.final-box{padding:60px 70px;display:flex;align-items:center;justify-content:space-between;gap:40px;color:white;background:linear-gradient(120deg,#184a34,#0d2d20)}.final-box h2{font-size:50px;margin-bottom:10px}.final-box p{color:#c3d1c9;margin:0}.btn-white{flex:none;background:white;color:var(--green)}footer{border-top:1px solid var(--line);padding:30px 0}.footer-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 30px;font-size:10px;color:var(--muted)}.footer-wrap p{max-width:380px}.floating-wa{position:fixed;right:23px;bottom:23px;z-index:60;display:flex;align-items:center;gap:11px;background:var(--wa);color:#fff;padding:11px 18px 11px 12px;border-radius:50px;box-shadow:0 14px 35px rgba(26,170,82,.35);animation:float 2.8s ease-in-out infinite}.floating-icon{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:white;color:var(--wa);font-size:22px}.floating-text small,.floating-text strong{display:block}.floating-text small{font-size:9px;opacity:.85}.floating-text strong{font-size:12px}.pulse-ring{position:absolute;inset:0;border:2px solid var(--wa);border-radius:50px;animation:pulse 1.8s infinite}@keyframes pulse{to{transform:scale(1.22);opacity:0}}@keyframes float{50%{transform:translateY(-5px)}}.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}.delay{transition-delay:.15s}
@media(max-width:900px){.nav{display:none;position:absolute;top:81px;left:0;right:0;background:#fff;padding:25px;flex-direction:column;box-shadow:var(--shadow)}.nav.open{display:flex}.menu-btn{display:block}.hero{background:linear-gradient(150deg,#fff 65%,#f3efe7 65%)}.hero-grid{grid-template-columns:1fr;padding:70px 0}.hero-card:not(.hero-photo-card){height:430px}.hero-photo-card{width:min(560px,100%);margin:auto}.intro-grid,.process-wrap,.fame-wrap{grid-template-columns:1fr;gap:25px}.process-media img,.fame-media img{aspect-ratio:16/10;max-height:380px}.service-grid{grid-template-columns:repeat(2,1fr)}.review-grid{grid-template-columns:repeat(2,1fr)}.final-box{align-items:flex-start;flex-direction:column}.final-box .btn{width:100%;justify-content:center}.footer-wrap{justify-content:flex-start}}
@media(max-width:680px){.form-row{grid-template-columns:1fr}.review-form .btn{width:100%;justify-content:center}}
@media(max-width:600px){.container{width:min(100% - 28px,1160px)}.site-header{height:70px}.brand strong{font-size:17px}.nav{top:69px}.hero-grid{padding:55px 0;gap:40px}.hero h1{font-size:38px;letter-spacing:-1px}.hero-copy>p{font-size:15px}.hero-card:not(.hero-photo-card){padding:45px 28px;height:410px}.hero-card h2{font-size:43px}.hero-photo-caption{padding:17px 15px}.hero-photo-caption strong{font-size:18px}.hero-photo-caption .mini-link{font-size:10px}.hero-actions{align-items:stretch;flex-direction:column}.trust-row{justify-content:space-between;flex-wrap:wrap;row-gap:16px}.trust-row div{padding:0 10px 0 0;min-width:0;border-right:0;flex:1 1 30%}.section{padding:60px 0}.section-heading h2{font-size:32px}.fame-copy h2{font-size:26px}.service-grid,.review-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:28px}.reviews-head{align-items:flex-start;flex-direction:column;gap:14px}.rating-summary>strong{font-size:38px}.process h2,.final-box h2{font-size:32px}.process-media img,.fame-media img{aspect-ratio: 1 / 1;
        max-height: 400px;
        object-fit: cover;
        object-position: top;}.final-box{padding:38px 24px}.final-box p{font-size:14px}.review-form-wrap{margin-top:45px;padding-top:35px}.footer-wrap{flex-direction:column;align-items:flex-start}.footer-address{max-width:none}.floating-wa{right:12px;bottom:12px}.floating-text strong{font-size:11px}}
@media(max-width:400px){.hero h1{font-size:32px}.eyebrow{font-size:10px}.btn{padding:14px 18px;font-size:12px}.floating-text{display:none}.floating-wa{padding:12px;border-radius:50%}.floating-icon{width:34px;height:34px}}

/* Cross-device layout and persistent contact action */
html{overflow-x:hidden;-webkit-text-size-adjust:100%}
body{overflow-x:hidden;overflow-wrap:anywhere;padding-bottom:100px}
img,svg{max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
.site-header{min-height:70px;height:auto}
.floating-wa{left:50%;right:auto;bottom:max(18px,env(safe-area-inset-bottom));min-width:285px;justify-content:center;padding:14px 24px 14px 15px;border-radius:50px;transform:translateX(-50%);animation:wa-float 2.8s ease-in-out infinite}
.floating-icon{flex:0 0 44px;width:44px;height:44px}
.floating-icon svg{display:block;width:27px;height:27px}
.floating-text{text-align:left}
.floating-text small{font-size:10px}
.floating-text strong{font-size:14px;white-space:nowrap}
@keyframes wa-float{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-5px)}}

@media(max-width:900px){
  .nav{max-height:calc(100dvh - 70px);overflow-y:auto}
  .hero,.hero-grid{min-height:auto}
}
@media(max-width:600px){
  .container{width:min(100% - 24px,1160px)}
  .brand{min-width:0}.brand>span:last-child{min-width:0}.brand strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100vw - 105px)}
  .hero-grid{padding:42px 0 54px}.hero h1{font-size:clamp(32px,10.5vw,40px)}
  .hero-photo-wrap img{height:auto;aspect-ratio:4/5;object-position:center;object-fit:cover}
  .floating-wa{width:calc(100% - 28px);max-width:360px;min-width:0;bottom:max(10px,env(safe-area-inset-bottom));padding:12px 18px 12px 12px}
  .floating-text{display:block}.floating-icon{width:40px;height:40px;flex-basis:40px}.floating-text strong{font-size:13px}
}
@media(max-width:350px){
  .brand small{display:none}.brand strong{font-size:15px}.hero h1{font-size:30px}
  .floating-wa{width:calc(100% - 20px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.floating-wa,.pulse-ring{animation:none}.reveal{opacity:1;transform:none;transition:none}}
