:root{
    --brand:#b85f2f;
    --brand-2:#1f8a83;
    --accent:#f2b65d;
    --bg:#fff7ed;
    --surface:#fffdf8;
    --surface-2:#f5eadc;
    --text:#211912;
    --muted:#75685c;
    --border:rgba(33,25,18,.14);
    --grad:linear-gradient(135deg,#b85f2f 0%,#1f8a83 100%);
    --font-sans:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
    --font-display:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
    --shadow-1:0 18px 50px rgba(83,48,22,.14);
    --shadow-2:0 28px 90px rgba(83,48,22,.22);
    --shadow-3:0 42px 130px rgba(44,34,22,.30);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:var(--font-sans);
    color:var(--text);
    background:
        radial-gradient(circle at 15% 12%, color-mix(in srgb,var(--accent) 42%, transparent), transparent 28rem),
        radial-gradient(circle at 84% 18%, color-mix(in srgb,var(--brand-2) 26%, transparent), transparent 30rem),
        radial-gradient(circle at 60% 86%, color-mix(in srgb,var(--brand) 20%, transparent), transparent 34rem),
        var(--bg);
    overflow-x:hidden;
}

img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.section{padding:clamp(72px,9vw,118px) 0}
.container{width:min(var(--container), calc(100% - 32px)); margin-inline:auto}

.site-header{
    position:sticky;
    top:0;
    z-index:20;
    border-bottom:1px solid color-mix(in srgb,var(--border) 70%, transparent);
    background:color-mix(in srgb,var(--bg) 76%, white 12%);
    backdrop-filter:blur(18px);
}
.header-row,.footer-row{
    min-height:78px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}
.logo{display:flex;align-items:center;gap:12px;font-weight:800}
.logo-mark{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#fff;
    background:var(--grad);
    box-shadow:0 16px 38px color-mix(in srgb,var(--brand) 32%, transparent);
    letter-spacing:-.06em;
}
.logo small{display:block;color:var(--muted);font-size:.78rem;font-weight:650;margin-top:2px}
.main-nav{display:flex;align-items:center;gap:8px}
.main-nav a{
    padding:10px 14px;
    border-radius:999px;
    color:color-mix(in srgb,var(--text) 72%, var(--muted));
    font-weight:700;
    font-size:.95rem;
}
.main-nav a:hover{background:color-mix(in srgb,var(--brand) 10%, transparent);color:var(--text)}
.menu-toggle{display:none}

.hero{
    position:relative;
    padding-top:clamp(52px,7vw,92px);
}
.hero::before,.hero::after{
    content:"";
    position:absolute;
    pointer-events:none;
    border:2px solid color-mix(in srgb,var(--brand-2) 28%, transparent);
    border-radius:999px;
}
.hero::before{width:340px;height:340px;right:-120px;top:80px}
.hero::after{width:210px;height:210px;left:-90px;bottom:10px;border-color:color-mix(in srgb,var(--brand) 25%, transparent)}
.hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
    gap:clamp(34px,6vw,76px);
    align-items:center;
}
.tag{
    display:inline-flex;
    align-items:center;
    gap:8px;
    width:max-content;
    max-width:100%;
    padding:8px 13px;
    border:1px solid color-mix(in srgb,var(--brand) 25%, transparent);
    border-radius:999px;
    background:color-mix(in srgb,var(--surface) 76%, transparent);
    color:color-mix(in srgb,var(--brand) 82%, #4a2410);
    font-weight:850;
    font-size:.88rem;
    box-shadow:0 10px 28px rgba(83,48,22,.08);
}
h1,h2,h3{
    font-family:var(--font-display);
    letter-spacing:-.055em;
    color:var(--text);
}
h1{
    margin:22px 0 22px;
    max-width:850px;
    font-size:clamp(