@font-face{font-family:"Unbounded FC";src:url("fonts/display.woff2");font-weight:600;font-display:swap}
:root{--terra:#a4492d;--terra-d:#6f2c1a;--terra-dd:#4a1d12;--clay:#c96d47;--ochre:#d99a5b;--sage:#7d9278;--sage-d:#3d5142;--sage-dd:#26352b;--sage-l:#b9c6ae;--chalk:#f2e2cc;--chalk2:#e4cfb2;--ink:#21170f;
--env:var(--terra);--env2:var(--terra-d);--acc:var(--sage-l);
--display:"Unbounded FC",Rockwell,"Rockwell Nova","Sitka Heading",Cambria,"Bitstream Charter",serif;--body:"Gill Sans","Gill Sans MT","Trebuchet MS",Candara,"Noto Sans",sans-serif;--mono:Consolas,"Cascadia Mono","DejaVu Sans Mono",monospace;--rail:236px}
[hidden]{display:none!important}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--env);color:var(--chalk);font:17px/1.62 var(--body);overflow-x:hidden;min-height:100dvh}
.p-company,.p-support,.p-privacy{--env:var(--sage-d);--env2:var(--sage-dd);--acc:var(--ochre)}
.p-method{--env:#5f7560;--env2:var(--sage-dd);--acc:var(--ochre)}
.p-services{--env:var(--terra-d);--env2:var(--terra-dd)}
.p-contact{--env:#8e3d25;--env2:var(--sage-d)}
.grain{position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.22;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
main,footer{position:relative;z-index:1;min-width:0}
a{color:var(--chalk);text-decoration-color:var(--acc);text-underline-offset:3px;text-decoration-thickness:2px}
a:hover{color:#fff4e4}
:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}
h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.05;margin:.2em 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.4rem,7vw,5.6rem)}h2{font-size:clamp(1.6rem,3.2vw,2.5rem)}h3{font-size:1.25rem}
h1 em,h2 em{font-style:italic;color:var(--acc)}
p,li,dd{max-width:68ch}
.skip{position:absolute;left:-999px;top:0}.skip:focus{left:1rem;top:1rem;background:var(--ink);color:var(--chalk);padding:.7rem 1rem;z-index:99}
.wrap{overflow-wrap:anywhere}
.kicker{font:600 .78rem var(--mono);text-transform:uppercase;letter-spacing:.2em;color:var(--acc);margin:0 0 .6rem}
.note{font-size:.92rem;opacity:.88}
.btn{display:inline-flex;align-items:center;gap:.5rem;min-height:48px;padding:.65rem 1.5rem;background:var(--chalk);color:var(--ink);text-decoration:none;font:700 1rem var(--display);border:0;border-radius:999px 999px 999px 4px;cursor:pointer;transition:transform .25s cubic-bezier(.2,.7,.2,1),background .2s}
.btn:hover{transform:translateY(-3px);background:#fff1dc;color:var(--ink)}
.btn.ghost{background:transparent;color:var(--chalk);box-shadow:inset 0 0 0 2px var(--chalk)}
.btn.ghost:hover{background:rgba(242,226,204,.12);color:var(--chalk)}
.btn[disabled]{opacity:.55;cursor:wait;transform:none}
.row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.6rem}
.linkish{background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-decoration-color:var(--acc);font:inherit;cursor:pointer;min-height:28px}

/* ===== rail ===== */
.rail{position:fixed;z-index:20;left:0;top:0;bottom:0;width:var(--rail);display:flex;flex-direction:column;background:var(--ink);color:var(--chalk);padding:1.4rem 0 1rem;overflow-y:auto}
.rail::after{content:"";position:absolute;right:-14px;top:0;bottom:0;width:14px;background:linear-gradient(180deg,var(--clay) 0 18%,var(--sage) 18% 34%,var(--terra-d) 34% 51%,var(--ochre) 51% 58%,var(--sage-d) 58% 80%,var(--terra) 80%);clip-path:polygon(0 0,100% 2%,40% 9%,100% 17%,30% 26%,100% 33%,55% 44%,100% 52%,35% 61%,100% 70%,45% 80%,100% 88%,30% 95%,0 100%)}
.mark{display:flex;gap:.75rem;align-items:center;color:var(--chalk);text-decoration:none;padding:0 1.2rem}
.nodule{position:relative;width:44px;height:48px;flex:none}
.nodule i{position:absolute;inset:0;background:var(--clay);clip-path:polygon(42% 0,100% 22%,88% 78%,48% 100%,0 70%,8% 18%)}
.nodule i:nth-child(2){background:var(--sage);clip-path:polygon(42% 0,100% 22%,70% 45%,8% 18%)}
.nodule i:nth-child(3){background:var(--chalk2);clip-path:polygon(70% 45%,88% 78%,48% 100%,52% 58%)}
.mk-t{font:700 1.2rem/1 var(--display);letter-spacing:.06em}.mk-t b{color:var(--clay)}
.mk-t small{display:block;margin-top:.3rem;font:.66rem var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--sage-l)}
.depth{margin:1.6rem 1.2rem .4rem;font:600 .7rem var(--mono);letter-spacing:.25em;text-transform:uppercase;color:var(--ochre)}
.depth::before{content:"You are at: ";color:var(--sage-l)}
.rail-btn{display:none}
.strata-nav{list-style:none;margin:0;padding:0}
.band{display:block;padding:.75rem 1.2rem .75rem 1.4rem;color:var(--chalk);text-decoration:none;border-top:1px solid rgba(242,226,204,.08);position:relative;transition:padding .25s,background .25s}
.band .b-t{display:block;font:700 1.02rem var(--display)}
.band .b-d{display:block;font:.68rem var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--sage-l);opacity:.75}
.band::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--clay);transform:scaleY(0);transform-origin:top;transition:transform .3s}
.band:hover{background:rgba(242,226,204,.06);padding-left:1.8rem;color:var(--chalk)}
.band:hover::before,.band.on::before{transform:scaleY(1)}
.band.on{background:var(--terra-d)}
.p-company .band.on,.p-support .band.on,.p-privacy .band.on,.p-method .band.on{background:var(--sage-d)}
.rail-call{margin:auto 1.2rem 0;padding-top:1.2rem;font:600 .85rem var(--mono);color:var(--sage-l);text-decoration:none}
main,footer{margin-left:var(--rail)}
main>section,main>article,main>ol{padding-left:clamp(1.4rem,5vw,5.5rem);padding-right:clamp(1.4rem,5vw,5.5rem)}

/* ===== reveal ===== */
.rv-on .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.rv-on .reveal.in{opacity:1;transform:none}

/* ===== home: outcrop ===== */
.outcrop{position:relative;min-height:min(92dvh,900px);display:grid;align-items:end;padding-top:3rem;padding-bottom:4rem;overflow:hidden}
.rock{position:absolute;inset:0;pointer-events:none}
.rock span{position:absolute;display:block;animation:rise 1.4s cubic-bezier(.2,.7,.2,1) both}
.r1{right:-6%;top:-4%;width:64%;height:88%;background:var(--terra-d);clip-path:polygon(30% 0,100% 0,100% 100%,0 86%,12% 40%)}
.r2{right:4%;top:6%;width:46%;height:62%;background:var(--sage);clip-path:polygon(22% 8%,78% 0,100% 46%,70% 100%,8% 80%,0 34%);animation-delay:.12s!important}
.r3{right:16%;top:22%;width:24%;height:34%;background:var(--sage-l);clip-path:polygon(30% 0,100% 30%,80% 100%,0 72%);animation-delay:.24s!important}
.r4{right:28%;top:40%;width:13%;height:18%;background:var(--clay);clip-path:polygon(0 20%,70% 0,100% 70%,30% 100%);animation-delay:.36s!important}
.r5{left:0;right:0;bottom:0;height:34%;background:linear-gradient(180deg,transparent,rgba(74,29,18,.55))}
.r2::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-18deg,transparent 0 18px,rgba(38,53,43,.18) 18px 20px)}
@keyframes rise{from{opacity:0;transform:translateY(60px) rotate(-2deg)}to{opacity:1;transform:none}}
.oc-copy{position:relative;max-width:980px}
.oc-copy h1{font-size:clamp(2.6rem,8vw,7rem);line-height:.95;text-shadow:0 2px 0 rgba(74,29,18,.35)}
.oc-copy h1 span{display:block}
.oc-copy h1 span:nth-child(2){padding-left:clamp(1rem,8vw,8rem)}
.oc-copy h1 span:nth-child(3){padding-left:clamp(.5rem,3vw,3rem)}
.lede{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:56ch;background:rgba(33,23,15,.38);padding:1rem 1.2rem;border-left:6px solid var(--sage-l)}
.seams{position:relative;padding-top:4rem;padding-bottom:5rem;background:var(--sage-d);clip-path:polygon(0 4%,22% 0,58% 5%,100% 1%,100% 96%,70% 100%,30% 95%,0 100%);display:flex;flex-wrap:wrap;gap:0;align-items:flex-end}
.seam-h{width:100%;color:var(--ochre)}
.seam{flex:1 1 180px;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;padding:1.2rem;text-decoration:none;color:var(--chalk);min-height:calc(160px + var(--o) * 46px);background:linear-gradient(180deg,rgba(242,226,204,.04),rgba(242,226,204,.14));border-top:4px solid var(--clay);border-right:1px solid rgba(242,226,204,.15);transition:background .3s}
.seam:nth-child(odd){border-top-color:var(--sage-l)}
.seam b{font:700 1.7rem var(--display)}.seam span{font-size:.92rem;opacity:.85}
.seam:hover{background:rgba(242,226,204,.2);color:var(--chalk)}
.core{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(200px,.7fr);gap:2.5rem;padding-top:5rem;padding-bottom:5rem;align-items:start}
.cl-head{position:sticky;top:2rem}
.cl{display:grid;gap:1.2rem;min-width:0}
fieldset{border:0;margin:0;padding:0;min-width:0}
.cl fieldset{background:rgba(33,23,15,.28);border-radius:28px 6px 28px 6px;padding:1.2rem 1.3rem}
legend{font:700 1.05rem var(--display);color:var(--ochre);padding:0;margin-bottom:.4rem;float:left;width:100%}
.cl label{display:flex;gap:.7rem;align-items:flex-start;padding:.45rem 0;cursor:pointer;clear:both}
input[type=checkbox]{width:22px;height:22px;flex:none;margin-top:.15rem;accent-color:var(--clay)}
.cl-out{position:sticky;top:2rem;background:var(--ink);padding:1.4rem;border-radius:999px 999px 18px 18px;padding-top:2.4rem;text-align:center}
.meter{height:220px;width:46px;margin:0 auto 1rem;border-radius:23px;background:repeating-linear-gradient(180deg,var(--sage-d) 0 14px,var(--terra-d) 14px 22px,var(--sage-dd) 22px 34px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px var(--chalk2)}
.meter span{position:absolute;left:0;right:0;bottom:0;height:0;width:auto!important;background:linear-gradient(0deg,var(--clay),var(--ochre));transition:height .5s}
#cl-sum{font:700 1.05rem var(--display)}
#cl-next{text-align:left;font-size:.92rem;padding-left:1.1rem}
.boulders{display:flex;flex-wrap:wrap;gap:2rem;padding-bottom:6rem;align-items:center}
.boulder{flex:1 1 320px;min-width:0;padding:2.6rem 2.4rem}
.b-a{background:var(--ink);border-radius:58% 42% 46% 54%/40% 46% 54% 60%;padding:3.4rem}
.b-b{background:var(--sage);color:var(--ink);border-radius:40% 60% 52% 48%/54% 38% 62% 46%;padding:3.4rem;transform:translateY(2.5rem)}
.b-b .btn.ghost{color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.b-b a{color:var(--ink)}

/* ===== company ===== */
.bedrock{position:relative;padding-top:5rem;padding-bottom:3rem;overflow:hidden}
.bed-shape{position:absolute;right:-8%;top:-10%;width:55%;aspect-ratio:1;background:var(--terra);clip-path:polygon(20% 10%,85% 0,100% 55%,70% 100%,10% 85%,0 40%);opacity:.9}
.bedrock h1,.bedrock .kicker{position:relative}
.specimen{position:relative;margin:0 clamp(1.4rem,5vw,5.5rem);background:var(--chalk);color:var(--ink);padding:2.2rem!important;transform:rotate(-1.2deg);box-shadow:14px 16px 0 var(--terra-d);max-width:920px}
.spec-tag{font:600 .75rem var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--terra);margin:0 0 1rem}
.specimen dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 2rem}
.specimen dt{font:600 .74rem var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--sage-d)}
.specimen dd{margin:.2rem 0 0;font:700 1.08rem var(--display)}
.specimen a{color:var(--terra-d)}
.seamtext{padding-top:5rem;padding-bottom:5rem;columns:2 340px;column-gap:4rem}
.seamtext h2{break-after:avoid;color:var(--ochre)}.seamtext p{break-inside:avoid}

/* ===== services ===== */
.sv-head{padding-top:5rem;padding-bottom:3rem}
.sv-jump{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}
.sv-jump a{padding:.55rem 1rem;border-radius:999px;background:rgba(242,226,204,.12);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.layer{position:relative;padding-top:5rem!important;padding-bottom:5rem!important;margin-top:-2.5rem}
.layer-in{max-width:880px;position:relative}
.lv0{background:var(--clay);clip-path:polygon(0 6%,40% 0,100% 8%,100% 100%,0 100%)}
.lv1{background:var(--sage);color:var(--ink);clip-path:polygon(0 0,62% 7%,100% 2%,100% 100%,0 100%)}
.lv2{background:var(--sage-dd);clip-path:polygon(0 8%,30% 2%,75% 9%,100% 0,100% 100%,0 100%)}
.lv3{background:var(--ochre);color:var(--ink);clip-path:polygon(0 3%,55% 10%,100% 4%,100% 100%,0 100%)}
.lv1 .layer-in,.lv3 .layer-in{margin-left:auto}
.lv1 a,.lv3 a{color:var(--ink)}
.lv1 .btn,.lv3 .btn{background:var(--ink);color:var(--chalk)}
.layer-depth{font:600 .76rem var(--mono);letter-spacing:.22em;text-transform:uppercase;opacity:.75}
.layer-lede{font-size:1.15rem}
.ticks{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem 1.6rem;margin:1.4rem 0 1.8rem}
.ticks li{padding-left:1.6rem;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:.5em;width:12px;height:12px;background:currentColor;clip-path:polygon(50% 0,100% 40%,75% 100%,15% 90%,0 35%);opacity:.75}
.faq{padding-top:4rem;padding-bottom:5rem}
details{border-top:2px solid rgba(242,226,204,.22)}
summary{cursor:pointer;padding:1rem 0;font:700 1.08rem var(--display);list-style:none;display:flex;justify-content:space-between;gap:1rem;min-height:48px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--mono);color:var(--acc);transition:transform .25s}
details[open] summary::after{transform:rotate(45deg)}

/* ===== method ===== */
.terrace-head{padding-top:5rem;padding-bottom:2rem}
.terrace-head h1 span{display:block;font:italic 400 clamp(1.1rem,2.2vw,1.6rem) var(--display);color:var(--ochre);margin-top:.6rem}
.terraces{list-style:none;margin:0;counter-reset:t;padding-top:1rem;padding-bottom:3rem}
.terraces li{counter-increment:t;position:relative;margin-left:calc(var(--k,0) * 1px);max-width:720px;background:var(--sage-dd);padding:1.8rem 2rem 1.8rem 5rem;margin-bottom:.5rem;border-radius:0 40px 0 0}
.terraces li:nth-child(1){margin-left:0}.terraces li:nth-child(2){margin-left:6%;background:#2f4234}.terraces li:nth-child(3){margin-left:12%;background:var(--terra-d)}.terraces li:nth-child(4){margin-left:18%;background:var(--terra)}.terraces li:nth-child(5){margin-left:24%;background:var(--clay);color:var(--ink)}
.terraces li::before{content:counter(t);position:absolute;left:1.4rem;top:1.4rem;font:700 2.4rem/1 var(--display);color:var(--ochre)}
.terraces li:nth-child(5)::before{color:var(--ink)}
.criteria{padding-top:3rem;padding-bottom:5rem}
.pebbles{display:flex;flex-wrap:wrap;gap:1.4rem;align-items:center}
.pebbles article{flex:1 1 220px;min-width:0;background:var(--sage-l);color:var(--ink);padding:2rem 1.8rem}
.pebbles article:nth-child(1){border-radius:62% 38% 55% 45%/48% 55% 45% 52%}
.pebbles article:nth-child(2){border-radius:40% 60% 38% 62%/60% 40% 60% 40%;background:var(--chalk2);transform:translateY(1.5rem)}
.pebbles article:nth-child(3){border-radius:55% 45% 60% 40%/40% 60% 40% 60%;background:var(--ochre)}
.pebbles article:nth-child(4){border-radius:45% 55% 40% 60%/55% 45% 55% 45%;transform:translateY(-1rem)}
.pebbles article:nth-child(5){border-radius:58% 42% 48% 52%/42% 58% 42% 58%;background:var(--clay)}

/* ===== resources ===== */
.field-head{padding-top:5rem;padding-bottom:2rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:2rem;align-items:end}
.field-head h1{grid-row:span 2;margin:0;font-size:clamp(3rem,10vw,8rem);line-height:.85}
.res-tools{background:var(--ink);padding:1.4rem;border-radius:24px 24px 24px 4px;min-width:0}
.res-tools label{font:600 .78rem var(--mono);text-transform:uppercase;letter-spacing:.16em;color:var(--sage-l)}
input,textarea{width:100%;font:inherit;color:var(--ink);background:var(--chalk);border:0;border-bottom:3px solid var(--sage-d);border-radius:10px 10px 2px 2px;padding:.7rem .85rem;min-height:48px;margin-top:.3rem}
input[type=checkbox]{width:22px;min-height:0;margin-top:.15rem}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.chip{min-height:44px;padding:.4rem 1rem;border-radius:999px;border:2px solid var(--sage-l);background:transparent;color:var(--chalk);font:600 .9rem var(--mono);text-transform:capitalize;cursor:pointer}
.chip[aria-pressed=true]{background:var(--sage-l);color:var(--ink)}
.field-bed{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem;padding-top:1rem;padding-bottom:1rem}
.field-bed .res{border:0;background:rgba(33,23,15,.34);border-radius:6px 34px 6px 34px;padding:.4rem 1.4rem 1rem}
.field-bed .res:nth-child(3n+2){background:var(--sage-d)}
.field-bed .res:nth-child(4n+3){background:var(--terra-d)}
.res .cat{display:block;font:600 .68rem var(--mono);text-transform:uppercase;letter-spacing:.2em;color:var(--ochre);margin-bottom:.2rem}
.res summary{flex-wrap:wrap}
#rcount{padding:0 clamp(1.4rem,5vw,5.5rem);margin-left:0}

/* ===== support ===== */
.fault{padding-top:5rem;padding-bottom:4rem;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:2rem;align-items:end;position:relative}
.fault::after{content:"";position:absolute;left:0;right:0;bottom:0;height:18px;background:var(--clay);clip-path:polygon(0 40%,12% 70%,25% 20%,37% 80%,52% 30%,63% 90%,78% 10%,90% 60%,100% 30%,100% 100%,0 100%)}
.fault-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:0;padding-left:0!important;padding-right:0!important}
.triage{background:var(--terra-d);padding:3rem clamp(1.4rem,4vw,4rem)}
.triage ol{padding-left:1.3rem}.triage li{margin-bottom:.6rem}
.fault-body .enq{border-radius:0}

/* ===== forms ===== */
.enq{background:var(--sage-l);color:var(--ink);padding:2.6rem clamp(1.4rem,4vw,3.4rem);border-radius:48px 8px 48px 8px;min-width:0}
.enq h2{color:var(--terra-d)}
.enq label{display:block;font-weight:600;margin-bottom:1rem}
.enq a{color:var(--terra-d)}
.f2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.2rem}
.svcs{margin-bottom:1rem}.svcs legend{color:var(--terra-d)}
.enq .svc,.enq .consent{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;margin-bottom:.5rem;clear:both}
.svc{background:rgba(33,23,15,.08);padding:.6rem .8rem;border-radius:999px}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.enq .btn{background:var(--terra-d);color:var(--chalk);margin-top:.6rem}
.status{min-height:1.5em;font-weight:700;margin:.8rem 0 0}.status.err{color:#7a1d0b}.status.ok{color:var(--sage-dd)}

/* ===== contact ===== */
.cairn-wrap{padding-top:5rem;padding-bottom:3rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:2rem;align-items:center}
.cairn-wrap h1 span{display:block;font:italic 400 clamp(1rem,2vw,1.5rem) var(--display);color:var(--sage-l);margin-top:.6rem}
.cairn{display:flex;flex-direction:column;align-items:center;gap:.4rem;min-width:0}
.cairn p{margin:0;text-align:center;padding:1rem 2rem;max-width:100%}
.cairn p span{display:block;font:600 .7rem var(--mono);text-transform:uppercase;letter-spacing:.2em;opacity:.75}
.cairn p:nth-child(1){background:var(--sage-l);color:var(--ink);border-radius:50% 50% 44% 56%/60% 60% 40% 40%;width:min(100%,360px)}
.cairn p:nth-child(2){background:var(--ochre);color:var(--ink);border-radius:46% 54% 50% 50%/50% 50% 50% 50%;width:min(100%,430px)}
.cairn p:nth-child(3){background:var(--sage-d);border-radius:52% 48% 46% 54%/50% 50% 50% 50%;width:min(100%,500px)}
.cairn p:nth-child(4){background:var(--ink);border-radius:40% 40% 30% 30%/60% 60% 40% 40%;width:min(100%,560px)}
.cairn a{color:inherit}
.cairn .map-note{background:none;font-size:.9rem;padding:.8rem 0 0}
.cairn .map-note a{color:var(--chalk)}
.ct-switch{padding-bottom:5rem}
.ct-tabs{display:flex;gap:0;margin-bottom:-1px}
.ct-tabs [role=tab]{min-height:52px;padding:.6rem 1.8rem;font:700 1.1rem var(--display);border:0;background:rgba(33,23,15,.4);color:var(--chalk);cursor:pointer;border-radius:22px 22px 0 0}
.ct-tabs [aria-selected=true]{background:var(--sage-l);color:var(--ink)}
.ct-switch .enq{border-top-left-radius:0}

/* ===== privacy / 404 ===== */
.legal{padding-top:5rem;padding-bottom:5rem;max-width:900px;border-left:14px solid var(--terra);margin-left:clamp(1.4rem,5vw,5.5rem);padding-left:clamp(1.4rem,4vw,3rem)!important}
.legal h2{color:var(--ochre);font-size:1.5rem;margin-top:2rem}
.nf{min-height:80dvh;display:grid;place-content:center;text-align:center;padding-top:4rem;padding-bottom:4rem}
.nf-code{font:700 clamp(7rem,24vw,18rem)/1 var(--display);margin:0;display:flex;justify-content:center}
.nf-code span{display:inline-block;color:var(--sage-l)}
.nf-code span:nth-child(1){clip-path:polygon(0 0,100% 0,100% 58%,0 70%);transform:translate(-4px,-6px)}
.nf-code span:nth-child(2){color:var(--ochre);transform:rotate(7deg) translateY(10px)}
.nf-code span:nth-child(3){clip-path:polygon(0 0,100% 0,100% 100%,0 100%,0 44%);transform:translate(6px,8px) rotate(-4deg)}
.nf .row{justify-content:center}

/* ===== footer ===== */
.foot{background:var(--ink);padding:0 clamp(1.4rem,5vw,5.5rem) 2rem}
.foot-ridge{height:60px;margin:0 calc(-1 * clamp(1.4rem,5vw,5.5rem));background:var(--env);clip-path:polygon(0 0,100% 0,100% 30%,82% 70%,64% 35%,46% 100%,28% 40%,12% 80%,0 45%)}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:2rem;padding-top:2rem}
.foot-big{font:700 clamp(2.4rem,5vw,4rem)/1 var(--display);margin:0 0 .6rem;color:var(--sage-l)}.foot-big b{color:var(--clay)}
.foot-name{font:600 .85rem var(--mono);letter-spacing:.08em}
address{font-style:normal}
.foot-h{font:600 .74rem var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ochre)}
.foot-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem .8rem}
.foot-links a,.foot-links button{display:inline-flex;min-height:36px;align-items:center}
.fine{font-size:.85rem;opacity:.7;border-top:1px solid rgba(242,226,204,.15);padding-top:1rem;margin-top:2rem;max-width:none}

/* ===== cookie ===== */
.cookie{position:fixed;z-index:60;right:1rem;bottom:1rem;max-width:420px;left:auto;background:var(--sage-l);color:var(--ink);padding:1.2rem 1.4rem;border-radius:30px 30px 30px 6px;box-shadow:10px 10px 0 var(--terra-dd)}
.cookie p{margin:0 0 .8rem}.cookie a{color:var(--terra-d)}
.cookie-b{display:flex;gap:.6rem;flex-wrap:wrap}
.cookie-b button{flex:1 1 140px;min-height:46px;font:700 .95rem var(--display);border:2px solid var(--ink);background:var(--ink);color:var(--chalk);border-radius:999px;cursor:pointer}
.cookie-b button+button{background:transparent;color:var(--ink)}

/* ===== responsive ===== */
@media (max-width:1100px){.core{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.cl-head{grid-column:1/-1;position:static}.cl-out{position:sticky;top:5rem}}
@media (max-width:900px){
:root{--rail:0px}
.rail{position:sticky;bottom:auto;width:auto;flex-direction:row;align-items:center;justify-content:space-between;padding:.7rem 1rem;overflow:visible}
.rail::after{left:0;right:0;top:auto;bottom:-10px;width:auto;height:10px;clip-path:polygon(0 0,100% 0,100% 30%,80% 100%,60% 20%,40% 90%,20% 30%,0 100%)}
.mark{padding:0}.depth,.rail-call{display:none}
.rail-btn{display:inline-flex;align-items:center;gap:.6rem;min-height:46px;padding:.5rem 1rem;background:var(--clay);color:var(--ink);border:0;border-radius:999px;font:700 .95rem var(--display);cursor:pointer}
.rb-lines{width:18px;height:12px;background:linear-gradient(var(--ink) 0 2px,transparent 2px 5px,var(--ink) 5px 7px,transparent 7px 10px,var(--ink) 10px 12px)}
.strata-nav{display:none;position:fixed;inset:72px 0 0 0;background:var(--ink);overflow-y:auto;padding:1rem 0 2rem}
.strata-nav.open{display:block}
.strata-nav.open li{animation:slidein .45s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i) * 40ms)}
@keyframes slidein{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}
.band{padding:1rem 1.4rem}.band .b-t{font-size:1.4rem}
main,footer{margin-left:0}
.core,.field-head,.fault,.fault-body,.cairn-wrap{grid-template-columns:minmax(0,1fr)}
.cl-out{position:static;border-radius:24px}.meter{height:28px;width:100%;}
.meter span{top:0;height:auto!important;width:0}
.r1{width:90%;opacity:.7}.r2{width:70%;opacity:.8}.r3{width:36%}.r4{display:none}
.terraces li{margin-left:0!important}
.b-b{transform:none}
.foot-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:620px){
.f2,.specimen dl{grid-template-columns:minmax(0,1fr)}
.specimen{transform:none;box-shadow:8px 8px 0 var(--terra-d)}
.seams{clip-path:none}.seam{min-height:120px;flex-basis:100%}
.terraces li{padding-left:3.6rem}
.b-a,.b-b{border-radius:40px;padding:2rem 1.5rem}
.pebbles article{border-radius:32px!important;transform:none!important}
.cairn p{border-radius:28px!important;width:100%!important}
.cookie{left:.6rem;right:.6rem;bottom:.6rem;max-width:none}
.ct-tabs [role=tab]{flex:1;padding:.6rem}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rv-on .reveal{opacity:1;transform:none}}
