
:root{--iv:#F7F5F0;--w:#fff;--ch:#252724;--sg:#A8B2A0;--tp:#B8A999;--gr:#E8E6E0;--s:Georgia,"Times New Roman",serif;--f:system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:1rem/1.65 var(--f);color:var(--ch);background:var(--iv);overflow-x:hidden}
h1,h2,h3{font-family:var(--s);font-weight:400;line-height:1.15;margin:0 0 .5em}h1{font-size:clamp(2.4rem,6vw,4.8rem)}h2{font-size:clamp(1.7rem,3.5vw,2.6rem)}h3{font-size:2.25rem}
a{color:inherit}ul,ol{padding:0;list-style:none;margin:0}img,.ph{max-width:100%}:focus-visible{outline:2px solid var(--ch);outline-offset:3px}
.wrap{width:min(1180px,100% - 2.5rem);margin-inline:auto}.sec{padding-block:clamp(3rem,8vw,2.5rem)}.tint{background:var(--gr)}.narrow{max-width:760px}.lead{font-size:1.2rem;max-width:52ch}.note{color:#555}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--w);padding:.5rem;z-index:99}
.hdr{position:sticky;top:0;z-index:50;background:rgba(247,245,240,.96);border-bottom:1px solid var(--gr)}.bar{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:1rem}
.logo{font:1.4rem var(--s);text-decoration:none;margin:0}.menu-btn{display:none;min-height:44px;padding:0 1rem;background:none;border:1px solid var(--ch);font:inherit;cursor:pointer}
.nav,.nav>ul{display:flex;align-items:center;gap:1.5rem}.nav a:not(.btn){text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .3s;padding-block:.4rem}.nav a:not(.btn):hover,.nav a[aria-current]{background-size:100% 1px}
.has-sub{position:relative}.sub{position:absolute;top:100%;left:-1rem;min-width:220px;background:var(--w);border:1px solid var(--gr);padding:.75rem 1rem;display:none;flex-direction:column;gap:.25rem}.has-sub:hover .sub,.has-sub:focus-within .sub{display:flex}
.btn{display:inline-block;background:var(--ch);color:var(--w);padding:.8rem 1.4rem;text-decoration:none;min-height:44px;border:0;font:inherit;cursor:pointer;transition:background .3s}.btn:hover{background:#3d403b}.btn-l{padding:1rem 1.8rem}.ghost{margin-left:1.2rem;text-underline-offset:5px}
.ph{position:relative;display:flex;align-items:flex-end;aspect-ratio:4/3;background:linear-gradient(160deg,var(--gr),var(--tp));overflow:hidden;transition:transform .6s}.ph span{font-size:.75rem;padding:.6rem;color:#444}
.p1{background:linear-gradient(160deg,#ddd8cc,#b8a999)}.p2{background:linear-gradient(160deg,#e8e6e0,#a8b2a0)}.p3{background:linear-gradient(160deg,#8d8a82,#252724)}.p4{background:linear-gradient(160deg,#efe9dd,#c9bba8)}.p5{background:linear-gradient(160deg,#cfd6c9,#8f9a88)}.p6{background:linear-gradient(160deg,#f2eee6,#b8a999)}
.hero{position:relative;min-height:min(86vh,760px);display:grid;align-items:end}.hero-img{position:absolute;inset:0;aspect-ratio:auto}.hero-t{position:relative;padding-block:4rem;animation:rise .9s both}.hero-t>p:first-of-type{max-width:46ch;font-size:1.15rem}@keyframes rise{from{opacity:0;transform:translateY(14px)}}
.split{display:grid;gap:2.5rem;align-items:center}.pgrid{display:grid;gap:2rem;grid-template-columns:1fr}.pc{text-decoration:none;display:block}.pc:hover .ph{transform:scale(1.03)}.pc .ph{margin-bottom:1rem}.lk{text-decoration:underline;text-underline-offset:5px}.pc,.art{overflow:hidden}
.tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin-block:1.5rem}.tabs button{min-height:44px;padding:0 1.2rem;border:1px solid var(--ch);background:none;font:inherit;cursor:pointer}.tabs [aria-pressed=true]{background:var(--ch);color:var(--w)}.out{font:1.3rem/1.5 var(--s);max-width:60ch}
.why,.cols3{display:grid;gap:2rem}.why li{border-top:1px solid var(--tp);padding-top:1rem}
.gal,.gal2{display:grid;gap:1rem;grid-template-columns:1fr}.g{margin:0;overflow:hidden}.g figcaption{font-size:.9rem;padding-top:.5rem}.g.a .ph{aspect-ratio:3/4}
.steps{display:grid;gap:2rem;counter-reset:s}.steps span{font:2.2rem var(--s);color:var(--tp)}
.tms{display:grid;gap:2rem}blockquote{margin:0;border-left:2px solid var(--sg);padding-left:1.2rem;font-family:var(--s)}blockquote footer{font:.85rem var(--f);margin-top:.5rem}
.faq .qa{border-bottom:1px solid var(--tp)}.faq h3{margin:0}.faq button{width:100%;text-align:left;background:none;border:0;padding:1.1rem 2rem 1.1rem 0;font:1.15rem var(--s);cursor:pointer;position:relative;min-height:44px}.faq button:after{content:"+";position:absolute;right:0}.faq button[aria-expanded=true]:after{content:"\2212"}.faq [id]{padding-bottom:1rem}
.cta{background:var(--ch);color:var(--w);text-align:center;padding-block:clamp(4rem,9vw,7rem)}.cta .btn{background:var(--iv);color:var(--ch)}
.bl li{padding:.4rem 0;border-bottom:1px solid var(--gr)}.bc{padding-top:1.5rem;font-size:.9rem}
form{display:grid;gap:.4rem}label{font-weight:600;margin-top:.8rem}input,select,textarea{font:inherit;padding:.8rem;border:1px solid var(--tp);background:var(--w);min-height:44px;width:100%}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#a33}.err{color:#a33;margin:0;font-size:.9rem}
.ftr{background:var(--gr);padding-top:4rem}.fgrid{display:grid;gap:2rem}.ftr h2{font:600 1rem var(--f)}.ftr li{padding:.2rem 0}.ftr a{text-decoration:none}.copy{padding-block:2rem;font-size:.9rem}
.rv{opacity:0;transform:translateY(16px);transition:opacity .7s,transform .7s}.rv.in{opacity:1;transform:none}
@media(min-width:720px){.split{grid-template-columns:1fr 1fr}.pgrid{grid-template-columns:repeat(2,1fr)}.why,.cols3,.tms{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(4,1fr)}.gal,.gal2{grid-template-columns:repeat(2,1fr)}.fgrid{grid-template-columns:2fr 1fr 1fr 1fr}.pc.wide{grid-column:1/-1}.pc.wide .ph{aspect-ratio:16/7}}
@media(max-width:899px){.menu-btn{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--iv);flex-direction:column;align-items:flex-start;padding:1.2rem;border-bottom:1px solid var(--gr)}.nav.open{display:flex}.nav,.nav>ul{gap:.6rem}.nav>ul{flex-direction:column;align-items:flex-start}.sub{position:static;display:flex;border:0;padding:.3rem 0 0 1rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto}.rv{opacity:1;transform:none}}

.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(37,39,36,.78),rgba(37,39,36,.2))}
.hero-t{z-index:1;color:var(--w)}.hero .btn{background:var(--iv);color:var(--ch)}.hero .ghost{color:var(--w)}

/* FIX: Mobile hero spacing */
@media (max-width: 600px) {
    .hero {
        min-height: 270px;
        /*height: 560px;*/
        align-items: end;
        overflow: hidden;
    }

    .hero-img,
    .hero-video {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .hero-t {
        padding: 0 12px 28px;
        margin: 0;
        width: 100%;
        z-index: 2;
    }

    .hero-t h1 {
        font-size: 2rem;
        line-height: 1.05;
        margin-bottom: 12px;
    }

    .hero-t > p:first-of-type {
        font-size: 0.9rem;
        line-height: 1.5;
        margin-bottom: 14px;
    }

    .hero-t .btn {
        padding: 10px 14px;
        font-size: 0.85rem;
    }

    .hero-t .ghost {
        margin-left: 8px;
    }
}