/* Asset Shield Insurance, rebuild 2026-10-27 (skill client-site-build, section "Added 2026-10-27").
   Client colors: black #000000, steel #A6A6A6, white. Designer accent: safety orange #F26A1B (the hard hats). Light tints for backgrounds: tan, light steel.
   Type: Barlow Condensed (headlines) + Barlow (text). Body max width 1370px. Sections are separate bands with 10px between them. Pictures 12px radius. Header sticky. */
:root{--black:#000;--ink:#0b0d10;--graphite:#14171b;--panel:#1b1f24;--steel:#a6a6a6;--steel-2:#d3d6da;--line:#2b3138;--white:#fff;--orange:#f26a1b;--orange-d:#d4570f;
 --mist:#eef0f2;--tan:#f3e9d8;--tan-card:#f9f4ea;--tan-line:#e6dac3;--text:#16191d;--muted:#4d555e;--page:#d5dade;--r:12px;
 --f-head:'Barlow Condensed','Arial Narrow',Arial,sans-serif;--f-body:'Barlow',Arial,sans-serif;--wrap:1370px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;font-family:var(--f-body);font-size:1.125rem;line-height:1.65;color:var(--text);background:var(--page);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--f-head);font-weight:700;line-height:1.05;margin:0 0 .5em;letter-spacing:.005em}
h1{font-size:clamp(2.7rem,1.4rem + 5vw,5rem);font-weight:800}
h2{font-size:clamp(2rem,1.3rem + 2.4vw,3.2rem)}
h3{font-size:1.55rem}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:8px;background:var(--orange);color:#000;padding:10px 16px;z-index:100;font-weight:700}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}

/* ---- header: sticky on desktop and mobile ---- */
.site-head{position:sticky;top:0;z-index:60;background:var(--black);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--white)}
.brand img{width:44px;height:auto}
.brand span{font-family:var(--f-head);font-weight:700;font-size:1.55rem;letter-spacing:.06em;line-height:1;text-transform:uppercase;color:var(--steel-2)}
.nav{display:flex;align-items:center;gap:6px}
.nav a{font-family:var(--f-head);font-weight:600;font-size:1.2rem;letter-spacing:.04em;color:var(--steel-2);text-decoration:none;padding:10px 14px;border-bottom:2px solid transparent;display:block}
.nav a:hover,.nav a[aria-current=page]{color:var(--white);border-bottom-color:var(--orange)}
.nav a.nav-cta{background:var(--orange);color:#000;border-radius:3px;border:0;margin-left:10px;padding:10px 18px;font-weight:700}
.nav a.nav-cta:hover{background:#ff8a3d;color:#000}
.has-sub{position:relative}
.sub{visibility:hidden;opacity:0;pointer-events:none;position:absolute;left:0;top:100%;min-width:290px;background:var(--black);border:1px solid var(--line);border-top:2px solid var(--orange);padding:8px 0;border-radius:0 0 var(--r) var(--r);
 box-shadow:0 18px 34px rgba(0,0,0,.5);clip-path:inset(0 -40px 100% -40px);transition:clip-path .5s cubic-bezier(.22,.8,.24,1),opacity .28s ease,visibility 0s linear .5s}
.sub a{padding:11px 20px;border-bottom:0;font-size:1.15rem;opacity:0;transform:translateY(-8px);transition:opacity .3s ease,transform .35s ease,color .15s,border-color .15s}
.has-sub:hover .sub,.has-sub:focus-within .sub{visibility:visible;opacity:1;pointer-events:auto;clip-path:inset(0 -40px -50px -40px);transition:clip-path .5s cubic-bezier(.22,.8,.24,1),opacity .2s ease,visibility 0s}
.has-sub:hover .sub a,.has-sub:focus-within .sub a{opacity:1;transform:none}
.has-sub:hover .sub a:nth-child(1),.has-sub:focus-within .sub a:nth-child(1){transition-delay:.06s}
.has-sub:hover .sub a:nth-child(2),.has-sub:focus-within .sub a:nth-child(2){transition-delay:.11s}
.has-sub:hover .sub a:nth-child(3),.has-sub:focus-within .sub a:nth-child(3){transition-delay:.16s}
.has-sub:hover .sub a:nth-child(4),.has-sub:focus-within .sub a:nth-child(4){transition-delay:.21s}
.has-sub:hover .sub a:nth-child(5),.has-sub:focus-within .sub a:nth-child(5){transition-delay:.26s}
.has-sub:hover .sub a:nth-child(6),.has-sub:focus-within .sub a:nth-child(6){transition-delay:.31s}
.has-sub:hover .sub a:nth-child(n+7),.has-sub:focus-within .sub a:nth-child(n+7){transition-delay:.36s}
.sub.mega{display:grid;grid-template-columns:1fr 1fr;gap:0 8px;width:min(660px,90vw);padding:14px 10px 10px;left:50%;margin-left:-330px}
.subcol{display:flex;flex-direction:column}
.subcol .subhead{font-family:var(--f-head);font-weight:700;font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase;color:var(--orange);padding:6px 20px 8px;border-bottom:1px solid var(--line);margin-bottom:4px}
.sub.mega .subcol a{padding:8px 20px;font-size:1.1rem}
.sub.mega .suball{grid-column:1 / -1;margin-top:8px;border-top:1px solid var(--line);color:var(--white);font-weight:700;padding:12px 20px}
.sub a:hover{color:var(--white);background:#14171b}
.nav-toggle{display:none;background:none;border:2px solid var(--steel);color:var(--white);font:600 1.1rem var(--f-head);letter-spacing:.06em;padding:8px 14px;border-radius:3px;cursor:pointer}

/* ---- buttons ---- */
.btn{display:inline-block;font-family:var(--f-head);font-weight:700;font-size:1.3rem;letter-spacing:.05em;text-decoration:none;background:var(--orange);color:#000;padding:14px 28px;border-radius:3px;border:0;cursor:pointer;line-height:1.1}
.btn:hover{background:#ff8a3d}
.btn-sm{font-size:1.1rem;padding:10px 18px}
.btn-dark{background:var(--black);color:var(--white)}
.btn-dark:hover{background:#262b31}
.btnrow{margin:22px 0 0}

/* ---- sections: separate bands, 10px apart ---- */
main{display:flex;flex-direction:column;gap:10px;margin-bottom:0}
main>.hero+section,main>.hero+.cta-band{margin-top:-10px}
main>section:last-child{padding-bottom:clamp(26px,3vw,36px)}
main>section{padding:clamp(26px,3vw,36px) 0;margin:0}
.bg-white{background:var(--white)}
main>section.tight{padding-bottom:14px}
.bg-mist{background:var(--mist)}
.bg-tan{background:var(--tan)}
.bg-dark{background:var(--graphite);color:var(--white)}
.bg-dark p{color:var(--steel-2)}
.sec-head{max-width:52em;margin-bottom:26px}
.sec-head p{color:var(--muted);font-size:1.2rem;margin:0}
.bg-dark .sec-head p{color:var(--steel-2)}
.rule{display:block;width:90px;height:4px;background:var(--orange);margin:0 0 18px;border-radius:2px}
.note{font-size:.98rem;color:var(--muted);margin:18px 0 0}

/* ---- hero: every page, full-width photo, dark overlay, at least 570px tall on desktop ---- */
main>.hero{padding:0}
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--black);color:var(--white);min-height:max(570px,40vw);display:flex;align-items:flex-end}
.hero-bg{position:absolute;inset:0;z-index:-3}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.62) 42%,rgba(0,0,0,.22) 75%,rgba(0,0,0,.34) 100%)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--orange) 0,var(--orange) 110px,var(--steel) 110px,#555 100%)}
.hero>.wrap{width:100%}
.hero-copy{max-width:780px;padding:90px 0 clamp(44px,5.5vw,76px)}
.hero h1{margin-bottom:.3em;text-shadow:0 2px 18px rgba(0,0,0,.45);animation:rise .9s cubic-bezier(.2,.7,.2,1) .15s both}
.hero .lead{font-size:1.3rem;line-height:1.55;color:var(--steel-2);max-width:36em;animation:rise .9s cubic-bezier(.2,.7,.2,1) .35s both}
.hero .actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:26px;animation:rise .9s cubic-bezier(.2,.7,.2,1) .55s both}
.hero .call,.cta-band .call{font-family:var(--f-head);font-weight:600;font-size:1.45rem;letter-spacing:.04em;color:var(--white);text-decoration:none;border-bottom:2px solid var(--steel)}
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
/* home billboard: the one bold element (kept from the first build) */
.hero.home{align-items:center;min-height:max(620px,46vw)}
.hero.home::before{background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.88) 34%,rgba(0,0,0,.45) 58%,rgba(0,0,0,.12) 80%,rgba(0,0,0,.25) 100%)}
.hero.home .hero-bg img{object-position:70% 50%}
.hero.home .hero-copy{max-width:640px;padding:70px 0}
.hero-shield{position:absolute;right:max(2vw,calc((100vw - var(--wrap))/2 - 40px));top:50%;transform:translateY(-50%);width:min(40vw,520px);z-index:-1;opacity:.95;pointer-events:none}
.hero-shield path{fill:none;stroke:url(#steel);stroke-width:3;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2.6s cubic-bezier(.5,.1,.2,1) .35s forwards}
.hero-shield path.p2{animation-delay:.9s;stroke-width:2}
.hero-shield path.p3{animation-delay:1.4s;stroke-width:2}
@keyframes draw{to{stroke-dashoffset:0}}

/* ---- pictures: 12px rounded ---- */
.pic{position:relative;border-radius:var(--r);overflow:hidden;background:var(--panel)}
.pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* ---- cards: very light tan on the white cards, picture on top ---- */
.cards{display:grid;gap:18px;margin:0;padding:0;list-style:none}
.cards.c3{grid-template-columns:repeat(3,1fr)}
.cards.c2{grid-template-columns:repeat(2,1fr)}
.cards.c4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--tan-card);border:1px solid var(--tan-line);border-radius:var(--r);display:flex;flex-direction:column;overflow:hidden}
.card.cov{border-top:4px solid var(--black)}
.card .pic{aspect-ratio:4/3;margin:12px 12px 0}
.card .cbody{padding:18px 22px 24px;flex:1;display:flex;flex-direction:column}
.card .cbody>p{flex:1}
.card .cbtn{padding-top:18px}
.card .cbtn .btn{display:inline-flex;align-items:center;gap:10px}
.card .cbtn .btn::after{content:"\2192";font-size:1.15em;transition:transform .25s ease}
.card .cbtn .btn:hover::after{transform:translateX(5px)}
.card .cbtn .btn-dark{border-bottom:3px solid var(--orange)}
.card .cbtn .btn-dark:hover{border-bottom-color:#ffb066;background:#262b31}
.card h3{margin-bottom:.3em}
.card h3 a{text-decoration:none;border-bottom:3px solid var(--orange);transition:border-color .25s ease,box-shadow .25s ease}
.card h3 a:hover,.card h3 a:focus-visible{border-bottom-color:#ffb066;box-shadow:0 3px 12px -2px rgba(255,160,70,.85)}
.svc h3 a{text-decoration:none;border-bottom:3px solid var(--orange);transition:border-color .25s ease,box-shadow .25s ease}
.svc h3 a:hover,.svc h3 a:focus-visible{border-bottom-color:#ffb066;box-shadow:0 3px 12px -2px rgba(255,160,70,.85)}
.svc .more{margin:8px 0 0}
.svc .more a{font-family:var(--f-head);font-weight:700;font-size:1.1rem;letter-spacing:.05em;text-decoration:none;border-bottom:2px solid var(--orange)}
.svc .more a:hover{border-bottom-color:#ffb066}
.card p{margin:0;color:var(--muted);font-size:1.08rem;line-height:1.55}
.card.dark{background:var(--panel);border-color:var(--line)}
.card.dark h3{color:var(--white)}
.card.dark p{color:var(--steel-2)}
.card.ind .cbody{display:flex;flex-direction:column}

/* ---- industry tiles (home): picture with the title and text on it ---- */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0;padding:0;list-style:none}
.tile{border-radius:var(--r);overflow:hidden;background:var(--panel)}
.tile a{position:relative;display:block;aspect-ratio:3/4;text-decoration:none;color:var(--white)}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.tile .tt{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;background:linear-gradient(180deg,rgba(0,0,0,0) 28%,rgba(0,0,0,.92) 100%)}
.tile h3{margin:0 0 .25em;font-size:1.7rem;border-bottom:3px solid var(--orange);padding-bottom:4px;align-self:flex-start;transition:border-color .25s ease,box-shadow .25s ease}
.tile a:hover h3,.tile a:focus-visible h3{border-bottom-color:#ffb066;box-shadow:0 3px 12px -2px rgba(255,160,70,.85)}
.tile p{margin:0;font-size:1rem;line-height:1.45;color:var(--steel-2)}
.tile:hover img{transform:scale(1.05)}

/* ---- split: text and picture, same height ---- */
.split{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,4vw,56px);align-items:stretch}
.split.rev{grid-template-columns:1fr 1.15fr}
.split.rev .pic{order:-1}
.split .pic{min-height:320px}
.split .pic img.portrait{object-position:50% 18%}
.split .txt p{color:var(--muted)}
.checks{list-style:none;margin:6px 0 14px;padding:0;display:grid;gap:9px}
.checks li{position:relative;padding-left:34px;font-weight:500}
.checks li::before{content:"";position:absolute;left:0;top:.3em;width:22px;height:22px;border-radius:50%;background:var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 12.5l3.5 3.5 7.5-8' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat}

/* ---- call to action: full-width skyline photo, light dark overlay, translucent panel (the band is transparent over the picture) ---- */
main>.cta-band{position:relative;isolation:isolate;overflow:hidden;color:var(--white);padding:clamp(56px,7vw,96px) 0;min-height:max(460px,32vw);display:flex;align-items:center}
.cta-band>.wrap{width:100%}
.cta-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:-2}
.cta-band::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.38) 55%,rgba(0,0,0,.28) 100%)}
.cta-band::after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--orange) 0,var(--orange) 110px,var(--steel) 110px,#555 100%)}
.cta-panel{max-width:760px;background:rgba(5,7,9,.58);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.16);border-radius:var(--r);padding:clamp(24px,3.4vw,44px)}
.cta-band h2{margin:0 0 .25em;font-size:clamp(2.2rem,1.4rem + 3vw,3.6rem)}
.cta-band p{margin:0 0 1em;color:var(--steel-2);font-size:1.3rem}
.cta-steps{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.cta-steps li{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 16px 8px 8px;font-weight:600;font-size:1.02rem}
.cta-steps b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--orange);color:#000;font-family:var(--f-head);font-size:1.1rem}
.cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}

/* ---- services ---- */
.svc-group h2{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.svc-group h2::after{content:"";flex:1;height:1px;background:#cfd4d9}
.svc-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:0;padding:0;list-style:none}
.svc{display:grid;grid-template-columns:150px 1fr auto;gap:20px;align-items:center;background:var(--tan-card);border:1px solid var(--tan-line);border-left:4px solid var(--black);padding:12px 20px 12px 12px;border-radius:var(--r)}
.svc .th{position:relative;width:150px;height:112px;border-radius:var(--r);overflow:hidden;background:var(--panel)}
.svc .th img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.svc h3{font-size:1.45rem;margin:0 0 .15em}
.svc p{margin:0;color:var(--muted);font-size:1.02rem;line-height:1.5}

/* ---- forms and contact ---- */
.form-card{background:var(--tan-card);border:1px solid var(--tan-line);border-top:4px solid var(--black);padding:clamp(22px,3vw,38px);border-radius:var(--r)}
.form-card h2{font-size:clamp(1.9rem,1.3rem + 2vw,2.6rem)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
label.l{display:block;font-weight:600;margin:16px 0 6px;color:var(--text)}
.opt{font-weight:400;color:var(--muted)}
input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;font:inherit;font-size:1.05rem;padding:13px 14px;border:2px solid #7d858d;border-radius:8px;background:#fff;color:var(--text)}
textarea{min-height:130px;resize:vertical}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:1px;border-color:#000}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.tsbox{margin:18px 0 6px}
.tsframe{border:0;width:320px;max-width:100%;height:72px;display:block}
.tshint{font-size:.98rem;color:var(--muted);margin:6px 0 0}
.status{margin:14px 0 0;padding:12px 16px;border-radius:8px;font-weight:600}
.status.ok{background:#e6f4ea;color:#0e4f2a;border:1px solid #9fd0ad}
.status.err{background:#fdecea;color:#7a0b0b;border:1px solid #e7a6a1}
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(24px,4vw,52px);align-items:stretch}
.contact-card{background:var(--black);color:var(--white);padding:clamp(22px,3vw,34px);border-radius:var(--r);display:flex;flex-direction:column}
.contact-card .pic{aspect-ratio:16/9;margin-bottom:22px;flex:none}
.contact-card h2{font-size:2rem}
.contact-card p{color:var(--steel-2)}
.contact-card a{color:var(--white)}
.contact-card .checks{margin-top:4px}
.contact-card .checks li{color:var(--white)}
.contact-card .big{font-family:var(--f-head);font-weight:700;font-size:2rem;letter-spacing:.03em;text-decoration:none;display:block;margin:4px 0 10px}

/* ---- footer ---- */
.site-foot{background:var(--black);color:var(--steel);padding:46px 0 30px;border-top:1px solid var(--line);font-size:1rem}
.foot-grid{display:grid;grid-template-columns:1.3fr .8fr .9fr 1.2fr 1.2fr .9fr;gap:26px}
.foot-grid h2{font-family:var(--f-head);font-size:1.25rem;letter-spacing:.08em;color:var(--white);margin:0 0 .6em;text-transform:uppercase}
.foot-grid ul{list-style:none;margin:0;padding:0}
.foot-grid li{margin:0 0 .35em}
.foot-grid a{color:var(--steel-2);text-decoration:none}
.foot-grid a:hover{color:var(--white);text-decoration:underline}
.foot-brand img{width:120px;margin-bottom:12px;border-radius:var(--r)}
.fine{margin-top:34px;padding-top:20px;border-top:1px solid var(--line);font-size:.92rem;color:#8b9299}

/* ---- responsive ---- */
@media (max-width:1100px){
 .cards.c3,.cards.c4{grid-template-columns:repeat(2,1fr)}
 .tiles{grid-template-columns:repeat(2,1fr)}
 .svc-list{grid-template-columns:1fr}
 .foot-grid{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:900px){
 .split,.split.rev,.contact-grid{grid-template-columns:1fr}
 .split .pic,.split.rev .pic{min-height:280px;order:-1}
}
@media (max-width:860px){
 .nav-toggle{display:inline-block}
 .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--black);flex-direction:column;align-items:stretch;padding:10px 20px 20px;border-bottom:1px solid var(--line);gap:0;max-height:calc(100vh - 72px);overflow:auto}
 .nav.open{display:flex}
 .nav a{padding:14px 4px;border-bottom:1px solid var(--line);font-size:1.3rem}
 .nav a.nav-cta{margin:14px 0 0;text-align:center;border-radius:3px}
 .has-sub .sub,.has-sub .sub.mega{visibility:visible;opacity:1;pointer-events:auto;clip-path:none;display:block;position:static;border:0;box-shadow:none;padding:0 0 0 14px;min-width:0;width:auto;margin-left:0;background:transparent}
 .has-sub .sub a,.has-sub .sub.mega .subcol a{opacity:1;transform:none;font-size:1.1rem;padding:10px 4px;color:var(--steel)}
 .subcol .subhead{padding:10px 4px 6px}
 .sub.mega .suball{padding:12px 4px;margin-top:4px}
 .hero,.hero.home{min-height:480px}
 .hero.home{min-height:620px;align-items:flex-end}
 .hero::before{background:linear-gradient(180deg,rgba(0,0,0,.3) 0%,rgba(0,0,0,.78) 48%,rgba(0,0,0,.95) 100%)}
 .hero.home::before{background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.78) 45%,rgba(0,0,0,.97) 100%)}
 .hero.home .hero-bg img{object-position:75% 30%}
 .hero-shield{width:78vw;right:-14vw;top:34%;opacity:.6}
 .hero-copy,.hero.home .hero-copy{padding:40px 0 44px}
}
@media (max-width:560px){
 .tiles{grid-template-columns:1fr}
 .tile a{aspect-ratio:4/3}
}
@media (max-width:620px){
 body{font-size:1.06rem}
 .cards.c3,.cards.c4,.cards.c2,.grid2{grid-template-columns:1fr}
 .svc{grid-template-columns:96px 1fr;grid-template-areas:"th t" "b b"}
 .svc .th{width:96px;height:80px;grid-area:th}
 .svc .t{grid-area:t}
 .svc .btn{grid-area:b;text-align:center}
 .foot-grid{grid-template-columns:1fr}
 .brand span{font-size:1.25rem}
}
/* ---- slide-in on scroll (only when JS has marked the page) ---- */
.js-reveal main>section.rv{overflow:hidden}
.js-reveal main>section.rv>.wrap{transform:translateX(100%);opacity:0;transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .7s ease}
.js-reveal main>section.rv.rv-in>.wrap{transform:none;opacity:1}
@media (prefers-reduced-motion:reduce){
 .js-reveal main>section.rv>.wrap{transform:none;opacity:1;transition:none}
 html{scroll-behavior:auto}
 .tile img{transition:none}
 .hero-shield path{animation:none;stroke-dashoffset:0}
 .hero h1,.hero .lead,.hero .actions{animation:none}
}
