:root{--ink:#173c3a;--ink-2:#254d49;--paper:#f7f3eb;--white:#fff;--coral:#ee785f;--lime:#b9ce77;--sand:#e6c48e;--muted:#63706d;--line:rgba(23,60,58,.14);--shadow:0 24px 70px rgba(20,47,45,.13);--radius:24px;--container:min(1160px,calc(100% - 40px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.65}body.no-scroll{overflow:hidden}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:var(--container);margin-inline:auto}.section{padding:110px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-60px;background:#fff;padding:12px 16px;z-index:999}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:50;background:rgba(247,243,235,.88);backdrop-filter:blur(15px);border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{border-color:var(--line);box-shadow:0 8px 30px rgba(23,60,58,.06)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:12px;font-family:Manrope,sans-serif;font-size:21px;font-weight:800;letter-spacing:-.03em}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--ink);color:#fff;font-size:20px}.main-nav{display:flex;align-items:center;gap:30px;font-weight:600}.main-nav>a{position:relative}.main-nav>a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:2px;background:var(--coral);transition:.2s}.main-nav>a:hover:after{width:100%}.button{border:0;border-radius:999px;padding:16px 24px;background:var(--coral);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 10px 24px rgba(238,120,95,.25);transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(238,120,95,.35)}.button-small{padding:11px 18px}.menu-button{display:none;background:none;border:0}.hero{padding-top:78px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:78px;min-height:650px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:13px;font-weight:800;color:var(--coral);margin:0 0 18px}.hero h1,.section h2{font-family:Manrope,sans-serif;letter-spacing:-.055em;line-height:1.04;margin:0}.hero h1{font-size:clamp(52px,6vw,84px)}.hero h1 span{color:var(--coral)}.lead{font-size:20px;max-width:650px;color:var(--ink-2);margin:28px 0 34px}.hero-actions{display:flex;align-items:center;gap:28px}.text-link{font-weight:700}.text-link span,.service-card a span{display:inline-block;transition:transform .2s}.text-link:hover span,.service-card a:hover span{transform:translateX(5px)}.hero-proof{display:flex;gap:42px;margin-top:55px;padding-top:26px;border-top:1px solid var(--line)}.hero-proof div{display:flex;flex-direction:column}.hero-proof strong{font:800 22px Manrope}.hero-proof span{font-size:13px;color:var(--muted)}.hero-visual{position:relative;min-height:590px}.visual-card{position:absolute;inset:28px 20px 38px 35px;border-radius:38px;overflow:hidden;box-shadow:var(--shadow);transform:rotate(2.2deg);border:8px solid #fff}.photo-placeholder,.photo-placeholder svg{width:100%;height:100%;object-fit:cover}.shape{position:absolute;border-radius:999px}.shape-one{width:190px;height:190px;background:var(--lime);right:-60px;top:0}.shape-two{width:150px;height:150px;background:var(--coral);left:-30px;bottom:0}.floating-note{position:absolute;background:#fff;border-radius:16px;padding:15px 18px;box-shadow:var(--shadow);font-weight:700;font-size:14px;display:flex;gap:10px;align-items:center}.floating-note span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--lime)}.note-one{left:-20px;top:100px}.note-two{right:-5px;bottom:65px}.logos{border-block:1px solid var(--line);padding:24px 0}.logo-row{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;color:#7f8986;font:700 17px Manrope}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end;margin-bottom:50px}.section-heading h2,.about h2,.contact h2{font-size:clamp(40px,4.5vw,61px)}.section-heading>p{font-size:17px;color:var(--muted);margin:0 0 6px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;min-height:515px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.service-card.featured{background:var(--ink);color:#fff;transform:translateY(-14px)}.service-card.featured:hover{transform:translateY(-21px)}.popular{position:absolute;right:22px;top:22px;background:var(--lime);color:var(--ink);padding:6px 12px;border-radius:999px;font-size:12px;font-weight:800}.service-number{font:700 13px Manrope;opacity:.55}.service-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--paper);font-size:27px;margin:32px 0 26px}.featured .service-icon{background:rgba(255,255,255,.12)}.service-card h3{font:800 25px/1.2 Manrope;margin:0 0 18px}.service-card p{color:var(--muted);margin:0}.featured p{color:rgba(255,255,255,.7)}.service-card ul{padding-left:20px;margin:24px 0 30px}.service-card li{margin:8px 0}.service-card a{margin-top:auto;font-weight:700;color:var(--coral)}.about{background:#fff}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.about-visual{position:relative}.portrait-placeholder{border-radius:32px;overflow:hidden;box-shadow:var(--shadow);max-width:500px}.quote-card{position:absolute;right:-18px;bottom:35px;width:290px;padding:24px;border-radius:18px;background:var(--lime);font:700 17px/1.45 Manrope;box-shadow:var(--shadow)}.about-copy>p:not(.eyebrow){color:var(--muted)}.lead-sm{font-size:20px!important;color:var(--ink)!important}.values{margin-top:30px;border-top:1px solid var(--line)}.values>div{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:20px 0;border-bottom:1px solid var(--line)}.values>div>span{color:var(--coral);font-weight:800}.values strong{font:800 18px Manrope}.values p{margin:4px 0 0!important}.process{background:var(--paper)}.compact{grid-template-columns:1fr}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.process-step{padding:30px 24px;border-top:2px solid var(--ink);background:rgba(255,255,255,.55)}.process-step span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--coral);color:#fff;font-weight:800;margin-bottom:44px}.process-step h3{font:800 21px Manrope;margin:0 0 10px}.process-step p{color:var(--muted);margin:0}.testimonial{padding-top:10px}.testimonial-card{position:relative;background:var(--sand);border-radius:34px;padding:70px 9%;text-align:center}.quote-mark{font:800 90px/1 Georgia;color:var(--coral);height:55px}.testimonial blockquote{font:700 clamp(25px,3vw,40px)/1.35 Manrope;letter-spacing:-.03em;margin:20px auto 38px;max-width:900px}.person{display:inline-flex;gap:14px;align-items:center;text-align:left}.avatar{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--ink);color:#fff;font-weight:700}.person div:last-child{display:flex;flex-direction:column}.person span{font-size:14px;color:var(--muted)}.contact{background:var(--ink);color:#fff}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}.eyebrow.light{color:var(--lime)}.contact-copy p{color:rgba(255,255,255,.72);font-size:18px}.contact-details{display:flex;flex-direction:column;gap:14px;margin-top:36px}.contact-details>*{display:flex;gap:12px;align-items:center}.contact-details span span,.contact-details a span{color:var(--lime)}.contact-form{background:#fff;color:var(--ink);padding:36px;border-radius:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:flex;flex-direction:column;gap:8px;font-weight:700;margin-bottom:17px}input,textarea,select{width:100%;border:1px solid #d8ddda;border-radius:12px;padding:13px 14px;background:#fbfcfb;color:var(--ink);outline:none;transition:.2s}input:focus,textarea:focus,select:focus{border-color:var(--coral);box-shadow:0 0 0 4px rgba(238,120,95,.13)}textarea{resize:vertical}.button-light{width:100%}.form-note{font-size:12px!important;color:var(--muted)!important;margin:12px 0 0!important}.site-footer{background:#0e2c2a;color:#fff;padding:65px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-grid p,.footer-grid span,.footer-grid a{color:rgba(255,255,255,.65)}.footer-grid strong{margin-bottom:8px}.footer-brand{color:#fff!important}.footer-brand .brand-mark{background:var(--coral)}.footer-bottom{display:flex;justify-content:space-between;margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:rgba(255,255,255,.5)}.booking-dialog{width:min(560px,calc(100% - 30px));border:0;border-radius:26px;padding:38px;color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.35)}.booking-dialog::backdrop{background:rgba(7,27,26,.72);backdrop-filter:blur(5px)}.booking-dialog h2{font:800 38px/1.1 Manrope;margin:0 0 15px}.booking-dialog>p{color:var(--muted)}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:30px;cursor:pointer;color:var(--ink)}.toast{position:fixed;right:20px;bottom:20px;background:#fff;color:var(--ink);padding:15px 18px;border-radius:14px;box-shadow:var(--shadow);transform:translateY(120px);opacity:0;transition:.3s;z-index:80}.toast.show{transform:translateY(0);opacity:1}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay{transition-delay:.12s}.reveal-delay-2{transition-delay:.24s}.reveal-delay-3{transition-delay:.36s}
@media(max-width:980px){.main-nav{position:fixed;inset:82px 0 auto;background:var(--paper);padding:28px 20px 34px;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(23,60,58,.08)}.main-nav.open{display:flex}.menu-button{display:flex;flex-direction:column;gap:5px;padding:8px}.menu-button span:not(.sr-only){width:25px;height:2px;background:var(--ink)}.hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:20px}.hero-visual{min-height:540px}.section-heading{grid-template-columns:1fr;gap:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.service-card.featured{transform:none}.service-card.featured:hover{transform:translateY(-7px)}.about-grid{gap:65px}.about-visual{max-width:600px}.process-grid{grid-template-columns:1fr 1fr}.contact-grid{gap:50px}}
@media(max-width:640px){:root{--container:min(100% - 28px,1160px)}.section{padding:78px 0}.nav-wrap{height:70px}.main-nav{inset:70px 0 auto}.hero{padding-top:40px}.hero h1{font-size:47px}.lead{font-size:18px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-proof{gap:20px;justify-content:space-between}.hero-proof strong{font-size:19px}.hero-visual{min-height:420px}.visual-card{inset:25px 5px 25px 15px;border-radius:26px}.shape-one{width:120px;height:120px}.shape-two{width:100px;height:100px}.floating-note{font-size:12px;padding:10px 12px}.note-one{left:-3px;top:55px}.note-two{right:-3px;bottom:30px}.logo-row{justify-content:center}.section-heading h2,.about h2,.contact h2{font-size:39px}.service-card{padding:27px}.quote-card{position:relative;right:auto;bottom:auto;width:calc(100% - 30px);margin:-35px auto 0}.process-grid{grid-template-columns:1fr}.process-step span{margin-bottom:25px}.testimonial-card{padding:52px 22px}.contact-form{padding:25px}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{flex-direction:column;gap:8px}.booking-dialog{padding:30px 22px}.booking-dialog h2{font-size:31px}}
