/* ==========================================================================
   PHOENIX DIGI MARKETING — Page Layouts v2
   Section-level composition. Depends on phoenix.css tokens.
   ========================================================================== */

/* --------------------------------------------------------------------------
   HOME HERO
   -------------------------------------------------------------------------- */
.hero{
  position:relative;
  min-height:min(100svh,940px);
  display:flex;align-items:center;
  padding-block:calc(var(--nav-h) + 56px) clamp(56px,7vw,96px);
  overflow:hidden;
  isolation:isolate;
}
.hero-media{position:absolute;inset:0;z-index:-2}
.hero-video{width:100%;height:100%;object-fit:cover;opacity:.42}
.hero-media::after{
  content:'';position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(5,6,10,.86) 0%,rgba(5,6,10,.6) 35%,rgba(5,6,10,.94) 100%),
    radial-gradient(820px 520px at 78% 22%,rgba(255,106,0,.2),transparent 66%);
}
/* Fine grain overlay stops the large flat areas from banding */
.hero::after{
  content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.35;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E");
}

.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:clamp(32px,5vw,72px);
  align-items:center;
}
@media(max-width:1020px){.hero-grid{grid-template-columns:minmax(0,1fr)}}

.hero h1{font-size:var(--fs-display);margin-bottom:22px;max-width:15ch}
.hero-copy .lede{font-size:clamp(1.02rem,.6vw + .9rem,1.2rem);max-width:56ch;margin-bottom:32px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:38px}

.hero-proof{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.avatar-stack{display:flex}
.avatar-stack span{
  width:40px;height:40px;border-radius:50%;
  display:grid;place-items:center;
  font-size:.7rem;font-weight:700;font-family:'Sora',sans-serif;
  background:var(--ink-600);border:2px solid var(--ink-900);
  color:var(--flame-300);margin-left:-11px;
}
.avatar-stack span:first-child{margin-left:0}
.avatar-stack span:last-child{background:var(--flame-grad);color:#120800}
.proof-copy{font-size:var(--fs-sm);color:var(--text-2);line-height:1.4}
.proof-copy b{color:var(--text-1)}
.stars{color:var(--flame-400);letter-spacing:.08em;display:block;font-size:var(--fs-xs)}

/* Floating metric panel */
.hero-panel{
  border-radius:var(--r-lg);padding:26px;
  background:rgba(11,14,22,.62);
  backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid var(--line-2);
  box-shadow:var(--shadow-3);
  display:flex;flex-direction:column;gap:4px;
}
.hero-panel-head{
  display:flex;align-items:center;gap:10px;
  padding-bottom:16px;margin-bottom:8px;border-bottom:1px solid var(--line);
  font-size:var(--fs-xs);color:var(--text-3);letter-spacing:.1em;text-transform:uppercase;font-weight:600;
}
.metric-row{display:flex;align-items:center;gap:16px;padding:13px 0}
.metric-row + .metric-row{border-top:1px solid var(--line)}
.metric-val{
  font-family:'Sora',sans-serif;font-weight:700;font-size:1.5rem;line-height:1;
  background:linear-gradient(120deg,#FFC98C,#FF6A00);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.metric-label{font-size:var(--fs-xs);color:var(--text-3);margin-top:5px}
.metric-trend{margin-left:auto;font-size:var(--fs-xs);color:var(--mint-400);font-weight:600;display:flex;align-items:center;gap:5px}

/* Service pill strip under the hero — high-value internal links */
.service-strip{
  display:flex;gap:10px;flex-wrap:wrap;
  margin-top:clamp(40px,5vw,64px);
  padding-top:clamp(28px,3vw,40px);
  border-top:1px solid var(--line);
}
.service-pill{
  display:inline-flex;align-items:center;gap:10px;
  padding:11px 20px 11px 13px;border-radius:var(--r-pill);
  background:rgba(255,255,255,.03);border:1px solid var(--line);
  font-size:var(--fs-sm);font-weight:500;color:var(--text-2);
  transition:border-color var(--t-med) var(--ease),color var(--t-med) var(--ease),
             background var(--t-med) var(--ease),transform var(--t-med) var(--ease);
}
.service-pill i{color:var(--flame-400);font-size:.9rem}
.service-pill:hover{
  border-color:var(--line-hot);color:var(--text-1);
  background:rgba(255,106,0,.07);transform:translateY(-2px);
}

/* --------------------------------------------------------------------------
   TRUST MARQUEE
   -------------------------------------------------------------------------- */
.marquee{
  overflow:hidden;position:relative;
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
}
.marquee-track{display:flex;gap:56px;width:max-content;animation:slide 34s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes slide{to{transform:translateX(-50%)}}
.marquee-item{
  display:flex;align-items:center;gap:11px;
  font-family:'Sora',sans-serif;font-weight:600;font-size:1.02rem;
  color:var(--text-3);white-space:nowrap;
  transition:color var(--t-med) var(--ease);
}
.marquee-item:hover{color:var(--text-1)}
.marquee-item i{color:var(--flame-500);font-size:1.15rem}

/* --------------------------------------------------------------------------
   SERVICE CATEGORY NAV (services hub, sticky scrollspy)
   -------------------------------------------------------------------------- */
.service-nav{
  position:sticky;top:calc(var(--nav-h) + 8px);z-index:60;
  display:flex;gap:8px;overflow-x:auto;
  padding:10px;margin-bottom:clamp(36px,4vw,56px);
  background:rgba(11,14,22,.9);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--line);border-radius:var(--r-pill);
  scrollbar-width:none;
}
.service-nav::-webkit-scrollbar{display:none}
.service-nav a{
  flex-shrink:0;padding:9px 18px;border-radius:var(--r-pill);
  font-size:var(--fs-xs);font-weight:600;color:var(--text-3);white-space:nowrap;
  transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);
}
.service-nav a:hover{color:var(--text-1);background:rgba(255,255,255,.06)}
.service-nav a.active{background:var(--flame-grad);color:#120800}

/* --------------------------------------------------------------------------
   SERVICE BLOCKS (services hub)
   -------------------------------------------------------------------------- */
.service-block{padding-block:clamp(44px,5vw,72px);border-top:1px solid var(--line)}
.service-block:first-of-type{border-top:none;padding-top:0}
.service-block-head{
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:28px;align-items:end;margin-bottom:34px;
}
@media(max-width:820px){.service-block-head{grid-template-columns:minmax(0,1fr)}}
.service-block-head h2{margin-block:14px 12px}
.service-block-head p{color:var(--text-2);max-width:64ch}

.service-sub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px}
.service-sub-card{
  position:relative;
  background:var(--ink-700);border:1px solid var(--line);
  border-radius:var(--r-md);padding:24px;
  transition:transform var(--t-med) var(--ease),border-color var(--t-med) var(--ease),background var(--t-med) var(--ease);
}
.service-sub-card:hover{transform:translateY(-3px);border-color:var(--line-hot);background:var(--ink-600)}
.service-sub-card .idx{
  font-family:'Sora',sans-serif;font-weight:700;font-size:.72rem;
  color:var(--flame-500);letter-spacing:.1em;display:block;margin-bottom:10px;
}
.service-sub-card h4{font-size:var(--fs-base);margin-bottom:8px}
.service-sub-card p{color:var(--text-2);font-size:var(--fs-sm);line-height:1.55}

/* --------------------------------------------------------------------------
   SERVICE LANDING PAGE (one page per money keyword)
   -------------------------------------------------------------------------- */
.lp-split{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(30px,4vw,64px);align-items:center;
}
.lp-split.reverse > *:first-child{order:2}
@media(max-width:900px){
  .lp-split{grid-template-columns:minmax(0,1fr)}
  .lp-split.reverse > *:first-child{order:0}
}

.check-list{display:flex;flex-direction:column;gap:14px;margin-top:26px}
.check-list li{display:flex;gap:13px;align-items:flex-start;font-size:var(--fs-sm);color:var(--text-2)}
.check-list li i{
  color:var(--mint-400);margin-top:4px;flex-shrink:0;font-size:.85rem;
  width:20px;height:20px;border-radius:50%;
  background:rgba(46,217,160,.12);display:grid;place-items:center;
}
.check-list li b{color:var(--text-1);font-weight:600}

/* Deliverables table — strong on-page content for long-tail keywords */
/* Must scroll, not clip. With `overflow:hidden` a 3–4 column table on a phone
   simply loses its right-hand columns with no way to reach them. */
.spec-table{
  border:1px solid var(--line);border-radius:var(--r-lg);
  overflow-x:auto;overflow-y:hidden;
  background:var(--ink-700);
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}
.spec-table table{font-size:var(--fs-sm);min-width:520px}
.spec-table::-webkit-scrollbar{height:6px}
.spec-table::-webkit-scrollbar-thumb{background:var(--ink-500);border-radius:var(--r-pill)}
/* Fade on the right edge hints there is more table to scroll to */
@media(max-width:620px){
  .spec-table{
    background:
      linear-gradient(90deg,var(--ink-700) 70%,rgba(23,27,39,0)) left center/40px 100% no-repeat local,
      linear-gradient(270deg,var(--ink-700) 70%,rgba(23,27,39,0)) right center/40px 100% no-repeat local,
      radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.35),transparent) right center/16px 100% no-repeat scroll,
      var(--ink-700);
  }
}
.spec-table th{
  text-align:left;padding:16px 20px;
  background:var(--ink-600);color:var(--text-1);
  font-family:'Sora',sans-serif;font-weight:600;font-size:var(--fs-xs);
  letter-spacing:.08em;text-transform:uppercase;
}
.spec-table td{padding:15px 20px;border-top:1px solid var(--line);color:var(--text-2);vertical-align:top}
.spec-table td:first-child{color:var(--text-1);font-weight:500;width:38%}
.spec-table tr:hover td{background:rgba(255,255,255,.02)}
@media(max-width:600px){
  .spec-table td:first-child{width:44%}
  .spec-table th,.spec-table td{padding:12px 14px}
}

/* Results proof cards */
.result-card{
  background:var(--ink-700);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:26px;
  transition:border-color var(--t-med) var(--ease),transform var(--t-med) var(--ease);
}
.result-card:hover{border-color:var(--line-hot);transform:translateY(-4px)}
.result-jump{
  font-family:'Sora',sans-serif;font-weight:700;font-size:2.1rem;line-height:1;
  color:var(--mint-400);display:flex;align-items:baseline;gap:8px;margin-bottom:6px;
}
.result-jump i{font-size:1rem}
.result-card .what{font-size:var(--fs-sm);color:var(--text-1);font-weight:600;margin-bottom:10px}
.result-card .who{font-size:var(--fs-xs);color:var(--text-3)}

/* Related-services cross-link block — spreads internal PageRank */
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:14px}
.related-card{
  display:flex;align-items:center;gap:14px;
  padding:18px 20px;border-radius:var(--r-md);
  background:var(--ink-700);border:1px solid var(--line);
  transition:border-color var(--t-med) var(--ease),background var(--t-med) var(--ease),transform var(--t-med) var(--ease);
}
.related-card:hover{border-color:var(--line-hot);background:var(--ink-600);transform:translateY(-3px)}
.related-card i{color:var(--flame-400);font-size:1.05rem;flex-shrink:0}
.related-card b{display:block;font-size:var(--fs-sm);font-weight:600}
.related-card small{color:var(--text-3);font-size:var(--fs-xs)}

/* --------------------------------------------------------------------------
   PRICING
   -------------------------------------------------------------------------- */
.price-toggle{
  display:inline-flex;gap:4px;padding:5px;margin-inline:auto;
  background:var(--ink-700);border:1px solid var(--line);border-radius:var(--r-pill);
}
.price-toggle button{
  padding:10px 24px;border-radius:var(--r-pill);
  font-size:var(--fs-xs);font-weight:600;color:var(--text-3);
  transition:background var(--t-med) var(--ease),color var(--t-med) var(--ease);
}
.price-toggle button.active{background:var(--flame-grad);color:#120800}

.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
@media(max-width:1000px){.price-grid{grid-template-columns:minmax(0,1fr);max-width:520px;margin-inline:auto}}

.price-card{
  position:relative;
  background:var(--ink-700);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:clamp(26px,3vw,36px);
  display:flex;flex-direction:column;
  transition:transform var(--t-med) var(--ease),border-color var(--t-med) var(--ease);
}
.price-card:hover{transform:translateY(-5px);border-color:var(--line-hot)}
.price-card.featured{
  border-color:var(--flame-500);
  background:radial-gradient(500px 300px at 50% 0%,rgba(255,106,0,.14),transparent 70%),var(--ink-700);
  box-shadow:var(--glow-md);
}
.price-tag{
  position:absolute;top:-13px;left:50%;translate:-50% 0;
  padding:6px 18px;border-radius:var(--r-pill);
  background:var(--flame-grad);color:#120800;
  font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;white-space:nowrap;
}
.price-card h3{font-size:var(--fs-h4);margin-bottom:6px}
.price-card .tier-note{font-size:var(--fs-xs);color:var(--text-3);margin-bottom:22px}
.price-amount{display:flex;align-items:baseline;gap:6px;margin-bottom:6px}
.price-amount .cur{font-size:1.1rem;color:var(--text-2);font-family:'Sora',sans-serif}
.price-amount .val{font-family:'Sora',sans-serif;font-weight:700;font-size:2.6rem;line-height:1}
.price-amount .per{font-size:var(--fs-xs);color:var(--text-3)}
.price-card ul{display:flex;flex-direction:column;gap:12px;margin:26px 0 30px;flex:1}
.price-card ul li{display:flex;gap:11px;align-items:flex-start;font-size:var(--fs-sm);color:var(--text-2)}
.price-card ul li i{color:var(--flame-500);margin-top:4px;font-size:.8rem;flex-shrink:0}
.price-card ul li.off{color:var(--text-4)}
.price-card ul li.off i{color:var(--text-4)}

/* --------------------------------------------------------------------------
   PORTFOLIO
   -------------------------------------------------------------------------- */
.filter-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:clamp(28px,3vw,44px)}
.filter-btn{
  padding:10px 22px;border-radius:var(--r-pill);
  border:1px solid var(--line);background:var(--ink-700);
  font-size:var(--fs-xs);font-weight:600;color:var(--text-3);
  transition:background var(--t-med) var(--ease),color var(--t-med) var(--ease),border-color var(--t-med) var(--ease);
}
.filter-btn:hover{color:var(--text-1);border-color:var(--line-2)}
.filter-btn.active{background:var(--flame-grad);color:#120800;border-color:transparent}

.work-card{
  position:relative;overflow:hidden;
  border-radius:var(--r-lg);border:1px solid var(--line);
  background:var(--ink-700);
  transition:transform var(--t-med) var(--ease),border-color var(--t-med) var(--ease);
}
.work-card:hover{transform:translateY(-5px);border-color:var(--line-hot)}
.work-thumb{
  aspect-ratio:4/3;position:relative;overflow:hidden;
  display:grid;place-items:center;
}
.work-thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow) var(--ease)}
.work-card:hover .work-thumb img{transform:scale(1.06)}
.work-thumb .glyph{font-size:2.6rem;color:rgba(255,255,255,.16)}
.work-body{padding:22px}
.work-body .cat{font-size:var(--fs-xs);color:var(--flame-400);font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.work-body h3{font-size:var(--fs-base);margin:9px 0 8px}
.work-body p{font-size:var(--fs-sm);color:var(--text-2)}
.work-metrics{display:flex;gap:18px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.work-metrics div{font-size:var(--fs-xs);color:var(--text-3)}
.work-metrics b{display:block;font-family:'Sora',sans-serif;font-size:1.1rem;color:var(--mint-400);font-weight:700}
.portfolio-item{display:none}
.portfolio-item.show{display:block}

/* --------------------------------------------------------------------------
   BLOG
   -------------------------------------------------------------------------- */
.blog-toolbar{
  display:flex;gap:16px;align-items:center;justify-content:space-between;
  flex-wrap:wrap;margin-bottom:clamp(26px,3vw,40px);
}
.search-box{position:relative;flex:1;min-width:240px;max-width:380px}
.search-box i{position:absolute;left:16px;top:50%;translate:0 -50%;color:var(--text-3);font-size:.85rem}
.search-box input{padding-left:42px}

.blog-card{
  display:flex;flex-direction:column;height:100%;
  background:var(--ink-700);border:1px solid var(--line);
  border-radius:var(--r-lg);overflow:hidden;
  transition:transform var(--t-med) var(--ease),border-color var(--t-med) var(--ease);
}
.blog-card:hover{transform:translateY(-4px);border-color:var(--line-hot)}
.blog-thumb{
  aspect-ratio:16/9;display:grid;place-items:center;
  border-bottom:1px solid var(--line);position:relative;
}
.blog-thumb i{font-size:2.2rem;color:rgba(255,255,255,.2)}
.blog-body{padding:24px;display:flex;flex-direction:column;flex:1}
.blog-meta{display:flex;gap:14px;font-size:var(--fs-xs);color:var(--text-3);margin-bottom:12px;flex-wrap:wrap}
.blog-meta .cat{color:var(--flame-400);font-weight:600}
.blog-card h3{font-size:var(--fs-base);margin-bottom:10px;line-height:1.35}
.blog-card p{font-size:var(--fs-sm);color:var(--text-2);flex:1}
.blog-card .link-arrow{margin-top:18px}
.no-results{
  grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--text-3);
}

/* --------------------------------------------------------------------------
   TESTIMONIALS
   -------------------------------------------------------------------------- */
.testi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px}
.testi-card{
  background:var(--ink-700);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:28px;
  display:flex;flex-direction:column;gap:18px;
  transition:border-color var(--t-med) var(--ease),transform var(--t-med) var(--ease);
}
.testi-card:hover{border-color:var(--line-hot);transform:translateY(-4px)}
.testi-card .stars{font-size:var(--fs-sm);letter-spacing:.12em}
.testi-card blockquote{color:var(--text-1);font-size:var(--fs-sm);line-height:1.7;flex:1}
.testi-author{display:flex;align-items:center;gap:13px;padding-top:16px;border-top:1px solid var(--line)}
.testi-avatar{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;
  display:grid;place-items:center;
  background:var(--flame-grad-soft);border:1px solid var(--line-hot);
  color:var(--flame-300);font-weight:700;font-size:.8rem;font-family:'Sora',sans-serif;
}
.testi-author .name{font-size:var(--fs-sm);font-weight:600}
.testi-author .role{font-size:var(--fs-xs);color:var(--text-3)}

/* --------------------------------------------------------------------------
   CONTACT
   -------------------------------------------------------------------------- */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(26px,4vw,52px)}
@media(max-width:900px){.contact-grid{grid-template-columns:minmax(0,1fr)}}
.contact-card{
  display:flex;gap:16px;align-items:flex-start;
  padding:22px;border-radius:var(--r-md);
  background:var(--ink-700);border:1px solid var(--line);
  transition:border-color var(--t-med) var(--ease)
}
.contact-card:hover{border-color:var(--line-hot)}
.contact-card h3{font-size:var(--fs-sm);margin-bottom:5px}
.contact-card p,.contact-card a{font-size:var(--fs-sm);color:var(--text-2);line-height:1.6}
.contact-card a:hover{color:var(--flame-400)}
.map-frame{
  border-radius:var(--r-lg);overflow:hidden;
  border:1px solid var(--line);height:340px;filter:grayscale(1) invert(.92) hue-rotate(180deg) contrast(.86);
}
.map-frame iframe{width:100%;height:100%;border:0;display:block}

/* --------------------------------------------------------------------------
   ABOUT
   -------------------------------------------------------------------------- */
.value-card{
  padding:28px;border-radius:var(--r-lg);
  background:var(--ink-700);border:1px solid var(--line);
  transition:border-color var(--t-med) var(--ease),transform var(--t-med) var(--ease);
}
.value-card:hover{border-color:var(--line-hot);transform:translateY(-4px)}
.value-card h3{font-size:var(--fs-base);margin-bottom:10px}
.value-card p{font-size:var(--fs-sm);color:var(--text-2)}

.founder-card{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center;
  padding:clamp(26px,3vw,40px);border-radius:var(--r-xl);
  background:radial-gradient(500px 300px at 0% 0%,rgba(255,106,0,.1),transparent 65%),var(--ink-700);
  border:1px solid var(--line-hot);
}
@media(max-width:700px){.founder-card{grid-template-columns:minmax(0,1fr);text-align:center;justify-items:center}}
.founder-avatar{
  width:110px;height:110px;border-radius:50%;
  background:var(--flame-grad);color:#120800;
  display:grid;place-items:center;
  font-family:'Sora',sans-serif;font-weight:700;font-size:2rem;
  box-shadow:var(--glow-md);
}

/* --------------------------------------------------------------------------
   LOCATION PAGES
   -------------------------------------------------------------------------- */
.area-list{display:flex;flex-wrap:wrap;gap:9px}
.area-list li{
  padding:8px 15px;border-radius:var(--r-pill);
  background:var(--ink-700);border:1px solid var(--line);
  font-size:var(--fs-xs);color:var(--text-2);
}
.loc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px}
.loc-card{
  padding:22px;border-radius:var(--r-md);
  background:var(--ink-700);border:1px solid var(--line);
  transition:border-color var(--t-med) var(--ease),transform var(--t-med) var(--ease);
}
.loc-card:hover{border-color:var(--line-hot);transform:translateY(-3px)}
.loc-card i{color:var(--flame-400);margin-bottom:12px;display:block;font-size:1.1rem}
.loc-card b{display:block;font-size:var(--fs-sm);margin-bottom:5px}
.loc-card small{color:var(--text-3);font-size:var(--fs-xs)}

/* --------------------------------------------------------------------------
   404
   -------------------------------------------------------------------------- */
.error-wrap{
  min-height:100svh;display:grid;place-items:center;
  text-align:center;padding:calc(var(--nav-h) + 40px) var(--gutter) 60px;
}
.error-code{
  font-family:'Sora',sans-serif;font-weight:700;
  font-size:clamp(5rem,18vw,11rem);line-height:.9;
  background:linear-gradient(120deg,#FFC98C,#FF6A00 50%,rgba(255,106,0,.2));
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
