
:root{
    --bg:#f6efe7;
    --paper:#fffaf5;
    --ink:#2d2017;
    --muted:#74685e;
    --line:#d8c8b6;
    --gold:#b98656;
    --brown:#3b2418;
    --dark:#21160f;
    --serif: Georgia, "Times New Roman", serif;
    --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#efe4d8;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-shell{max-width:1500px;margin:0 auto;background:var(--bg);min-height:100vh;overflow:hidden;position:relative}
.site-shell:before{content:"";position:absolute;inset:0;background:url('/assets/images/soft-cream-bg.jpg') center/cover;opacity:.35;pointer-events:none}
.site-shell>*{position:relative;z-index:1}
.site-header{height:82px;display:grid;grid-template-columns:240px 1fr auto;align-items:center;padding:0 42px;border-bottom:1px solid var(--line);background:rgba(250,246,239,.86);backdrop-filter:blur(14px);position:relative;z-index:30}
.brand img{width:210px;height:auto}
.desktop-nav{display:flex;justify-content:center;align-items:center;gap:54px}
.desktop-nav a{font-size:13px;color:#3f332b;position:relative}
.desktop-nav a:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:1px;background:var(--brown);transform:scaleX(0);transition:.25s}
.desktop-nav a:hover:after,.desktop-nav a.active:after{transform:scaleX(1)}
.mobile-toggle{display:none}
.mobile-menu,.mobile-backdrop{display:none}

/* Hero */
.hero{display:grid;grid-template-columns:46% 54%;min-height:720px;border-bottom:1px solid var(--line)}
.hero-left{padding:115px 70px 70px 88px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(90deg,rgba(255,250,245,.92),rgba(255,250,245,.72))}
.hero-left h1{font-family:var(--serif);font-size:clamp(54px,5.9vw,92px);line-height:1.03;font-weight:400;letter-spacing:-.05em;margin:0 0 38px;color:#251b15}
.hero-left p{max-width:430px;color:#4d433b;margin:0 0 40px;font-size:17px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;width:max-content;min-height:62px;padding:0 38px;border:1px solid var(--brown);background:#321c12;color:#fff;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;transition:.25s}.btn:hover{background:var(--gold);border-color:var(--gold);transform:translateY(-2px)}
.hero-image{position:relative;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,239,231,.18),transparent 36%)}
.location-strip{height:62px;display:flex;align-items:center;justify-content:center;gap:28px;border-bottom:1px solid var(--line);background:#f7f0e8;color:#5d5148;font-size:14px;letter-spacing:.08em}.location-strip span+span:before{content:"•";color:var(--gold);margin-right:28px}

/* Areas */
.areas{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);border-top:1px solid var(--line)}
.area-card{min-height:390px;display:grid;grid-template-columns:1fr .65fr;border-right:1px solid var(--line);background:#faf4ed;overflow:hidden}.area-card:last-child{border-right:0}
.area-copy{padding:70px 48px 42px;display:flex;flex-direction:column;justify-content:center}.area-copy small{font-family:var(--serif);font-size:18px;display:block;margin-bottom:46px;color:#3c3028}.area-copy small:after{content:"";display:block;width:44px;height:1px;background:var(--gold);margin-top:18px}.area-copy h2{font-family:var(--serif);font-size:42px;line-height:1.05;font-weight:400;margin:0 0 38px;letter-spacing:-.04em}.area-copy a{font-size:12px;color:#a05f39;letter-spacing:.14em;text-transform:uppercase;font-weight:800}.area-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.02)}

/* Quote */
.quote-band{background:linear-gradient(90deg,rgba(38,22,12,.96),rgba(25,16,10,.92)),url('/assets/images/quote-bg.jpg') center/cover;color:#fff;padding:70px 84px}
.quote-band blockquote{font-family:var(--serif);font-weight:400;font-size:clamp(42px,4.5vw,68px);line-height:1.12;max-width:850px;margin:0}.quote-band blockquote:before{content:"“";color:#c57744;margin-right:12px}.quote-band i{display:block;width:86px;height:2px;background:var(--gold);margin-top:34px}

/* Approach */
.approach{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;padding:86px 84px;border-bottom:1px solid var(--line);background:#fff9f2}
.section-kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#a05f39;margin:0 0 24px;font-weight:800}
.section-title{font-family:var(--serif);font-size:clamp(38px,4vw,60px);line-height:1.08;font-weight:400;letter-spacing:-.05em;margin:0 0 24px}
.approach-intro p{color:var(--muted);max-width:430px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.step{border-left:1px solid #cfae94;padding-left:32px}.step b{font-family:var(--serif);font-size:24px;color:#a05f39;font-weight:400}.step h3{font-family:var(--serif);font-size:27px;font-weight:400;margin:24px 0 12px}.step p{color:var(--muted);margin:0}

/* Team */
.team-section{display:grid;grid-template-columns:.92fr 1.08fr;border-bottom:1px solid var(--line)}
.team-image img{width:100%;height:100%;min-height:440px;object-fit:cover}.team-list{padding:72px 78px;background:#fffaf5}.team-list h2{font-family:var(--serif);font-size:46px;line-height:1.1;font-weight:400;letter-spacing:-.05em;margin:0 0 34px}.team-row{display:grid;grid-template-columns:1fr auto 36px;gap:20px;border-bottom:1px solid var(--line);padding:19px 0;align-items:center}.team-row strong{font-family:var(--serif);font-size:22px;font-weight:400}.team-row span{color:#75685f}.team-row em{font-style:normal;font-size:24px}

/* Resources */
.resources{display:grid;grid-template-columns:250px 1fr;border-bottom:1px solid var(--line);background:#fbf6ef}.resources-title{padding:44px 74px 40px}.resource-list{border-left:1px solid var(--line)}.resource-item{display:grid;grid-template-columns:190px 1fr 40px;border-bottom:1px solid var(--line);padding:22px 36px;align-items:center}.resource-item:last-child{border-bottom:0}.resource-item time{color:#9b7d65;font-size:13px}.resource-item h3{font-family:var(--serif);font-size:24px;font-weight:400;margin:0}.resource-item span{font-size:24px;color:#7a5540}

/* Contact */
.contact-band{display:grid;grid-template-columns:.44fr .56fr;background:#e9ddcf;border-bottom:1px solid var(--line)}
.contact-info{padding:58px 88px}.contact-info .section-title{font-size:44px}.contact-phone{font-family:var(--serif);font-size:34px;margin:18px 0}.contact-form{padding:58px 84px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #876b58;min-height:46px;padding:0 8px;font:inherit;color:#2d2017}.form-grid textarea{grid-column:1/-1;height:90px;border:1px solid #876b58;padding:12px}.form-grid button{grid-column:1/-1;justify-self:start;background:#321c12;color:#fff;border:0;height:48px;padding:0 42px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}

/* Pages */
.page-hero{min-height:360px;padding:150px 84px 70px;background:linear-gradient(90deg,rgba(255,250,245,.92),rgba(255,250,245,.65)),url('/assets/images/hero-woman.jpg') right center/contain no-repeat;border-bottom:1px solid var(--line)}
.page-hero h1{font-family:var(--serif);font-size:clamp(52px,7vw,92px);line-height:1.0;font-weight:400;letter-spacing:-.06em;margin:0 0 20px}.page-hero p{max-width:620px;color:var(--muted)}
.content{padding:80px 84px}.content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px}.content-card{background:#fffaf5;border:1px solid var(--line);padding:42px}.content-card h2{font-family:var(--serif);font-size:42px;line-height:1.08;font-weight:400;margin:0 0 20px}.content-card p{color:var(--muted)}
.footer{display:grid;grid-template-columns:320px 1fr;gap:44px;padding:48px 84px;background:#fffaf5}.footer-brand img{width:170px}.footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.footer h3{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#8a6a50}.footer a,.footer p{display:block;color:#6f6257;margin:7px 0;font-size:13px}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:#7a6c61}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:80;background:#321c12;color:#fff;border-radius:999px;padding:14px 20px;box-shadow:0 16px 34px rgba(50,28,18,.22);font-weight:800}
.reveal{opacity:0;transform:translateY(22px);transition:.65s ease}.reveal.is-visible{opacity:1;transform:none}

@media(max-width:1100px){
    .desktop-nav{gap:26px}.site-header{padding:0 24px}.hero{grid-template-columns:1fr}.hero-left{min-height:540px}.hero-image{height:520px}.areas{grid-template-columns:1fr}.area-card{border-right:0;border-bottom:1px solid var(--line)}.approach,.team-section,.resources,.contact-band,.footer{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.resource-list{border-left:0}.footer-cols{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
    .site-header{height:74px;grid-template-columns:1fr auto;padding:0 18px;background:rgba(255,250,245,.90);position:relative}.brand img{width:178px}.desktop-nav{display:none}.mobile-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:50px;height:50px;border:1px solid var(--line);background:rgba(255,255,255,.38)}.mobile-toggle span{width:24px;height:2px;background:#2d2017}.mobile-menu{position:fixed;inset:0;z-index:200;background:#fffaf5;padding:42px 26px;overflow:auto}.mobile-menu.is-open{display:block}.mobile-backdrop.is-open{display:block}.mobile-close{position:absolute;right:20px;top:20px;border:0;background:none;font-size:42px;color:#2d2017}.mobile-menu img{width:210px;margin:54px auto 30px}.mobile-menu nav{display:grid;gap:0}.mobile-menu nav a{border-bottom:1px solid var(--line);padding:18px 0;font-family:var(--serif);font-size:28px}
    .hero{display:block;min-height:auto}.hero-left{padding:80px 28px 38px;min-height:auto}.hero-left h1{font-size:50px}.hero-left p{font-size:15px}.btn{min-height:54px}.hero-image{height:520px}.location-strip{height:auto;padding:18px;display:block;text-align:center}.location-strip span{display:block;margin:8px 0}.location-strip span+span:before{content:"";margin:0}.area-card{grid-template-columns:1fr}.area-copy{padding:42px 32px}.area-image{height:280px}.quote-band{padding:50px 28px}.quote-band blockquote{font-size:36px}.approach,.team-list,.contact-info,.contact-form,.content,.footer{padding:50px 28px}.resources-title{padding:42px 28px}.resource-item{grid-template-columns:1fr 28px;padding:22px 28px}.resource-item time{grid-column:1/-1;margin-bottom:6px}.form-grid{grid-template-columns:1fr}.footer-cols{grid-template-columns:1fr}.page-hero{padding:105px 28px 54px;background:linear-gradient(90deg,rgba(255,250,245,.95),rgba(255,250,245,.72)),url('/assets/images/hero-woman.jpg') right bottom/auto 100% no-repeat}.page-hero h1{font-size:50px}.content-grid{grid-template-columns:1fr}.whatsapp-float{right:14px;bottom:14px}
}
