/* André Cruz — Caverna Ancestral | Design system */
:root{
  --ink:#171915;--ink-2:#252821;--paper:#f2eee5;--paper-2:#e7e0d3;--muted:#a6a092;
  --copper:#b9683b;--copper-hi:#d28a5d;--line:rgba(242,238,229,.16);
  --serif:"Iowan Old Style","Baskerville","Times New Roman",serif;
  --sans:"Avenir Next","Trebuchet MS","Segoe UI",sans-serif;
  --max:1180px;--pad:clamp(1.25rem,4vw,3rem);--section:clamp(5rem,10vw,9rem);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}
a{color:inherit}img{display:block;max-width:100%}button,input,textarea{font:inherit}.skip-link{position:fixed;top:1rem;left:1rem;z-index:999;background:var(--paper);color:var(--ink);padding:.8rem 1rem;transform:translateY(-160%)}.skip-link:focus{transform:none}.container{width:min(100%,var(--max));margin-inline:auto;padding-inline:var(--pad)}
.site-header{position:fixed;inset:0 0 auto;z-index:50;background:linear-gradient(to bottom,rgba(23,25,21,.92),transparent);transition:background .25s,border .25s}.site-header.scrolled{background:rgba(23,25,21,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.brand img{width:230px;height:auto}.nav-links{display:flex;align-items:center;gap:1.8rem}.nav-links>a{font-size:.79rem;text-decoration:none;text-transform:uppercase;letter-spacing:.16em;color:#d8d2c7;position:relative}.nav-links>a::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--copper-hi);transition:right .25s}.nav-links>a:hover::after,.nav-links>a[aria-current=page]::after{right:0}.lang-switch{display:flex;border:1px solid var(--line);border-radius:999px;padding:3px}.lang-switch button{width:42px;height:34px;border:0;background:transparent;color:var(--muted);cursor:pointer;border-radius:999px;font-size:.72rem;font-weight:700}.lang-switch button.active{background:var(--paper);color:var(--ink)}.nav-cta{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:.6rem 1rem!important;border:1px solid rgba(210,138,93,.55);color:var(--paper)!important}.nav-cta::after{display:none!important}.menu-toggle{display:none;width:46px;height:46px;border:1px solid var(--line);background:transparent;color:var(--paper);padding:12px;cursor:pointer}.menu-toggle span{display:block;height:1px;background:currentColor;margin:5px 0}
.hero{min-height:100svh;display:grid;align-items:end;position:relative;overflow:hidden;padding-top:100px}.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 30%,rgba(185,104,59,.12),transparent 35%),linear-gradient(115deg,#171915 0 52%,#20231d 52%);z-index:-2}.hero::after{content:"AC";position:absolute;right:-.05em;bottom:-.22em;color:rgba(242,238,229,.025);font:700 min(42vw,560px)/1 var(--serif);z-index:-1}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);gap:clamp(2rem,7vw,7rem);align-items:end;padding-bottom:clamp(3rem,8vw,6.5rem)}.eyebrow{display:flex;align-items:center;gap:.85rem;text-transform:uppercase;letter-spacing:.22em;color:var(--copper-hi);font-size:.72rem;font-weight:700;margin:0 0 1.5rem}.eyebrow::before{content:"";width:38px;height:1px;background:currentColor}.display{font:400 clamp(3.7rem,8vw,8rem)/.91 var(--serif);letter-spacing:-.045em;margin:0;max-width:10ch}.display em{display:block;color:var(--copper-hi);font-weight:400}.lead{font-size:clamp(1.05rem,1.5vw,1.28rem);max-width:580px;color:#c9c4ba;margin:2rem 0}.actions{display:flex;flex-wrap:wrap;gap:1rem}.btn{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:.8rem;padding:.75rem 1.3rem;border:1px solid transparent;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:700;transition:transform .2s,background .2s,color .2s,border .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--copper);color:#fff}.btn-primary:hover{background:var(--copper-hi)}.btn-secondary{border-color:var(--line);color:var(--paper)}.btn-secondary:hover{border-color:var(--copper-hi)}.portrait-frame{position:relative;max-width:390px;justify-self:end}.portrait-frame::before{content:"";position:absolute;inset:-16px 16px 16px -16px;border:1px solid rgba(185,104,59,.55)}.portrait-frame img{position:relative;width:100%;aspect-ratio:3/4;object-fit:cover;filter:grayscale(100%) contrast(1.05)}.portrait-caption{position:absolute;right:-1.5rem;bottom:2rem;background:var(--paper);color:var(--ink);padding:.7rem 1rem;text-transform:uppercase;letter-spacing:.15em;font-size:.66rem;font-weight:700;transform:rotate(-90deg);transform-origin:right bottom}
section{padding-block:var(--section)}.section-light{background:var(--paper);color:var(--ink)}.section-kicker{color:var(--copper);font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.section-title{font:400 clamp(2.5rem,5.5vw,5.2rem)/.98 var(--serif);letter-spacing:-.035em;margin:.75rem 0 1.5rem;max-width:12ch}.section-copy{max-width:680px;color:#5d5b54;font-size:1.08rem}.manifesto-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(3rem,8vw,9rem);align-items:start}.manifesto-index{font:400 clamp(5rem,12vw,11rem)/.8 var(--serif);color:var(--paper-2)}.principles{border-top:1px solid #cbc4b8;margin-top:3rem}.principle{display:grid;grid-template-columns:80px 1fr;padding:1.6rem 0;border-bottom:1px solid #cbc4b8}.principle b{font:400 1.7rem/1 var(--serif);color:var(--copper)}.principle h3{font:400 1.55rem/1.2 var(--serif);margin:0 0 .4rem}.principle p{margin:0;color:#69665d}.story-band{overflow:hidden}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);align-items:center}.quote{font:400 clamp(2.1rem,4vw,4rem)/1.08 var(--serif);margin:0}.quote span{color:var(--copper-hi)}.story-copy p{color:#bab5aa}.signature{display:block;margin-top:2rem;color:var(--paper);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}
.offer-list{margin-top:4rem}.offer{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:2rem;padding:2rem 0;border-top:1px solid var(--line)}.offer:last-child{border-bottom:1px solid var(--line)}.offer-num{color:var(--copper-hi);font-size:.76rem;letter-spacing:.1em}.offer h3{font:400 clamp(1.55rem,3vw,2.6rem)/1.15 var(--serif);margin:0 0 .25rem}.offer p{margin:0;color:#a9a498}.offer-arrow{font-size:1.7rem;color:var(--copper-hi)}.disclaimer{margin-top:2rem;max-width:820px;color:#8e8a80;font-size:.83rem}.cta-panel{background:var(--copper);color:#fff;padding:clamp(2rem,6vw,5rem);display:grid;grid-template-columns:1.4fr auto;gap:2rem;align-items:end}.cta-panel h2{font:400 clamp(2.5rem,6vw,5.8rem)/.95 var(--serif);letter-spacing:-.04em;margin:0;max-width:11ch}.cta-panel p{max-width:650px;margin:1.5rem 0 0;color:#f4ded2}.cta-panel .btn{background:#171915}.cta-panel .btn:hover{background:#2a2d26}
.page-hero{padding:180px 0 90px;background:linear-gradient(120deg,#171915,#20231d)}.page-hero h1{font:400 clamp(3.6rem,8vw,7.2rem)/.94 var(--serif);letter-spacing:-.04em;margin:1rem 0}.page-hero p{max-width:660px;color:#bbb6ac;font-size:1.15rem}.about-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,9vw,9rem);align-items:start}.about-layout img{width:100%;filter:grayscale(1)}.prose h2{font:400 clamp(2rem,4vw,3.5rem)/1 var(--serif);margin:0 0 1.5rem}.prose p{color:#5c5a53;font-size:1.08rem}.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#cbc4b8;margin-top:3rem}.fact{background:var(--paper);padding:1.6rem}.fact span{display:block;color:var(--copper);font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;margin-bottom:.3rem}.fact strong{font:400 1.35rem var(--serif)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,9vw,9rem)}.contact-method{display:block;padding:1.4rem 0;border-bottom:1px solid #cbc4b8;text-decoration:none}.contact-method span{display:block;color:var(--copper);font-size:.7rem;text-transform:uppercase;letter-spacing:.16em}.contact-method strong{font:400 clamp(1.4rem,3vw,2rem) var(--serif)}.contact-form{display:grid;gap:1.2rem}.field label{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.45rem}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid #a9a297;background:transparent;padding:.8rem 0;color:var(--ink);outline:none;border-radius:0}.field input:focus,.field textarea:focus{border-color:var(--copper)}.field textarea{min-height:140px;resize:vertical}.form-note{font-size:.8rem;color:#77736a}.legal-wrap{max-width:840px}.legal-wrap h2{font:400 2rem var(--serif);margin-top:3rem}.legal-wrap h3{font:600 1rem var(--sans);margin-top:2rem}.legal-wrap p,.legal-wrap li{color:#5e5b54}.draft-note{padding:1rem 1.25rem;border:1px solid #cfc7ba;color:#6f6b62;background:#ebe5da}
.site-footer{padding:4rem 0 2rem;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1fr auto auto;gap:clamp(2rem,7vw,6rem);align-items:start}.footer-brand img{width:230px}.footer-brand p{color:#8f8b82;max-width:370px;font-size:.88rem}.footer-links{display:grid;gap:.7rem}.footer-links a{color:#aaa59b;text-decoration:none;font-size:.86rem}.footer-links a:hover{color:var(--copper-hi)}.footer-label{color:var(--paper);text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;margin-bottom:1rem}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;border-top:1px solid var(--line);padding-top:1.5rem;margin-top:3rem;color:#77746c;font-size:.75rem}
.reveal{opacity:1;transform:none}.reveal.in{opacity:1;transform:none}:focus-visible{outline:2px solid var(--copper-hi);outline-offset:4px}
@media(max-width:860px){.nav-links{position:fixed;inset:0;background:var(--ink);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:translateX(100%);transition:transform .3s}.menu-open .nav-links{transform:none}.nav-links>a{font:400 2.2rem var(--serif);text-transform:none;letter-spacing:0}.menu-toggle{display:block;z-index:2}.hero-grid,.manifesto-grid,.story-grid,.about-layout,.contact-grid{grid-template-columns:1fr}.hero-grid{padding-top:3rem}.display{font-size:clamp(3.5rem,15vw,6rem)}.portrait-frame{max-width:300px;justify-self:center}.manifesto-index{display:none}.offer{grid-template-columns:48px 1fr}.offer-arrow{display:none}.cta-panel{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:560px){.brand img{width:190px}.nav{height:76px}.hero{padding-top:76px}.hero-grid{gap:3.5rem}.actions{display:grid}.btn{width:100%}.portrait-frame{max-width:250px}.principle{grid-template-columns:52px 1fr}.facts{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column}.page-hero{padding-top:135px}.cta-panel{margin-inline:calc(-1 * var(--pad))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
