
:root{--cream:#F5EFE6;--paper2:#EDE3D4;--surface:#FFFFFF;--ink:#241F1A;--ink2:#4A4239;--muted:#6E655B;--faint:#9A9084;
--clay:#C75D3C;--clay2:#A94A2D;--clay-soft:#F1DDD1;--line:rgba(36,31,26,.13);--line2:rgba(36,31,26,.09);
--f:'Hanken Grotesk',system-ui,sans-serif;--edge:clamp(18px,4vw,54px);--r:24px;--r-lg:34px;--ease:cubic-bezier(.2,.7,.3,1);}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--f);background:var(--cream);color:var(--ink);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}ul{list-style:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
::selection{background:var(--clay);color:#fff}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 var(--edge)}.sec{padding:clamp(58px,8vw,116px) 0}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--clay2)}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--clay);border-radius:2px}
.h2{font-weight:800;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.05;letter-spacing:-.025em}
.lead{color:var(--muted);font-size:1.08rem;max-width:560px}.center{text-align:center}.center .lead{margin-inline:auto}
.clay-txt{color:var(--clay2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;font-size:.96rem;padding:15px 28px;border-radius:999px;transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s}
.btn--clay{background:var(--clay);color:#fff}.btn--clay:hover{background:var(--clay2);transform:translateY(-2px)}
.btn--ink{background:var(--ink);color:var(--cream)}.btn--ink:hover{transform:translateY(-2px)}
.btn--out{border:1.5px solid var(--line);color:var(--ink)}.btn--out:hover{border-color:var(--ink);transform:translateY(-2px)}
.btn--lg{padding:17px 32px;font-size:1.02rem}
.nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(245,239,230,.85);backdrop-filter:blur(10px);border-bottom-color:var(--line)}
.nav__in{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{font-weight:800;font-size:1.4rem;letter-spacing:-.02em;display:inline-flex;align-items:baseline;gap:7px}.brand span{font-weight:500;font-size:1rem;color:var(--muted)}
.brand b{color:var(--clay)}
.nav__links{display:flex;gap:32px}.nav__links a{font-weight:500;font-size:.95rem;color:var(--ink2)}.nav__links a:hover{color:var(--clay2)}
.nav__tog{display:none;width:44px;height:40px;border:1px solid var(--line);border-radius:12px;flex-direction:column;align-items:center;justify-content:center;gap:4px}.nav__tog span{width:19px;height:2px;background:var(--ink);border-radius:2px}
.nav__drawer{display:none;border-top:1px solid var(--line);background:var(--cream);padding:14px var(--edge) 22px;flex-direction:column;gap:2px}.nav.open .nav__drawer{display:flex}
.nav__drawer a{padding:13px 4px;color:var(--ink2);border-bottom:1px solid var(--line2);font-weight:500}.nav__drawer .btn{margin-top:12px}
.hero{padding-top:clamp(120px,15vh,168px);padding-bottom:clamp(40px,6vw,80px)}
.hero__grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(30px,5vw,60px);align-items:center}
.hero h1{font-weight:800;font-size:clamp(2.6rem,6vw,4.7rem);line-height:1.02;letter-spacing:-.035em;margin:20px 0 20px}
.hero h1 em{font-style:normal;color:var(--clay)}
.hero__sub{color:var(--ink2);font-size:clamp(1.06rem,1.5vw,1.22rem);max-width:460px;margin-bottom:30px}
.hero__btns{display:flex;gap:12px;flex-wrap:wrap}
.panel{background:var(--clay);border-radius:var(--r-lg);padding:clamp(28px,4vw,44px);color:#fff;position:relative;overflow:hidden;aspect-ratio:1/1.06;display:flex;flex-direction:column;justify-content:space-between}
.panel svg{width:min(180px,60%);height:auto;opacity:.95}
.panel p{font-size:1.15rem;font-weight:600;line-height:1.3}
.trust{display:flex;align-items:center;gap:14px;margin-top:28px;color:var(--muted);font-size:.92rem}
.trust .av{display:flex}.trust .av span{width:34px;height:34px;border-radius:50%;border:2px solid var(--cream);margin-left:-9px;display:grid;place-items:center;color:#fff;font-weight:700;font-size:.78rem}.trust .av span:first-child{margin-left:0}
/* services alternating rows */
.svc{border-top:1px solid var(--line)}
.srow{display:grid;grid-template-columns:70px 1fr 1.4fr;gap:26px;padding:clamp(24px,3.4vw,40px) 6px;border-bottom:1px solid var(--line);align-items:baseline;transition:padding .35s var(--ease)}
.srow:hover{padding-left:14px}
.srow .n{font-weight:800;font-size:1.3rem;color:var(--clay)}
.srow h3{font-weight:700;font-size:clamp(1.4rem,2.4vw,2rem);letter-spacing:-.02em}
.srow p{color:var(--muted)}
/* values */
.vals{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.val{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px}
.val .ic{width:48px;height:48px;border-radius:14px;background:var(--clay-soft);display:grid;place-items:center;margin-bottom:16px;font-size:1.4rem}
.val h3{font-weight:700;font-size:1.2rem;margin-bottom:8px}.val p{color:var(--muted);font-size:.96rem}
/* stats */
.band{background:var(--ink);color:var(--cream);border-radius:var(--r-lg)}
.stg{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:clamp(34px,4vw,52px)}
.stat b{font-weight:800;font-size:clamp(2rem,4vw,3.1rem);color:var(--clay);display:block;letter-spacing:-.02em;line-height:1}
.stat span{display:block;margin-top:8px;color:#C9BEB0;font-size:.9rem}
/* testimonials */
.quotes{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.quote{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:30px 28px}
.quote p{font-size:1.12rem;font-weight:500;line-height:1.5}.quote .by{margin-top:18px;color:var(--muted);font-size:.92rem}.quote .by b{color:var(--ink);font-weight:700}
/* cta */
.cta{background:var(--clay);border-radius:var(--r-lg);padding:clamp(44px,6vw,80px);text-align:center;color:#fff}
.cta h2{font-weight:800;font-size:clamp(2rem,4.4vw,3.2rem);letter-spacing:-.02em;line-height:1.06}.cta p{color:#F7E3D8;max-width:500px;margin:14px auto 28px}
/* footer */
.foot{border-top:1px solid var(--line);padding:clamp(50px,7vw,78px) 0 30px}
.foot__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:34px}
.foot .brand{margin-bottom:14px}.foot__brand p{color:var(--muted);max-width:280px;font-size:.95rem}
.foot h5{font-weight:700;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.foot__col a,.foot__col p{display:block;color:var(--muted);margin-bottom:10px;font-size:.95rem}.foot__col a:hover{color:var(--clay2)}
.foot__bar{border-top:1px solid var(--line);margin-top:38px;padding-top:24px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--faint);font-size:.86rem}.foot__bar a:hover{color:var(--clay2)}
/* contact */
.chead{padding-top:clamp(120px,14vh,168px)}
.cgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;margin-top:clamp(30px,4vw,50px);align-items:start}
.icard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;margin-bottom:16px}
.icard .k{font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--clay2);display:block;margin-bottom:8px}
.icard a,.icard p{color:var(--ink2);font-size:1.05rem}.icard a:hover{color:var(--clay2)}
.form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(24px,3vw,38px)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fld{margin-bottom:18px}
.fld label{font-weight:600;font-size:.85rem;margin-bottom:8px;display:block}
.fld input,.fld textarea{width:100%;background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:13px 15px;font-family:var(--f);font-size:1rem;color:var(--ink)}
.fld textarea{min-height:130px;resize:vertical}.fld input:focus,.fld textarea:focus{outline:none;border-color:var(--clay);box-shadow:0 0 0 3px var(--clay-soft)}
.form .btn{width:100%}.form__note{font-size:.82rem;color:var(--faint);margin-top:12px;text-align:center}
/* legal */
.legal{padding-top:clamp(120px,14vh,168px)}
.legalcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(26px,4vw,52px);max-width:820px;margin:clamp(24px,3vw,40px) auto 0}
.legalcard .note{background:var(--clay-soft);border-radius:12px;padding:16px 18px;color:var(--ink2);font-size:.9rem;margin-bottom:30px}
.legalcard h3{font-weight:700;font-size:1.2rem;margin:28px 0 9px}.legalcard p{color:var(--muted);margin-bottom:12px}.legalcard a{color:var(--clay2)}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.rv.in{opacity:1;transform:none}
@media(max-width:900px){.nav__links,.nav__in>.btn{display:none}.nav__tog{display:flex}.hero__grid{grid-template-columns:1fr;gap:32px}.panel{aspect-ratio:auto;min-height:240px}.srow{grid-template-columns:1fr;gap:6px}.vals{grid-template-columns:1fr}.stg{grid-template-columns:1fr 1fr;gap:30px 20px}.quotes{grid-template-columns:1fr}.cgrid{grid-template-columns:1fr}.foot__grid{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:560px){.stg{grid-template-columns:1fr 1fr}.form .row{grid-template-columns:1fr}.foot__grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}}
