:root{--white:#fff;--cream:#f8f5f0;--card:#f5f1eb;--teal:#2c4a4a;--body:#3d4f4f;--coral:#e07a5f;--coral-hover:#d2694e;--gold:#c9a26b;--border:#e8e2d9;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--body);font-family:var(--sans);font-size:16px;line-height:1.65}.site-header{height:84px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:24px;position:fixed;z-index:10;inset:0 0 auto;background:rgba(255,255,255,.93);backdrop-filter:blur(12px);border-bottom:1px solid rgba(232,226,217,.8)}.brand{font:500 24px var(--serif);letter-spacing:-.02em;color:var(--teal);text-decoration:none;white-space:nowrap}.main-nav{display:flex;gap:32px;margin-left:auto}.main-nav a{font-size:14px;color:var(--body);text-decoration:none;transition:color .2s}.main-nav a:hover,.email:hover{color:var(--coral)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 22px;border-radius:99px;background:var(--coral);color:#fff;font-size:15px;font-weight:600;text-decoration:none;box-shadow:0 4px 12px rgba(224,122,95,.18);transition:background .2s,transform .2s}.button:hover{background:var(--coral-hover);transform:translateY(-1px)}.button-small{padding:10px 17px;font-size:13px}.menu-toggle{display:none}.hero{height:min(780px,calc(100vh - 0px));min-height:665px;position:relative;overflow:hidden;color:#fff;margin-top:84px;background:#385152}.hero-video,.hero-overlay{position:absolute;inset:0;width:100%;height:100%}.hero-video{object-fit:cover;opacity:.56}.hero-overlay{background:linear-gradient(90deg,rgba(29,54,54,.88) 0%,rgba(38,64,62,.67) 48%,rgba(34,52,52,.38) 100%)}.hero-inner{max-width:1280px;height:100%;margin:auto;padding:70px clamp(24px,6vw,88px);position:relative;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:56px}.hero-copy{max-width:700px}.eyebrow{margin:0 0 17px;color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:600}.eyebrow.light{color:#ecd5a9}.eyebrow i{display:inline-block;width:4px;height:4px;border-radius:50%;background:currentColor;margin:0 9px 2px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--teal)}h1{font:400 clamp(40px,4.6vw,69px)/1.09 var(--serif);letter-spacing:-.035em;color:#fff;margin-bottom:26px}h1 em{font-style:normal;color:#f2d9bb}.hero-description{max-width:580px;color:#fbfaf8;font-size:17px;line-height:1.7;margin-bottom:14px}.credential{font-size:12px;letter-spacing:.04em;color:#ead8b9;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:28px}.text-link{font-size:14px;font-weight:600;color:var(--teal);text-decoration:none}.text-link span,.card-link span{margin-left:5px;transition:transform .2s;display:inline-block}.text-link:hover span,.card-link:hover span{transform:translateX(4px)}.light-link{color:#fff}.hero-portrait{justify-self:end;margin:0;width:min(330px,100%);height:440px;border:1px solid rgba(255,255,255,.38);padding:9px;border-radius:180px 180px 20px 20px;background:rgba(255,255,255,.12);overflow:hidden}.hero-portrait img{height:100%;width:100%;object-fit:cover;object-position:48% center;border-radius:170px 170px 13px 13px}.value-bar{min-height:72px;padding:18px max(24px,5vw);display:flex;align-items:center;justify-content:center;gap:23px;color:var(--teal);background:var(--card);font-size:13px;font-weight:500;text-align:center}.value-bar b{height:5px;width:5px;border-radius:50%;background:var(--gold);flex:0 0 auto}.section{padding:118px max(24px,8vw)}.about{max-width:1440px;margin:auto;display:grid;grid-template-columns:.9fr 1fr;align-items:center;gap:clamp(50px,9vw,145px)}.about-image-wrap{position:relative;max-width:470px}.about-image{display:block;width:100%;height:560px;object-fit:cover;object-position:50% 32%;border-radius:20px;border:8px solid var(--card)}.image-note{position:absolute;right:-40px;bottom:35px;padding:13px 17px;border-radius:4px;background:#fff;color:var(--teal);font:500 17px var(--serif);box-shadow:0 10px 30px rgba(44,74,74,.12)}.about-copy{max-width:620px}.about h2,.section-intro h2,.contact h2{font:400 clamp(32px,3.4vw,49px)/1.16 var(--serif);letter-spacing:-.025em;margin-bottom:26px}.body-copy p{margin-bottom:18px}.about .text-link{display:inline-block;margin-top:10px}.services{background:var(--cream)}.section-intro{text-align:center;max-width:740px;margin:0 auto 47px}.section-intro h2{margin-bottom:0}.service-grid{max-width:1220px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{min-height:330px;background:#fff;border:1px solid rgba(232,226,217,.9);border-radius:17px;padding:29px 25px 24px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px rgba(44,74,74,.08)}.service-icon{width:43px;height:43px;padding:10px;border-radius:50%;background:var(--card);color:var(--coral);margin-bottom:25px}.service-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font:500 20px/1.27 var(--serif);margin-bottom:13px}.service-card p{font-size:14px;line-height:1.65;margin-bottom:23px}.card-link{margin-top:auto;color:var(--teal);font-size:13px;font-weight:600;text-decoration:none}.contact{text-align:center;padding-bottom:112px}.contact-inner{max-width:720px;margin:auto}.contact h2{margin-bottom:17px}.contact-inner>p:not(.eyebrow){max-width:570px;margin:0 auto 28px}.button-large{padding:15px 26px;font-size:16px}.email{display:block;margin-top:22px;color:var(--teal);font-size:14px;text-underline-offset:4px}.site-footer{padding:36px max(24px,6vw) 28px;background:var(--teal);color:#e9efed;display:grid;grid-template-columns:1fr 1fr;gap:4px 34px;font-size:12px}.site-footer div{display:flex;flex-direction:column}.site-footer div:last-of-type{text-align:right}.site-footer strong{font:500 18px var(--serif);color:#fff}.site-footer a{color:#e9efed}.site-footer p{grid-column:1/-1;margin:18px 0 0;color:#bdd0cc;font-size:11px}@media(max-width:900px){.main-nav{gap:18px}.header-cta{display:none}.hero-inner{grid-template-columns:1fr .66fr;gap:25px}.hero-portrait{width:270px;height:385px}.service-grid{grid-template-columns:repeat(2,1fr)}.about{gap:55px}.about-image{height:500px}}@media(max-width:680px){.site-header{height:70px;padding:0 21px}.brand{font-size:21px}.menu-toggle{display:flex;width:38px;height:38px;border:0;background:transparent;padding:9px;flex-direction:column;justify-content:center;gap:6px}.menu-toggle span{display:block;width:20px;height:1.5px;background:var(--teal)}.main-nav{position:absolute;top:69px;left:0;right:0;display:none;flex-direction:column;gap:0;padding:10px 21px 18px;background:#fff;border-bottom:1px solid var(--border)}.main-nav.open{display:flex}.main-nav a{padding:10px 0}.hero{margin-top:70px;height:auto;min-height:755px}.hero-inner{padding:60px 24px 36px;display:block}.hero-copy{position:relative;z-index:1}.hero h1{font-size:40px}.hero-description{font-size:15px}.hero-portrait{width:205px;height:260px;margin:32px 0 0 auto}.hero-actions{gap:18px;flex-wrap:wrap}.value-bar{justify-content:flex-start;overflow-x:auto;gap:15px;white-space:nowrap;padding:14px 20px;font-size:11px}.section{padding:75px 24px}.about{display:flex;flex-direction:column;align-items:stretch;gap:45px}.about-image-wrap{max-width:none}.about-image{height:420px}.image-note{right:13px;bottom:-20px;font-size:15px}.about h2,.section-intro h2,.contact h2{font-size:34px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.site-footer{grid-template-columns:1fr;padding:30px 24px;gap:15px}.site-footer div:last-of-type{text-align:left}.site-footer p{margin-top:6px}.hero-overlay{background:linear-gradient(120deg,rgba(29,54,54,.91),rgba(38,64,62,.62))}}
