:root{
  color-scheme:light;
  --char:#1C1D1F;--char-2:#141517;--char-3:#26282B;
  --bone:#F3EFE6;--white:#FBFAF7;
  --orange:#FF6A13;--orange-ink:#C24A05;
  --steel:#6E757C;--steel-lt:#A7ADB2;--ink-2:#4A4F55;
  --line-d:#35383C;--line-l:#DDD6C8;
  --display:"Anton","Impact","Arial Narrow",sans-serif;
  --cond:"Barlow Condensed","Arial Narrow",sans-serif;
  --body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--white);color:var(--char);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
p{margin:0}
h1,h2,h3,h4{margin:0;font-weight:400;text-wrap:balance}
.wrap{max-width:1180px;margin:0 auto;padding-inline:24px}
.disp{font-family:var(--display);text-transform:uppercase;letter-spacing:.01em;line-height:1.02}
.hl{color:var(--orange)}
.eyebrow{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:15px}
.skip{position:absolute;left:-9999px;top:0;background:var(--orange);color:var(--char);padding:10px 16px;z-index:100;font-family:var(--cond);font-weight:700}
.skip:focus{left:12px;top:12px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:2px}

.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--cond);font-weight:700;font-size:18px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:15px 28px;border:2px solid var(--orange);background:var(--orange);color:var(--char);cursor:pointer;transition:background .15s,color .15s}
.btn:hover{background:#ff8035}
.btn .arr{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--char);color:var(--orange);font-size:13px}
.btn-line{background:transparent;color:var(--bone);border-color:var(--bone)}
.btn-line:hover{background:var(--bone);color:var(--char)}
.btn-dark{background:var(--char);color:var(--bone);border-color:var(--char)}
.btn-dark:hover{background:#000}
.ctas{display:flex;gap:14px;flex-wrap:wrap}

/* top bar + nav */
.topbar{background:var(--char-2);color:var(--steel-lt);font-family:var(--cond);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:14px}
.topbar .wrap{display:flex;justify-content:flex-end;gap:28px;padding-block:9px;flex-wrap:wrap}
.topbar b{color:var(--bone);font-weight:600}
.topbar a{text-decoration:none}
header.site{position:sticky;top:0;z-index:40;background:var(--char);border-bottom:3px solid var(--orange)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:10px}
.brand img{height:64px;width:auto}
.nav nav{display:flex;align-items:center;gap:28px}
.nav nav a{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:16px;text-decoration:none;color:var(--bone)}
.nav nav a:not(.btn):hover,.nav nav a[aria-current=page]{color:var(--orange)}
.nav nav .btn{padding:11px 20px;font-size:16px;color:var(--char)}
.menu-btn{display:none;background:none;border:2px solid var(--bone);color:var(--bone);font-family:var(--cond);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:15px;padding:8px 14px;cursor:pointer}

/* page hero (inner pages) */
.phero{position:relative;color:var(--bone);background:var(--char) center 40%/cover no-repeat}
.phero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,21,23,.95) 0%,rgba(20,21,23,.84) 55%,rgba(20,21,23,.6) 100%)}
.phero .wrap{position:relative;padding-block:84px 88px}
.phero .eyebrow{color:var(--orange)}
.phero h1{margin-top:14px;font-size:clamp(44px,6.6vw,88px);max-width:14ch}
.phero p{margin-top:20px;font-size:19px;color:#D3D6D8;max-width:54ch}
.phero .ctas{margin-top:30px}
.phero.home .wrap{padding-block:120px 130px}
.phero.home h1{font-size:clamp(54px,8.4vw,112px);max-width:12ch}

/* cta strip */
.strip{background:var(--orange)}
.strip .wrap{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;padding-block:16px}
.strip p{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:20px;color:var(--char)}
.strip .btn{padding:10px 20px;font-size:16px}

/* generic sections */
.sec{padding-block:96px}
.sec-bone{background:var(--bone)}
.sec-dark{background:var(--char);color:var(--bone)}
.sec-head{text-align:center;max-width:760px;margin:0 auto 48px}
.sec-head h2{font-size:clamp(34px,4.6vw,56px)}
.sec-head p{margin-top:16px;color:var(--ink-2);font-size:18px}
.sec-dark .sec-head p{color:#C9CDD0}
.sec-head .eyebrow{color:var(--orange-ink);margin-bottom:12px}
.sec-dark .sec-head .eyebrow{color:var(--orange)}
.u{text-decoration:none;box-shadow:inset 0 -.22em 0 var(--orange)}

/* pillars */
.approach{position:relative;color:var(--bone);background:var(--char) url("img/hero-bg.jpg") center/cover no-repeat;border-bottom:4px solid var(--orange)}
.approach::before{content:"";position:absolute;inset:0;background:rgba(20,21,23,.88)}
.approach .wrap{position:relative;padding-block:100px}
.approach .sec-head p{color:#C9CDD0}
.pillars{display:grid;grid-template-columns:1fr 1fr}
.pillar{padding:36px 40px;display:flex;flex-direction:column;gap:10px}
.pillar:nth-child(odd){border-right:1px solid var(--orange)}
.pillar:nth-child(-n+2){border-bottom:1px solid var(--orange)}
.pillar:nth-child(even){text-align:right;align-items:flex-end}
.pillar h3{font-family:var(--cond);font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.04em;font-size:28px}
.pillar p{color:#C9CDD0;max-width:42ch}
.pillar a{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:15px;color:var(--orange);text-decoration:none}

/* trades row */
.trades{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--line-l);border:2px solid var(--char)}
.trades a{background:var(--white);padding:26px 24px;text-decoration:none;display:flex;flex-direction:column;gap:6px;transition:background .15s}
.trades a:hover{background:#FFF1E8}
.trades b{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:26px;line-height:1.05}
.trades span{color:var(--ink-2);font-size:15.5px}
.trades i{margin-top:auto;padding-top:8px;font-style:normal;font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:14px;color:var(--orange-ink)}
.trades-note{margin-top:18px;text-align:center;color:var(--ink-2);font-size:16px}

/* media */
.media-head{display:grid;grid-template-columns:1.3fr .7fr;gap:48px;align-items:end}
.media .eyebrow{color:var(--orange)}
.media h2{font-size:clamp(38px,5vw,64px)}
.media-head p{margin-top:18px;color:#C9CDD0;font-size:18px;max-width:52ch}
.shootday{border:2px solid var(--orange);padding:24px 26px}
.shootday h3{font-family:var(--cond);font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.06em;font-size:22px;color:var(--orange)}
.shootday ul{margin:12px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:16px;color:#E3E5E7}
.shootday b{font-family:var(--display);font-weight:400;color:var(--orange);font-size:20px;margin-right:6px;font-variant-numeric:tabular-nums}
.media-grid{margin-top:44px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:230px 230px;gap:10px}
.mt{position:relative;margin:0;overflow:hidden;background:var(--char-3)}
.mt.tall{grid-row:span 2}
.mt.wide{grid-column:span 2}
.mt img{width:100%;height:100%;object-fit:cover}
.mt figcaption{position:absolute;left:10px;bottom:10px;background:var(--char);color:var(--bone);font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:13px;padding:4px 10px}
.play{position:absolute;top:50%;left:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:rgba(255,106,19,.92)}
.play::after{content:"";position:absolute;left:22px;top:17px;border-left:16px solid var(--char);border-top:11px solid transparent;border-bottom:11px solid transparent}
.media-note{margin-top:14px;font-size:14px;color:var(--steel-lt)}

/* local */
.local-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
.local .eyebrow{color:var(--orange-ink)}
.local h2{font-size:clamp(38px,5vw,64px)}
.local-lead{margin-top:20px;color:var(--ink-2);font-size:18px;max-width:40ch}
.boxes{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--line-l);border:2px solid var(--char)}
.boxes > div{background:var(--white);padding:26px 26px 28px;display:flex;flex-direction:column;gap:8px}
.boxes h3{font-family:var(--cond);font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.04em;font-size:22px}
.boxes p{color:var(--ink-2);font-size:16px}
.area{margin-top:40px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.area ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.area li{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:15px;background:var(--char);color:var(--bone);padding:6px 14px}

/* tiers */
.tiers-bg{background:repeating-linear-gradient(135deg,transparent 0 46px,rgba(28,29,31,.045) 46px 48px)}
.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.tier{position:relative;background:var(--char);color:var(--bone);padding:56px 30px 32px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;border-top:4px solid var(--char)}
.tier.pop{border-top-color:var(--orange);transform:translateY(-10px)}
.tab{position:absolute;top:0;left:0;background:var(--orange);color:var(--char);font-family:var(--cond);font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.08em;font-size:15px;padding:6px 16px 6px 14px;clip-path:polygon(0 0,100% 0,88% 100%,0 100%)}
.tier h3{font-size:36px}
.tier .who{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:15px;color:var(--steel-lt)}
.tier .price{margin-top:12px;font-family:var(--display);font-size:64px;line-height:1;color:var(--orange);font-variant-numeric:tabular-nums}
.tier .per{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:14px;color:var(--orange)}
.tier .desc{font-size:15px;color:#C9CDD0;line-height:1.5;margin-top:6px;max-width:34ch}
.tier ul{margin:18px 0 0;padding:18px 0 0;border-top:1px solid var(--line-d);list-style:none;display:flex;flex-direction:column;gap:9px;font-size:15.5px;color:#D3D6D8;line-height:1.4;width:100%}
.tier li b{color:var(--orange);font-weight:600}
.tier .sp{flex:1;min-height:22px}
.tier .btn{margin-top:auto;align-self:center;padding:11px 20px;font-size:15px}
.compare-wrap{margin-top:56px}
.compare-details summary{list-style:none;cursor:pointer;margin:0 auto;display:flex;justify-content:center;align-items:center;gap:10px;width:max-content;max-width:100%;font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:17px;border:2px solid var(--char);padding:12px 22px;background:var(--white)}
.compare-details summary::-webkit-details-marker{display:none}
.compare-details summary::after{content:"+";font-size:22px;line-height:1;color:var(--orange-ink)}
.compare-details[open] summary::after{content:"–"}
.compare-details[open] summary{margin-bottom:22px}
.table-scroll{overflow-x:auto;border:2px solid var(--char)}
.compare{width:100%;min-width:620px;border-collapse:collapse;background:var(--white);font-size:15.5px}
.compare th,.compare td{padding:13px 16px;border-bottom:1px solid var(--line-l);text-align:center}
.compare tbody th{text-align:left;font-weight:600;color:var(--char)}
.compare thead th{background:var(--char);color:var(--bone);font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:22px;letter-spacing:.02em;line-height:1.1}
.compare thead th small{display:block;font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:.1em;color:var(--orange);margin-top:4px}
.compare thead th.pop-col{background:var(--orange);color:var(--char)}
.compare thead th.pop-col small{color:var(--char)}
.compare td{color:var(--ink-2)}
.compare td.pop-col{background:#FFF1E8}
.compare tbody tr:last-child th,.compare tbody tr:last-child td{border-bottom:0}
.addon{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line-l);border:2px solid var(--char)}
.addon > div{background:var(--white);padding:24px 28px;display:flex;flex-direction:column;gap:6px}
.addon h4{font-family:var(--display);text-transform:uppercase;font-size:26px}
.addon h4 span{color:var(--orange-ink)}
.addon p{color:var(--ink-2);font-size:16px}
.fine-print{margin-top:22px;text-align:center;color:var(--ink-2);font-size:15px}

/* reviews */
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rev{margin:0;background:var(--char);color:var(--bone);padding:34px 28px 28px;display:flex;flex-direction:column;gap:16px;border-bottom:4px solid var(--orange)}
.stars{color:var(--orange);font-size:20px;letter-spacing:3px}
.rev blockquote{margin:0;font-size:17px;line-height:1.55;color:#E3E5E7}
.rev figcaption{margin-top:auto;display:flex;flex-direction:column;gap:2px}
.rev figcaption b{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:17px}
.rev figcaption span{font-size:14px;color:var(--steel-lt)}

/* showcase card */
.card{background:var(--char);color:var(--bone);border:4px solid var(--orange);display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center;padding:52px 48px}
.card blockquote{margin:0;font-family:var(--cond);font-weight:700;font-style:italic;text-transform:uppercase;font-size:clamp(28px,3vw,38px);line-height:1.12;letter-spacing:.01em}
.card .meta{margin-top:22px;display:flex;flex-direction:column;gap:4px}
.card .meta b{font-family:var(--cond);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);font-size:17px}
.card .meta span{color:var(--steel-lt);font-size:15px}
.card p.body{margin-top:18px;color:#C9CDD0;font-size:16.5px}
.card ul{margin:22px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.card li{font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:14px;border:1px solid var(--line-d);padding:4px 10px}
.card .more{display:inline-block;margin-top:24px;font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:16px;color:var(--orange);text-decoration:none;border-bottom:2px solid var(--orange)}
.devices{position:relative;margin:0;padding-bottom:40px}
.browser{background:var(--char-3);border:1px solid #3d4045;border-radius:10px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.chrome{display:flex;align-items:center;gap:7px;padding:10px 14px;background:#2f3236;border-bottom:1px solid #3d4045}
.chrome i{width:10px;height:10px;border-radius:50%;background:#4a4e53}
.chrome i:first-child{background:var(--orange)}
.chrome span{margin-left:10px;flex:1;max-width:240px;background:var(--char);border-radius:5px;padding:3px 12px;font:13px var(--body);color:var(--steel-lt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.browser img{width:100%;aspect-ratio:1600/880;object-fit:cover;object-position:top}
.phone{position:absolute;right:-16px;bottom:0;width:28%;max-width:160px;background:#0e0f10;border:2px solid #3d4045;border-radius:24px;padding:7px;box-shadow:0 24px 50px -12px rgba(0,0,0,.7)}
.phone img{width:100%;aspect-ratio:9/19;object-fit:cover;object-position:top;border-radius:18px}

/* split */
.split{display:grid;grid-template-columns:63fr 37fr}
.split-l{background:var(--white);padding:90px 56px 90px max(24px,calc((100vw - 1180px)/2 + 24px))}
.split-l h2{font-size:clamp(34px,4.2vw,52px)}
.split-l .eyebrow{color:var(--orange-ink);margin-bottom:14px}
.split-l p{margin-top:18px;color:var(--ink-2);font-size:18px;max-width:56ch}
.split-l .ctas{margin-top:30px}
.split-r{background:var(--char);color:var(--bone);padding:90px max(24px,calc((100vw - 1180px)/2 + 24px)) 90px 48px;display:flex;flex-direction:column;gap:26px}
.split-r h3{font-family:var(--cond);font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.06em;font-size:24px;color:var(--orange)}
.step{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start}
.step .n{font-family:var(--display);font-size:30px;line-height:1;color:var(--orange)}
.step h4{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:20px}
.step p{color:var(--steel-lt);font-size:15.5px}

/* service detail rows */
.svc{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding-block:72px;border-top:1px solid var(--line-l);scroll-margin-top:100px}
.svc:first-child{border-top:0;padding-top:0}
.svc.flip .svc-img{order:2}
.svc-img{margin:0;aspect-ratio:4/3;overflow:hidden;background:var(--char-3);border-bottom:5px solid var(--orange)}
.svc-img img{width:100%;height:100%;object-fit:cover}
.svc .eyebrow{color:var(--orange-ink)}
.svc h2{margin-top:10px;font-size:clamp(32px,3.8vw,48px)}
.svc p{margin-top:16px;color:var(--ink-2);font-size:17.5px}
.checks{margin:20px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.checks li{position:relative;padding-left:30px;font-size:16.5px}
.checks li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:16px;background:var(--orange);clip-path:polygon(14% 44%,0 60%,40% 100%,100% 22%,86% 8%,40% 70%)}
.sec-dark .checks li{color:#E3E5E7}
.inc{margin-top:18px;font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:15px;color:var(--steel)}

/* prose + faq */
.prose{max-width:720px;margin:0 auto}
.prose h2{font-size:clamp(30px,3.6vw,44px);margin-top:56px}
.prose h2:first-child{margin-top:0}
.prose h3{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:24px;margin-top:32px}
.prose p{margin-top:16px;font-size:18px;color:var(--ink-2)}
.prose p.big{font-size:21px;color:var(--char)}
.prose .checks{margin-top:18px}
.faq{max-width:820px;margin:0 auto;border-top:2px solid var(--char)}
.faq details{border-bottom:1px solid var(--line-l)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 4px;font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:21px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:26px;line-height:1;color:var(--orange-ink);flex:none}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 4px 22px;color:var(--ink-2);font-size:17px;max-width:66ch}

/* three columns */
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.col{border-top:4px solid var(--char);padding-top:22px;display:flex;flex-direction:column;gap:10px}
.col .eyebrow{color:var(--orange-ink)}
.col h3{font-family:var(--display);text-transform:uppercase;font-size:28px;line-height:1.05}
.col p{color:var(--ink-2);font-size:16px}
.sec-dark .col{border-top-color:var(--orange)}
.sec-dark .col p{color:#C9CDD0}

/* about */
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.about-img{margin:0;border-bottom:5px solid var(--orange);position:sticky;top:110px}
.about-img img{width:100%;aspect-ratio:4/5;object-fit:cover}
.about-img figcaption{font-size:14px;color:var(--steel);margin-top:8px}

/* final cta + form */
.final{position:relative;color:var(--bone);background:var(--char) url("img/cta-bg.jpg") center 30%/cover no-repeat}
.final::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,21,23,.95),rgba(20,21,23,.86))}
.final .wrap{position:relative;padding-block:100px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.final h2{font-size:clamp(40px,5.4vw,70px)}
.final .lead{margin-top:18px;color:#C9CDD0;font-size:18px;max-width:44ch}
.final .eyebrow{color:var(--orange)}
.contact-lines{margin-top:28px;display:flex;flex-direction:column;gap:12px}
.cl{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border:1px solid var(--line-d);background:rgba(20,21,23,.6);padding:14px 16px;text-decoration:none}
.cl small{display:block;font-family:var(--cond);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:13px;color:var(--steel-lt)}
.cl b{font-family:var(--cond);font-weight:700;font-size:22px;word-break:break-all}
.cl .go{font-family:var(--cond);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:13px;border:1px solid var(--steel);padding:6px 12px}
.cl:hover .go{border-color:var(--orange);color:var(--orange)}
.lead-form{background:var(--bone);color:var(--char);padding:32px;display:flex;flex-direction:column;gap:16px;border-top:5px solid var(--orange);margin:0}
.lead-form h3{font-family:var(--display);text-transform:uppercase;font-size:30px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lead-form label{display:flex;flex-direction:column;gap:6px;font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:14px;color:var(--ink-2)}
.lead-form label em{font-style:normal;color:var(--orange-ink)}
.lead-form input,.lead-form select,.lead-form textarea{font:16px var(--body);color:var(--char);background:var(--white);border:1px solid #CFC7B6;padding:12px 14px;width:100%;border-radius:0}
.lead-form textarea{min-height:100px;resize:vertical}
.hp{position:absolute!important;left:-9999px!important}
.form-msg{font-size:15px;border-left:3px solid var(--orange);padding:6px 0 6px 12px}

/* simple centered page (thanks / 404) */
.center-page{min-height:60vh;display:grid;place-items:center;text-align:center;padding:96px 24px}
.center-page h1{font-size:clamp(44px,7vw,84px)}
.center-page p{margin:18px auto 0;max-width:48ch;color:var(--ink-2);font-size:18px}
.center-page .ctas{justify-content:center;margin-top:30px}

footer.site{background:var(--char-2);color:var(--steel-lt)}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:32px;padding-block:60px 40px}
.foot img{height:60px;width:auto}
.foot p{margin-top:14px;font-size:15px;max-width:30ch}
.foot h4{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:16px;color:var(--bone);margin-bottom:12px}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:15px}
.foot a{text-decoration:none}
.foot a:hover{color:var(--orange)}
.fine{border-top:1px solid var(--line-d)}
.fine .wrap{padding-block:18px;font-size:13px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

@media (max-width:1060px){
  .nav nav{gap:20px}
  .foot{grid-template-columns:1fr 1fr 1fr}
  .foot > div:first-child{grid-column:1/-1}
}
@media (max-width:980px){
  .menu-btn{display:block}
  .nav{flex-wrap:wrap}
  .nav nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 14px}
  .nav nav.open{display:flex}
  .nav nav a{padding:12px 0;border-top:1px solid var(--line-d);font-size:18px}
  .nav nav .btn{margin-top:12px;justify-content:center;border-top:2px solid var(--orange)}
  .tier-grid{grid-template-columns:1fr;max-width:480px;margin-inline:auto}
  .tier.pop{transform:none}
  .card{grid-template-columns:1fr;padding:36px 28px}
  .split{grid-template-columns:1fr}
  .split-l,.split-r{padding:72px 24px}
  .final .wrap{grid-template-columns:1fr}
  .media-head,.local-grid,.about-grid{grid-template-columns:1fr;gap:36px}
  .about-img{position:static;max-width:460px}
  .media-grid{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:200px}
  .mt.wide{grid-column:auto}
  .svc{grid-template-columns:1fr;gap:28px}
  .svc.flip .svc-img{order:0}
  .trades{grid-template-columns:1fr 1fr}
  .rev-grid{grid-template-columns:1fr;max-width:560px;margin-inline:auto}
}
@media (max-width:760px){
  .topbar .wrap{justify-content:center;gap:16px}
  .topbar a[href*=instagram]{display:none}
  .phero .wrap,.phero.home .wrap{padding-block:72px 80px}
  .phero::before{background:rgba(20,21,23,.86)}
  .sec{padding-block:72px}
  .pillars{grid-template-columns:1fr}
  .pillar,.pillar:nth-child(even){border-right:0;text-align:left;align-items:flex-start;padding:26px 0;border-bottom:1px solid var(--orange)}
  .pillar:last-child{border-bottom:0}
  .addon,.cols{grid-template-columns:1fr}
  .phone{right:0}
}
@media (max-width:560px){
  .wrap{padding-inline:16px}
  .row2,.foot,.boxes,.trades{grid-template-columns:1fr}
  .lead-form{padding:22px}
  .brand img{height:46px}
  .split-l,.split-r{padding-inline:16px}
  .media-grid{grid-template-columns:1fr;grid-auto-rows:240px}
  .mt.tall{grid-row:auto}
  .btn{padding:14px 22px;font-size:17px}
}
