:root{
  --ink:#112017;--deep:#0d2117;--green:#1d4631;--leaf:#739066;--gold:#cf9438;--cream:#f4efe4;--paper:#fbf9f3;--muted:#687268;--line:rgba(17,32,23,.16);--white:#fff;--shadow:0 24px 70px rgba(13,33,23,.13);
  --serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --header-h:84px;--radius:26px;--container:min(1180px,calc(100% - 48px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6;overflow-x:hidden}body.nav-open{overflow:hidden}img,svg{display:block;max-width:100%}a{color:inherit}.skip-link{position:fixed;left:18px;top:-60px;z-index:9999;background:var(--cream);color:var(--ink);padding:10px 14px;border-radius:10px}.skip-link:focus{top:18px}.container{width:var(--container);margin-inline:auto}.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--gold)}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.05;letter-spacing:-.035em;margin:0}h1{font-size:clamp(3.3rem,7vw,6.9rem)}h2{font-size:clamp(2.35rem,4.6vw,4.5rem)}h3{font-size:clamp(1.35rem,2.1vw,1.8rem)}p{margin:0}.lead{font-size:clamp(1.06rem,1.5vw,1.28rem);color:#4f5d53;max-width:680px}.btn-row{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 18px;border:1px solid transparent;border-radius:999px;font-size:.92rem;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:#142218}.btn-primary:hover{background:#dda549}.btn-secondary{border-color:rgba(244,239,228,.34);color:var(--cream);background:rgba(255,255,255,.05)}.btn-light{border-color:var(--line);background:rgba(255,255,255,.55)}.btn svg{width:17px;height:17px}.site-header{height:var(--header-h);position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(13,33,23,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(244,239,228,.12)}.header-inner{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--cream);font-weight:900;letter-spacing:.12em;font-size:.82rem;text-transform:uppercase;justify-self:start}.brand img{width:38px;height:38px;border-radius:11px}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:4px}.desktop-nav>a,.nav-trigger{display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 13px;border:0;border-radius:999px;background:transparent;color:rgba(244,239,228,.76);font:700 .87rem var(--sans);text-decoration:none;cursor:pointer;white-space:nowrap}.desktop-nav>a:hover,.desktop-nav>a[aria-current="page"],.nav-trigger:hover,.nav-trigger[aria-expanded="true"]{background:rgba(255,255,255,.08);color:var(--cream)}.nav-wrap{position:relative}.nav-wrap::after{content:"";position:absolute;left:0;right:0;top:38px;height:18px}.dropdown{position:absolute;left:50%;top:49px;transform:translate(-50%,8px);width:270px;padding:9px;background:#173223;border:1px solid rgba(244,239,228,.13);border-radius:18px;box-shadow:0 24px 50px rgba(0,0,0,.25);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s}.nav-wrap:hover .dropdown,.nav-wrap:focus-within .dropdown,.nav-wrap.open .dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.dropdown a{display:block;padding:11px 12px;border-radius:11px;color:rgba(244,239,228,.76);font-size:.88rem;font-weight:700;text-decoration:none}.dropdown a:hover,.dropdown a:focus{background:rgba(255,255,255,.08);color:var(--cream);outline:none}.header-cta{justify-self:end}.menu-toggle,.mobile-panel{display:none}.hero{min-height:810px;padding-top:calc(var(--header-h) + 70px);background:var(--deep);color:var(--cream);position:relative;overflow:hidden}.hero::before{content:"";position:absolute;inset:auto -20% -45% 30%;height:650px;background:radial-gradient(circle,rgba(115,144,102,.25),transparent 66%);pointer-events:none}.hero-grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(360px,.8fr);gap:72px;align-items:center;min-height:670px}.hero-copy{position:relative;z-index:2}.hero h1{max-width:820px;margin:18px 0 26px}.hero h1 em{font-style:italic;color:#d9b36f}.hero .lead{color:rgba(244,239,228,.72);margin-bottom:32px}.hero-visual{position:relative;align-self:end;padding-bottom:28px}.hero-visual img{width:100%;border-radius:32px;box-shadow:0 32px 90px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.12)}.visual-tag{position:absolute;left:-30px;bottom:74px;width:185px;padding:18px;border-radius:20px;background:rgba(244,239,228,.94);color:var(--ink);box-shadow:var(--shadow)}.visual-tag b{display:block;font-family:var(--serif);font-size:1.42rem;font-weight:500;line-height:1.1}.visual-tag span{font-size:.73rem;color:#657067}.hero-band{border-top:1px solid rgba(244,239,228,.13);display:grid;grid-template-columns:repeat(3,1fr);position:relative;z-index:2}.hero-band div{padding:21px 0}.hero-band div+div{padding-left:26px;border-left:1px solid rgba(244,239,228,.13)}.hero-band strong{display:block;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#ddb768}.hero-band span{font-size:.9rem;color:rgba(244,239,228,.72)}.section{padding:105px 0}.section-sm{padding:72px 0}.section-head{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px;align-items:end;margin-bottom:52px}.section-head .lead{justify-self:end}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:290px;position:relative;overflow:hidden}.card-number{font-family:var(--serif);font-size:3.8rem;line-height:1;color:rgba(29,70,49,.18)}.card h3{margin:35px 0 12px}.card p{color:var(--muted)}.card-link{position:absolute;left:30px;bottom:27px;font-size:.84rem;font-weight:850;color:var(--green);text-decoration:none}.card-link:hover{text-decoration:underline}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.dark-panel{background:var(--deep);color:var(--cream);border-radius:34px;padding:clamp(34px,5vw,68px);min-height:500px;display:flex;flex-direction:column;justify-content:space-between}.dark-panel .lead{color:rgba(244,239,228,.68)}.dark-panel h2{margin:16px 0 22px}.contact-stack{display:grid;gap:10px;margin-top:32px}.contact-pill{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border-radius:16px;border:1px solid rgba(244,239,228,.14);text-decoration:none;color:var(--cream);background:rgba(255,255,255,.04)}.contact-pill small{color:rgba(244,239,228,.54)}.contact-pill:hover{background:rgba(255,255,255,.08)}.field-panel{border-radius:34px;padding:48px;background:linear-gradient(145deg,#e6dfca,#f7f0df);position:relative;overflow:hidden;min-height:500px}.field-panel::after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:72px solid rgba(29,70,49,.08);right:-250px;bottom:-250px}.field-lines{position:absolute;inset:auto -50px -60px 20%;height:360px;transform:rotate(-8deg);background:repeating-linear-gradient(90deg,transparent 0 28px,rgba(29,70,49,.11) 28px 40px);border-radius:48% 0 0 0}.field-panel h3{font-size:clamp(2rem,3vw,3rem);max-width:430px;position:relative;z-index:2}.field-panel p{color:#59665d;max-width:450px;margin-top:18px;position:relative;z-index:2}.field-mark{width:76px;border-radius:22px;margin-bottom:70px;position:relative;z-index:2}.quote{padding:120px 0;background:#e8dfca}.quote-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.quote blockquote{margin:0;font:italic 500 clamp(2.1rem,4vw,4.2rem)/1.08 var(--serif);letter-spacing:-.03em}.quote aside{border-left:1px solid rgba(17,32,23,.2);padding-left:38px;color:#56635a}.page-hero{padding:calc(var(--header-h) + 95px) 0 78px;background:var(--deep);color:var(--cream);position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;width:550px;height:550px;border:90px solid rgba(207,148,56,.09);border-radius:50%;right:-180px;top:-270px}.page-hero h1{max-width:950px;margin:18px 0 24px;font-size:clamp(3.15rem,6.4vw,6.2rem)}.page-hero .lead{color:rgba(244,239,228,.7)}.content-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:72px}.content-grid .sticky{position:sticky;top:120px;align-self:start}.prose{font-size:1.08rem;color:#4f5c53}.prose p+p{margin-top:20px}.fact-box{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;margin-top:30px}.fact-box strong{font-family:var(--serif);font-size:1.45rem;font-weight:500;display:block}.fact-box span{color:var(--muted);font-size:.9rem}.enquiry-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:34px}.contact-card{background:var(--deep);color:var(--cream);border-radius:32px;padding:34px;min-height:580px}.contact-card h2{font-size:clamp(2.3rem,4vw,3.8rem);margin:13px 0 22px}.contact-card p{color:rgba(244,239,228,.68)}.contact-list{display:grid;gap:10px;margin-top:34px}.contact-item{padding:16px;border:1px solid rgba(244,239,228,.13);border-radius:16px}.contact-item small{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;color:#d8b46d}.contact-item a,.contact-item span{display:block;margin-top:4px;color:var(--cream);text-decoration:none;font-weight:750;overflow-wrap:anywhere}.form-shell{background:#fff;border:1px solid var(--line);border-radius:32px;padding:clamp(24px,4vw,44px)}.form-shell h2{font-size:clamp(2rem,3.5vw,3rem);margin-bottom:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.79rem;font-weight:800}.field input,.field select,.field textarea{width:100%;border:1px solid #ccd1c9;border-radius:13px;background:#fbfaf6;color:var(--ink);padding:13px 14px;font:inherit;min-height:50px}.field textarea{min-height:140px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(207,148,56,.23);border-color:#aa7a30}.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.form-note{font-size:.78rem;color:#788078;margin-top:14px}.location-note{margin-top:18px;padding:16px;border-radius:14px;background:rgba(207,148,56,.1);font-size:.9rem;color:#5c634f}.legal{max-width:860px}.legal h2{font-size:2rem;margin:42px 0 14px}.legal h3{font-size:1.35rem;margin:28px 0 10px}.legal p,.legal li{color:#515e55}.legal ul{padding-left:20px}.site-footer{background:#091a12;color:var(--cream);padding:58px 0 26px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:50px}.footer-brand p{color:rgba(244,239,228,.58);max-width:420px;margin-top:16px}.footer-links{display:grid;align-content:start;gap:8px}.footer-links strong{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:#d9b46b;margin-bottom:6px}.footer-links a{color:rgba(244,239,228,.72);text-decoration:none;font-size:.9rem}.footer-links a:hover{color:var(--cream)}.footer-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:26px;margin-top:40px;border-top:1px solid rgba(244,239,228,.11);font-size:.74rem;color:rgba(244,239,228,.45)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:1099px){:root{--header-h:76px;--container:min(100% - 36px,920px)}.header-inner{grid-template-columns:1fr auto}.desktop-nav,.header-cta{display:none}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;justify-self:end;width:46px;height:46px;border-radius:50%;border:1px solid rgba(244,239,228,.18);background:rgba(255,255,255,.05);color:var(--cream);cursor:pointer}.menu-toggle svg{width:22px}.mobile-panel{display:none;position:fixed;top:var(--header-h);left:0;right:0;bottom:0;background:#0c2117;padding:26px 18px 34px;overflow:auto;z-index:999}.mobile-panel.open{display:block}.mobile-nav{display:grid;gap:7px}.mobile-nav>a,.mobile-sub-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;color:var(--cream);padding:15px 12px;border-radius:12px;font:700 1.04rem var(--sans);text-decoration:none;text-align:left}.mobile-nav>a:hover,.mobile-sub-trigger:hover{background:rgba(255,255,255,.06)}.mobile-sub{display:none;padding:2px 10px 8px 18px}.mobile-sub.open{display:grid}.mobile-sub a{padding:11px 10px;color:rgba(244,239,228,.7);text-decoration:none}.mobile-actions{display:grid;gap:10px;margin-top:24px}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;gap:48px;padding-bottom:54px}.hero-copy{padding-top:28px}.hero h1{max-width:900px}.hero-visual{max-width:760px;justify-self:end;width:74%}.visual-tag{left:-70px}.hero-band{grid-template-columns:1fr 1fr 1fr}.section-head,.content-grid,.enquiry-grid{grid-template-columns:1fr;gap:28px}.section-head .lead{justify-self:start}.content-grid .sticky{position:static}.cards{grid-template-columns:1fr 1fr}.cards .card:last-child{grid-column:1/-1}.quote-inner{grid-template-columns:1fr}.quote aside{border-left:0;border-top:1px solid rgba(17,32,23,.2);padding:28px 0 0}.footer-grid{grid-template-columns:1.2fr .8fr}.footer-grid .footer-links:last-child{grid-column:1/-1;grid-template-columns:repeat(4,max-content);gap:18px}}
@media(max-width:767px){:root{--container:min(100% - 28px,650px)}h1{font-size:clamp(3rem,15vw,4.7rem)}.hero{padding-top:calc(var(--header-h) + 44px)}.hero-grid{gap:36px}.hero-visual{width:88%;justify-self:center}.visual-tag{left:-18px;bottom:36px;width:165px}.hero-band{grid-template-columns:1fr;margin-top:8px}.hero-band div{padding:14px 0}.hero-band div+div{border-left:0;border-top:1px solid rgba(244,239,228,.12);padding-left:0}.section{padding:78px 0}.section-sm{padding:56px 0}.cards,.split{grid-template-columns:1fr}.cards .card:last-child{grid-column:auto}.card{min-height:270px}.dark-panel,.field-panel{min-height:440px}.field-panel{padding:34px}.quote{padding:82px 0}.page-hero{padding-top:calc(var(--header-h) + 70px)}.page-hero h1{font-size:clamp(2.9rem,14vw,4.7rem)}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid .footer-links:last-child{grid-column:auto;grid-template-columns:1fr;gap:8px}.footer-bottom{flex-direction:column}.brand span{letter-spacing:.08em}.contact-card{min-height:auto}}
@media(max-width:430px){:root{--container:calc(100% - 24px)}.brand span{font-size:.75rem}.brand img{width:34px;height:34px}.hero-copy{padding-top:18px}.hero h1{font-size:clamp(2.75rem,15.5vw,4rem)}.hero-visual{width:96%}.visual-tag{position:relative;left:auto;bottom:auto;width:100%;margin-top:-25px;border-radius:16px}.btn{width:100%}.card,.contact-card,.form-shell{padding:24px}.field-panel,.dark-panel{padding:28px}.page-hero h1{font-size:clamp(2.7rem,14vw,4rem)}}
/* Layout hardening */
.dark-panel,.field-panel{min-width:0}
.contact-pill span:first-child{min-width:0;overflow-wrap:anywhere}
@media(max-width:767px){.split>*{min-width:0;max-width:100%}.field-lines{right:0;left:22%;width:auto}}
/* Keep card actions clear of variable-length copy */
.card{display:flex;flex-direction:column}
.card-link{position:static;margin-top:auto;padding-top:20px;align-self:flex-start}
