/* Layout: black-and-gold job-ticket site. Full-bleed video hero, hazard-stripe dividers, photo-tile navigation, stacked catalog, sticky mobile call bar */
:root{
  --pit:#0e0c0a;--slab:#181512;--seam:#2c261f;
  --gold:#e3a72f;--gold-ink:#1a1206;--dust:#efe6d6;--clay:#a99c88;--tail:#e0553a;
  --f-brand:"Alfa Slab One",Rockwell,"Roboto Slab",Georgia,serif;
  --f-head:"Barlow Condensed","Arial Narrow","Roboto Condensed",sans-serif;
  --f-body:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--pit);color:var(--dust);font:400 17px/1.6 var(--f-body)}
img,video{max-width:100%;display:block}
a{color:var(--gold)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
h1,h2,h3{font-family:var(--f-head);text-transform:uppercase;letter-spacing:.02em;line-height:1.02;text-wrap:balance;margin:0}
h2{font-size:clamp(2rem,5vw,3rem);font-weight:700}
.eyebrow{font:600 .85rem/1 var(--f-head);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.lede{color:var(--clay);max-width:62ch;margin:.75rem 0 0;font-size:1.05rem}
section{padding-block:80px}
.alt{background:var(--slab);border-block:1px solid var(--seam)}
.stripe{height:14px;background:repeating-linear-gradient(-45deg,var(--gold) 0 18px,var(--pit) 18px 36px)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 1.05rem/1 var(--f-head);text-transform:uppercase;letter-spacing:.08em;text-decoration:none;padding:15px 24px;border-radius:4px;border:2px solid var(--gold);cursor:pointer;transition:transform .15s,background .15s,color .15s}
.btn.solid{background:var(--gold);color:var(--gold-ink)}
.btn.ghost{background:rgba(14,12,10,.35);color:var(--gold)}
.btn.ghost:hover{background:var(--gold);color:var(--gold-ink)}
.btn:hover{transform:translateY(-2px)}
.btn.sm{padding:10px 14px;font-size:.95rem}
.link-arrow{font:700 1rem var(--f-head);text-transform:uppercase;letter-spacing:.1em;text-decoration:none}
.link-arrow::after{content:" →"}

/* header */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(14,12,10,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--seam)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:8px}
.brand img{height:48px;width:auto}
.menu{display:flex;gap:4px;align-items:center}
.menu a.txt{color:var(--dust);text-decoration:none;font:600 1rem var(--f-head);text-transform:uppercase;letter-spacing:.08em;padding:10px 12px;border-radius:4px}
.menu a.txt:hover{color:var(--gold)}
.menu a.txt[aria-current="page"]{color:var(--gold);box-shadow:inset 0 -2px 0 var(--gold)}
.menu .btn{margin-left:10px}
.burger{display:none;background:none;border:1px solid var(--seam);border-radius:4px;color:var(--dust);padding:10px 12px;font:700 .95rem var(--f-head);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
@media (max-width:980px){
  .burger{display:inline-flex}
  .menu{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;background:var(--pit);border-bottom:1px solid var(--seam);padding:10px 20px 18px}
  .menu.open{display:flex}
  .menu a.txt{padding:14px 4px;border-bottom:1px solid var(--seam);font-size:1.15rem}
  .menu a.txt[aria-current="page"]{box-shadow:none}
  .menu .btn{margin:14px 0 0}
}

/* home hero */
.vhero{position:relative;overflow:hidden;min-height:min(86vh,820px);display:flex;align-items:flex-end;background:var(--pit)}
.vhero video,.vhero .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vhero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,12,10,.35) 0%,rgba(14,12,10,.15) 35%,rgba(14,12,10,.85) 78%,var(--pit) 100%),linear-gradient(90deg,rgba(14,12,10,.7),transparent 70%)}
.vhero .wrap{position:relative;z-index:1;width:100%;padding-block:120px 64px}
.vhero .logo{width:min(220px,48%);margin-bottom:18px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.6))}
.vhero h1{font-size:clamp(2.9rem,8vw,6rem);font-weight:700;max-width:13ch;text-shadow:0 4px 30px rgba(0,0,0,.5)}
.vhero h1 em{font-style:normal;color:var(--gold)}
.vhero p{font-size:1.18rem;max-width:48ch;margin:18px 0 28px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.phone-inline{font:700 1.6rem/1 var(--f-head);letter-spacing:.04em;margin-left:8px}
.phone-inline small{display:block;font-size:.75rem;letter-spacing:.2em;color:var(--clay);margin-bottom:4px}

.vtoggle{position:absolute;right:20px;bottom:20px;z-index:2;background:rgba(14,12,10,.7);color:var(--dust);border:1px solid rgba(239,230,214,.35);border-radius:999px;padding:9px 16px;font:700 .85rem var(--f-head);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(4px)}
.vtoggle:hover{border-color:var(--gold);color:var(--gold)}
@media (max-width:640px){.vtoggle{top:14px;bottom:auto;right:14px}}

/* Globe Life hero */
.ghero{position:relative;overflow:hidden;padding-block:48px 64px;background:radial-gradient(ellipse at 75% 40%,rgba(227,167,47,.14),transparent 60%),var(--pit)}
.ghero .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;align-items:center}
.ghero .logo{width:min(200px,46%);margin-bottom:14px}
.ghero h1{font-size:clamp(2.8rem,6.6vw,5.4rem);font-weight:700;max-width:12ch}
.ghero h1 em{font-style:normal;color:var(--gold)}
.ghero p{font-size:1.15rem;max-width:46ch;margin:18px 0 28px;color:var(--dust)}
.ghero-photo{margin:0;position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--seam);box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 6px rgba(227,167,47,.12)}
.ghero-photo img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:40% 60%}
.ghero-photo figcaption{position:absolute;left:16px;bottom:16px;background:rgba(14,12,10,.88);border-left:4px solid var(--gold);border-radius:4px;padding:10px 14px}
.ghero-photo figcaption b{display:block;font:700 1.25rem/1.1 var(--f-head);text-transform:uppercase;letter-spacing:.04em}
.ghero-photo figcaption span{font-size:.88rem;color:var(--clay)}
@media (max-width:900px){.ghero .wrap{grid-template-columns:1fr;gap:28px}.ghero-photo{order:-1}.ghero-photo img{aspect-ratio:1/1;object-position:35% 55%}.ghero-photo figcaption{left:10px;bottom:10px;padding:7px 10px}.ghero-photo figcaption b{font-size:1rem}.ghero-photo figcaption span{font-size:.78rem}.ghero{padding-block:20px 48px}.ghero .logo{display:none}}
.vband{min-height:min(64vh,620px);align-items:center}
.vband .wrap{padding-block:80px}
.vband h2{font-size:clamp(2.2rem,5.5vw,4rem);max-width:16ch;text-shadow:0 4px 30px rgba(0,0,0,.5)}
.vband p{font-size:1.1rem;max-width:48ch;margin:16px 0 24px}
.vband::after{background:linear-gradient(90deg,rgba(14,12,10,.85) 10%,rgba(14,12,10,.35) 70%,rgba(14,12,10,.25))}

/* stats */
.stats{background:var(--gold);color:var(--gold-ink)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding-block:28px}
.stat b{display:block;font:400 clamp(2.2rem,5vw,3.2rem)/1 var(--f-brand);font-variant-numeric:tabular-nums}
.stat span{font:700 .95rem/1.2 var(--f-head);letter-spacing:.1em;text-transform:uppercase}
@media (max-width:760px){.stats .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* page hero */
.phero{position:relative;overflow:hidden;padding-block:110px 56px;background:var(--pit)}
.phero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,12,10,.2),var(--pit) 95%),linear-gradient(90deg,rgba(14,12,10,.8),transparent)}
.phero .wrap{position:relative;z-index:1}
.phero h1{font-size:clamp(2.6rem,7vw,4.8rem);font-weight:700}
.phero p{font-size:1.12rem;max-width:56ch;margin:14px 0 0;color:var(--dust)}

/* tiles */
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:36px}
.tile{position:relative;display:block;border-radius:8px;overflow:hidden;min-height:300px;text-decoration:none;color:var(--dust);border:1px solid var(--seam);background:var(--slab)}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(14,12,10,.92))}
.tile:hover img{transform:scale(1.06)}
.tile .t{position:absolute;left:20px;right:20px;bottom:18px;z-index:1}
.tile h3{font-size:1.75rem}
.tile p{margin:6px 0 0;color:var(--clay);font-size:.95rem}
.tile .go{display:inline-block;margin-top:10px;font:700 .85rem var(--f-head);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
@media (max-width:900px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.tiles{grid-template-columns:1fr}.tile{min-height:240px}}

/* full-bleed band */
.band-photo{position:relative;overflow:hidden;padding-block:130px;background:var(--pit)}
.band-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,12,10,.92) 15%,rgba(14,12,10,.45) 65%,rgba(14,12,10,.2))}
.band-photo .wrap{position:relative;z-index:1}
.band-photo blockquote{margin:0;font:700 clamp(2rem,5vw,3.4rem)/1.05 var(--f-head);text-transform:uppercase;max-width:18ch}
.band-photo blockquote em{font-style:normal;color:var(--gold)}
.band-photo p{color:var(--dust);max-width:52ch;margin:18px 0 26px}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px}
.pillar{border-top:3px solid var(--gold);padding-top:18px}
.pillar h3{font-size:1.55rem;margin-bottom:8px}
.pillar p{margin:0;color:var(--clay)}
@media (max-width:760px){.pillars{grid-template-columns:1fr}}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px;counter-reset:s}
.step{border-top:3px solid var(--gold);padding-top:16px}
.step::before{counter-increment:s;content:counter(s);font:400 2.4rem/1 var(--f-brand);color:var(--gold)}
.step h3{font-size:1.45rem;margin:10px 0 6px}
.step p{margin:0;color:var(--clay)}
@media (max-width:760px){.steps{grid-template-columns:1fr}}

/* catalog */
.jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.jump a{font:700 1rem/1 var(--f-head);text-transform:uppercase;letter-spacing:.08em;padding:12px 16px;border-radius:4px;border:1px solid var(--seam);background:var(--slab);color:var(--dust);text-decoration:none}
.jump a:hover{background:var(--gold);color:var(--gold-ink);border-color:var(--gold)}
.panel-mats{padding-top:64px;scroll-margin-top:70px}
.sec-h{margin-bottom:4px}
.panel-mats .lede{margin-bottom:24px}
.mats{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.mat{background:var(--slab);border:1px solid var(--seam);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.mat img{width:100%;aspect-ratio:4/3;object-fit:cover}
.mat .body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:5px;flex:1}
.mat h3{font-size:1.35rem;font-weight:700}
.mat p{margin:0;color:var(--clay);font-size:.95rem;flex:1}
.use{font:600 .76rem/1.3 var(--f-head);letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.sw{margin:0;background:var(--slab);border:1px solid var(--seam);border-radius:6px;overflow:hidden}
.sw img{width:100%;aspect-ratio:1;object-fit:cover}
.sw figcaption{padding:10px 12px;font:600 1rem/1.2 var(--f-head);text-transform:uppercase;letter-spacing:.05em}
.sw figcaption span{display:block;font:500 .82rem/1.35 var(--f-body);text-transform:none;letter-spacing:0;color:var(--clay);margin-top:2px}
.note{margin-top:18px;color:var(--clay);font-size:.93rem}
.also{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:22px}
.also b{font:600 .9rem var(--f-head);letter-spacing:.14em;text-transform:uppercase;color:var(--clay);margin-right:4px}
.chip{border:1px solid var(--seam);background:var(--slab);border-radius:999px;padding:7px 14px;font:600 .98rem var(--f-head);letter-spacing:.06em;text-transform:uppercase}

/* services */
.svc-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:40px;align-items:start;margin-top:36px}
.svc-list{display:grid;gap:14px}
.svc{background:var(--slab);border:1px solid var(--seam);border-radius:8px;padding:20px 22px}
.svc h3{font-size:1.5rem}
.svc p{margin:6px 0 0;color:var(--clay)}
.svc ul{margin:10px 0 0;padding-left:18px;color:var(--dust)}
.promo video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:8px;border:1px solid var(--seam);background:var(--slab)}
.promo figcaption{margin-top:8px;color:var(--clay);font-size:.9rem}
@media (max-width:860px){.svc-split{grid-template-columns:1fr}.promo{max-width:380px}}
.photo-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:36px}
.photo-row img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;border:1px solid var(--seam)}
@media (max-width:640px){.photo-row{grid-template-columns:1fr}}

/* projects */
.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:240px;gap:14px;margin-top:36px}
.projects figure{margin:0;position:relative;border-radius:6px;overflow:hidden;border:1px solid var(--seam)}
.projects img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.projects figure:hover img{transform:scale(1.05)}
.projects .tall{grid-row:span 2}
.projects .wide{grid-column:span 2}
.projects figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 12px;background:linear-gradient(transparent,rgba(14,12,10,.92));font:600 1.05rem/1.25 var(--f-head);text-transform:uppercase;letter-spacing:.05em}
.projects figcaption span{display:block;font:500 .88rem/1.35 var(--f-body);text-transform:none;letter-spacing:0;color:var(--clay)}
@media (max-width:820px){.projects{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:200px}}
@media (max-width:480px){.projects{grid-template-columns:1fr;grid-auto-rows:230px}.projects .wide{grid-column:auto}.projects .tall{grid-row:auto}}
.haulers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px}
.haulers figure{margin:0;position:relative;border-radius:6px;overflow:hidden;border:1px solid var(--seam)}
.haulers img{width:100%;aspect-ratio:4/3;object-fit:cover}
.haulers figcaption{position:absolute;left:10px;bottom:10px;background:rgba(14,12,10,.85);border:1px solid var(--seam);border-radius:4px;padding:5px 9px;font:600 .82rem var(--f-head);letter-spacing:.1em;text-transform:uppercase}
@media (max-width:900px){.haulers{grid-template-columns:repeat(2,minmax(0,1fr))}}
.fleet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px}
.rig{background:var(--pit);border:1px solid var(--seam);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.alt .rig{background:var(--pit)}
.rig img{width:100%;aspect-ratio:3/2;object-fit:cover}
.rig .body{padding:16px 18px 18px}
.rig h3{font-size:1.4rem}
.rig p{margin:6px 0 0;color:var(--clay);font-size:.95rem}
.rig .cap{font:600 .8rem var(--f-head);letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
@media (max-width:820px){.fleet{grid-template-columns:1fr}}
.reels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:28px}
.reels video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:6px;background:var(--slab);border:1px solid var(--seam)}
@media (max-width:900px){.reels{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px){.reels{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* about */
.about{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.about .copy p{font-size:1.1rem;margin:0 0 18px;max-width:60ch}
.about .copy p:first-of-type{font:500 1.35rem/1.45 var(--f-body);color:var(--dust)}
.about .copy p+p{color:var(--clay)}
.about figure{margin:0;border-radius:8px;overflow:hidden;border:1px solid var(--seam)}
.about figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media (max-width:860px){.about{grid-template-columns:1fr}.about figure img{aspect-ratio:4/3}}

/* quote */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin-top:36px;align-items:start}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.panel{background:var(--slab);border:1px solid var(--seam);border-radius:8px;padding:24px;scroll-margin-top:80px}
.panel h3{font-size:1.6rem;margin-bottom:4px}
.panel .sub{color:var(--clay);margin:0 0 18px;font-size:.95rem}
.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.full{grid-column:1/-1}
@media (max-width:480px){.fields,.fields.two{grid-template-columns:1fr 1fr}}
label{display:flex;flex-direction:column;gap:6px;font:600 .8rem/1 var(--f-head);letter-spacing:.12em;text-transform:uppercase;color:var(--clay);min-width:0}
input,select,textarea{font:500 1rem var(--f-body);color:var(--dust);background:var(--pit);border:1px solid var(--seam);border-radius:4px;padding:12px;width:100%;min-width:0}
input:focus,select:focus,textarea:focus{border-color:var(--gold);outline:none}
textarea{min-height:96px;resize:vertical}
.result{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.result div{background:var(--pit);border:1px solid var(--seam);border-radius:6px;padding:14px 8px;text-align:center}
.result b{display:block;font:700 2rem/1 var(--f-head);color:var(--gold);font-variant-numeric:tabular-nums}
.result span{font:600 .75rem/1.3 var(--f-head);letter-spacing:.12em;text-transform:uppercase;color:var(--clay)}
.calc-note{color:var(--clay);font-size:.88rem;margin:14px 0 0}
.form-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:16px}
.status{font-size:.95rem;margin:0}
.status.ok{color:var(--gold)}.status.err{color:var(--tail)}
.hp{position:absolute;left:-9999px}
.contact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}
.cc{background:var(--slab);border:1px solid var(--seam);border-radius:8px;padding:20px}
.cc small{display:block;font:600 .8rem var(--f-head);letter-spacing:.16em;text-transform:uppercase;color:var(--clay);margin-bottom:6px}
.cc b{font:700 1.5rem/1.15 var(--f-head);letter-spacing:.03em;word-break:break-word}
.cc a{color:var(--dust);text-decoration:none}
@media (max-width:760px){.contact-cards{grid-template-columns:1fr}}

/* service area */
.counties{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:32px}
.county{background:var(--slab);border:1px solid var(--seam);border-radius:8px;padding:18px 20px;scroll-margin-top:80px}
.county h3{font-size:1.4rem;color:var(--gold)}
.county p{margin:8px 0 0;color:var(--dust);font-size:.97rem;line-height:1.55}
a.chip{color:var(--dust);text-decoration:none}
a.chip:hover{border-color:var(--gold);color:var(--gold)}

/* cta band */
.band{background:var(--gold);color:var(--gold-ink)}
.band .wrap{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;padding-block:40px}
.band h2{font-size:clamp(1.8rem,4.5vw,2.7rem)}
.band p{margin:6px 0 0;font-weight:600}
.band .btn{background:var(--gold-ink);color:var(--gold);border-color:var(--gold-ink)}

/* footer */
footer{padding-block:48px 36px;color:var(--clay);font-size:.95rem;border-top:1px solid var(--seam)}
footer .wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px}
footer img{height:64px;width:auto;margin-bottom:12px}
footer h4{font:700 .9rem var(--f-head);letter-spacing:.16em;text-transform:uppercase;color:var(--dust);margin:0 0 10px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
footer a{color:var(--clay);text-decoration:none}
footer a:hover{color:var(--gold)}
footer .legal{grid-column:1/-1;border-top:1px solid var(--seam);padding-top:18px;font-size:.85rem}
@media (max-width:760px){footer .wrap{grid-template-columns:1fr}}

/* sticky mobile call bar */
.callbar{display:none}
@media (max-width:760px){
  .callbar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--pit);border-top:1px solid var(--seam);padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));gap:8px}
  .callbar a{display:flex;align-items:center;justify-content:center;padding:13px 6px;border-radius:4px;font:700 1rem var(--f-head);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:1px solid var(--seam);color:var(--dust);background:var(--slab)}
  .callbar a.main{background:var(--gold);color:var(--gold-ink);border-color:var(--gold)}
  body{padding-bottom:72px}
}

/* scroll reveal: only below-the-fold elements get hidden, and only once JS confirms it can reveal them */
.reveal.pre{opacity:0;transform:translateY(28px)}
.reveal{transition:opacity .7s ease,transform .7s ease}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.reveal.pre{opacity:1;transform:none}.tile:hover img,.projects figure:hover img{transform:none}}
