/* SeatLayer pricing — Goal 5G commercial decision journey */

.skip-link{
  position:fixed;
  left:16px;
  top:12px;
  z-index:100;
  transform:translateY(-160%);
  padding:10px 14px;
  border-radius:8px;
  background:var(--amber);
  color:var(--on-amber);
  font-weight:800;
}
.skip-link:focus{transform:none}

.pricing-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(4.25rem,8vw,7.25rem) 0 clamp(3.5rem,6vw,5.5rem);
  background:
    radial-gradient(circle at 88% 10%,rgba(244,183,64,.13),transparent 27rem),
    radial-gradient(circle at 10% 82%,rgba(34,160,107,.08),transparent 24rem),
    #0c1220;
  color:var(--panel-ink);
}
.pricing-hero::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.1;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(to right,transparent 5%,#000 70%,transparent);
}
.pricing-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(min(31rem,60%),1.06fr);
  gap:clamp(2.5rem,5vw,5rem);
  align-items:center;
}
.pricing-kicker{
  display:flex;
  align-items:center;
  gap:9px;
  font:700 .69rem/1 var(--mono);
  letter-spacing:.14em;
  color:#aeb8ca;
}
.pricing-kicker i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--live);
  box-shadow:0 0 0 5px rgba(34,160,107,.13);
}
.pricing-hero h1{
  max-width:12ch;
  margin-top:20px;
  font-size:var(--sl-title-long);
  font-weight:800;
  line-height:1.01;
  letter-spacing:-.055em;
  text-wrap:balance;
}
.pricing-hero h1 em{
  color:var(--amber-text);
  font-style:normal;
}
.pricing-answer{
  max-width:37rem;
  margin-top:24px;
  color:#b1bacb;
  font-size:clamp(1.03rem,1.6vw,1.18rem);
  line-height:1.65;
  text-wrap:pretty;
}
.pricing-actions,.pricing-final-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}
.pricing-actions .btn,.pricing-final-actions .btn{min-height:48px}
.pricing-btn-ghost{
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  padding:12px 20px;
  border:1px solid #354159;
  border-radius:var(--r-m);
  color:#e3e8f2;
  font-weight:700;
  transition:border-color .15s,color .15s,background .15s;
}
.pricing-btn-ghost:hover{
  border-color:var(--amber);
  background:rgba(244,183,64,.06);
  color:var(--amber-text);
}
.pricing-boundary{
  max-width:36rem;
  margin-top:20px;
  color:#818da2;
  font-size:.78rem;
  line-height:1.65;
}
.pricing-boundary b{color:#dce3ef}
.pricing-hero-facts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}
.pricing-hero-facts span{
  padding:6px 9px;
  border:1px solid #28344a;
  border-radius:6px;
  color:#9faabd;
  font:600 .63rem/1.25 var(--mono);
  letter-spacing:.02em;
}

.price-estimator{
  position:relative;
  padding:0;
  overflow:hidden;
  border:1px solid #344158;
  border-radius:20px;
  background:linear-gradient(155deg,#161f2f,#101722);
  box-shadow:0 32px 80px -35px #000;
}
.price-estimator::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:3px;
  background:linear-gradient(90deg,var(--amber),#f7db9d 60%,transparent);
}
.price-estimator-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:24px 26px 21px;
  border-bottom:1px solid #2a3549;
}
.price-estimator-head span,
.price-estimator-head>b,
.price-calc-controls label,
.price-estimator-result span{
  font:600 .61rem/1.3 var(--mono);
  letter-spacing:.12em;
}
.price-estimator-head span,.price-calc-controls label,.price-estimator-result span{color:#8895aa}
.price-estimator-head h2{
  margin-top:6px;
  font-size:clamp(1.2rem,2vw,1.55rem);
  line-height:1.15;
  letter-spacing:-.03em;
}
.price-estimator-head>b{
  align-self:flex-start;
  padding:6px 8px;
  border:1px solid #354158;
  border-radius:6px;
  color:var(--amber-text);
  white-space:nowrap;
}
.price-calc-controls{
  display:none;
  padding:20px 26px;
  border-bottom:1px solid #2a3549;
  background:rgba(255,255,255,.015);
}
.pricing-js .price-calc-controls{display:block}
.price-calc-controls label{display:block}
.price-range-row{
  display:grid;
  grid-template-columns:1fr 84px;
  gap:18px;
  align-items:center;
  margin-top:13px;
}
.price-range-row input{
  width:100%;
  height:44px;
  accent-color:var(--amber);
  cursor:pointer;
}
.price-range-row output{
  min-width:84px;
  font:700 .92rem/1 var(--mono);
  text-align:right;
  color:#fff;
}
.price-quick-values{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
  margin-top:9px;
}
.price-quick-values button{
  min-height:44px;
  border:1px solid #354158;
  border-radius:7px;
  color:#a8b2c4;
  font:600 .66rem/1 var(--mono);
}
.price-quick-values button:hover,.price-quick-values button.on{
  border-color:var(--amber);
  background:rgba(244,183,64,.1);
  color:var(--amber-text);
}
.price-estimator-result{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.price-estimator-result>div{
  min-width:0;
  padding:19px 26px 20px;
  border-right:1px solid #2a3549;
  border-bottom:1px solid #2a3549;
}
.price-estimator-result>div:nth-child(2n){border-right:0}
.price-estimator-result>div:nth-last-child(-n+2){border-bottom:0}
.price-estimator-result b{
  display:block;
  overflow-wrap:anywhere;
  margin-top:8px;
  color:#fff;
  font:700 clamp(1.55rem,3vw,2.15rem)/1 var(--mono);
  letter-spacing:-.06em;
}
.price-estimator-result small{
  display:block;
  margin-top:8px;
  color:#828ea2;
  font-size:.68rem;
  line-height:1.4;
}
.price-estimator-result .price-result-primary{
  background:linear-gradient(135deg,rgba(244,183,64,.13),rgba(244,183,64,.03));
}
.price-estimator-result .price-result-primary span{color:#d8aa50}
.price-estimator-result .price-result-primary b{color:var(--amber-text)}
.price-estimator-method{
  padding:18px 26px 9px;
  border-top:1px solid #2a3549;
  color:#828da0;
  font-size:.68rem;
  line-height:1.6;
}
.price-estimator-method b{color:#b9c2d1}
.price-static-note{
  padding:0 26px 19px;
  color:#68758b;
  font:500 .61rem/1.5 var(--mono);
}
.pricing-js .price-static-note{display:none}


.pricing-packs,.pricing-routes,.pricing-faq-section{
  padding:clamp(4.5rem,7vw,6.5rem) 0;
}
.pricing-section-head{max-width:49rem}
.pricing-section-head h2{
  margin-top:14px;
  font-size:var(--sl-title-section);
  font-weight:800;
  line-height:1.08;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.pricing-section-head>p{
  max-width:42rem;
  margin-top:16px;
  color:var(--muted);
  font-size:1rem;
  text-wrap:pretty;
}
.pricing-review-stamp{
  display:inline-block;
  margin-left:8px;
  color:var(--muted);
  font:600 .6rem/1.2 var(--mono);
  letter-spacing:.1em;
  white-space:nowrap;
}
.pricing-pack-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  margin-top:30px;
  border:1px solid var(--line);
  border-radius:var(--r-m);
  background:var(--card);
  box-shadow:0 12px 34px -30px var(--ink);
  overflow:hidden;
}
.pricing-pack-grid article{
  position:relative;
  display:grid;
  grid-template-columns:1.1fr 1fr .8fr 1fr;
  gap:16px;
  align-items:center;
  padding:15px 22px;
  border-bottom:1px solid var(--line);
}
.pricing-pack-grid article:last-child{border-bottom:0}
.pricing-pack-grid article>span,
.pricing-route-grid>a>span{
  color:var(--muted);
  font:600 .62rem/1.2 var(--mono);
  letter-spacing:.11em;
}
.pricing-pack-grid h3{
  margin:0;
  color:var(--ink);
  font-size:1rem;
  font-weight:700;
  letter-spacing:-.01em;
}
.pricing-pack-grid .pricing-pack-price{margin:0}
.pricing-pack-grid .pricing-pack-price strong{
  display:block;
  font:700 1.3rem/1 var(--mono);
  letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
}
.pricing-pack-grid article>p:not(.pricing-pack-price){
  margin:0;
  color:var(--muted);
  font-size:.82rem;
  text-align:right;
  font-variant-numeric:tabular-nums;
}
.pricing-pack-grid .pricing-pack-featured{
  background:linear-gradient(90deg,#fffaf0,var(--paper-warm));
  box-shadow:inset 3px 0 0 var(--amber);
}
.pricing-pack-featured>span::after{
  content:" · ESTIMATOR EXAMPLE";
  color:var(--amber-text);
}
.pricing-pack-note{
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:center;
  margin-top:18px;
  padding:18px 20px;
  border:1px dashed #d2c3a6;
  border-radius:10px;
  color:var(--muted);
  font-size:.77rem;
}
.pricing-pack-note p{max-width:42rem}
.pricing-pack-note b{color:var(--ink)}
.pricing-pack-note a{
  flex:none;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  border-bottom:2px solid var(--amber);
  color:var(--ink);
  font-weight:700;
}

.pricing-billable{
  padding:clamp(4.75rem,7vw,6.75rem) 0;
  background:var(--panel);
  color:var(--panel-ink);
}
.pricing-section-head-light .eyebrow{color:#8995a9}
.pricing-section-head-light h2{color:var(--panel-ink)}
.pricing-section-head-light>p{color:#8f9aad}
.pricing-boundary-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:16px;
  margin-top:38px;
}
.pricing-boundary-grid article{
  min-width:0;
  padding:28px;
  border:1px solid #2b364a;
  border-radius:var(--r-l);
  background:#121a27;
}
.pricing-boundary-grid article>span{
  color:#8b97a9;
  font:600 .65rem/1 var(--mono);
  letter-spacing:.12em;
}
.pricing-boundary-grid h3{
  margin-top:12px;
  font-size:clamp(1.25rem,2.4vw,1.7rem);
  line-height:1.15;
  letter-spacing:-.03em;
}
.pricing-boundary-grid ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 22px;
  margin-top:22px;
  list-style:none;
}
.pricing-boundary-grid li{
  position:relative;
  padding-left:19px;
  color:#a2adbf;
  font-size:.81rem;
}
.pricing-boundary-grid li::before{
  content:"✓";
  position:absolute;
  left:0;
  color:var(--live);
  font-weight:800;
}
.pricing-boundary-grid .pricing-boundary-billable{
  border-color:#6d562a;
  background:linear-gradient(145deg,#1d1d1c,#181a20);
}
.pricing-boundary-billable>span{color:var(--amber-text)!important}
.pricing-boundary-billable>p{
  margin-top:17px;
  color:#9fa9b9;
  font-size:.85rem;
}
.pricing-boundary-billable>a{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  margin-top:20px;
  border-bottom:2px solid var(--amber);
  color:#e8edf6;
  font-size:.79rem;
  font-weight:700;
}
.pricing-ledger{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:16px;
  overflow:hidden;
  border:1px solid #2b364a;
  border-radius:var(--r-m);
  list-style:none;
}
.pricing-ledger li{
  min-width:0;
  padding:19px 18px;
  border-right:1px solid #2b364a;
  background:#101722;
}
.pricing-ledger li:last-child{border-right:0}
.pricing-ledger span{
  color:#828c9e;
  font:600 .59rem/1 var(--mono);
}
.pricing-ledger b{
  display:block;
  margin-top:9px;
  color:#bbc4d3;
  font-size:.74rem;
}
.pricing-ledger em{
  display:block;
  margin-top:7px;
  color:#768398;
  font:600 .63rem/1 var(--mono);
  font-style:normal;
}
.pricing-ledger .pricing-ledger-charge{
  background:rgba(244,183,64,.1);
}
.pricing-ledger-charge em{color:var(--amber-text)}


.pricing-routes{border-bottom:1px solid var(--line)}
.pricing-route-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin-top:36px;
}
.pricing-route-grid>a{
  min-height:17rem;
  display:flex;
  flex-direction:column;
  padding:26px;
  border:1px solid var(--line);
  border-radius:var(--r-l);
  background:var(--card);
  box-shadow:0 18px 48px -38px var(--ink);
  transition:transform .2s,border-color .2s,box-shadow .2s;
}
.pricing-route-grid>a:hover{
  transform:translateY(-3px);
  border-color:#caa657;
  box-shadow:0 25px 50px -35px var(--ink);
}
.pricing-route-grid>a.pricing-route-primary{
  border-color:#d2a54a;
  background:linear-gradient(145deg,#fffaf0,var(--card));
}
.pricing-route-grid h3{
  margin-top:15px;
  font-size:clamp(1.2rem,2vw,1.5rem);
  line-height:1.18;
  letter-spacing:-.03em;
}
.pricing-route-grid p{
  margin-top:12px;
  color:var(--muted);
  font-size:.83rem;
}
.pricing-route-grid b{
  margin-top:auto;
  padding-top:24px;
  font-size:.78rem;
}
.pricing-maker-link{
  margin-top:20px;
  color:var(--muted);
  font-size:.78rem;
}
.pricing-maker-link a{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  border-bottom:2px solid var(--amber);
  color:var(--ink);
  font-weight:700;
}

.pricing-faq-section{background:#fffaf2}
.pricing-faq-head{margin:0 auto;text-align:center}
.pricing-faq-head .eyebrow{justify-content:center}
.pricing-faq{margin-top:30px}

.pricing-final{
  padding:clamp(4.5rem,7vw,6.25rem) 0;
  background:
    radial-gradient(circle at 50% 0,rgba(244,183,64,.12),transparent 24rem),
    var(--panel);
  color:var(--panel-ink);
  text-align:center;
}
.pricing-final-link{display:inline-flex;align-items:center;min-height:44px;color:var(--panel-ink);font-weight:700;border-bottom:2px solid var(--amber)}
.pricing-final h2{
  max-width:17ch;
  margin:14px auto 0;
  font-size:var(--sl-title-final);
  line-height:1.08;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.pricing-final p{
  max-width:42rem;
  margin:15px auto 0;
  color:#8f9aad;
}
.pricing-final-actions{justify-content:center}

.pricing-hero :focus-visible,
.price-estimator :focus-visible,
.pricing-billable :focus-visible,
.pricing-final :focus-visible{
  outline-color:var(--amber);
}

@media(max-width:1020px){
  .pricing-hero-grid{grid-template-columns:minmax(0,.84fr) minmax(min(28rem,60%),1.16fr);gap:34px}
  .pricing-hero h1{font-size:var(--sl-title-long)}
}

@media(max-width:900px){
  .pricing-hero-grid{grid-template-columns:1fr}
  .pricing-hero-copy{max-width:42rem}
  .price-estimator{max-width:43rem}
  .pricing-boundary-grid{grid-template-columns:1fr}
  .pricing-route-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:720px){
  .pricing-route-grid{grid-template-columns:1fr}
  .pricing-route-grid>a{min-height:0}
  .pricing-pack-note{align-items:flex-start;flex-direction:column;gap:14px}
  .pricing-ledger{grid-template-columns:1fr 1fr}
  .pricing-ledger li:nth-child(2){border-right:0}
  .pricing-ledger li:nth-child(-n+2){border-bottom:1px solid #2b364a}
}

@media(max-width:640px){
  .pricing-hero{padding:3.25rem 0 3rem}
  .pricing-hero-grid{gap:30px}
  .pricing-hero h1{max-width:13ch;margin-top:16px}
  .pricing-answer{margin-top:18px;font-size:.98rem}
  .pricing-actions{margin-top:24px}
  .pricing-actions>a,.pricing-final-actions>a{width:100%}
  .pricing-hero-facts{margin-top:18px}
  .price-estimator-head{padding:20px}
  .price-estimator-head>b{display:none}
  .price-calc-controls{padding:18px 20px}
  .price-range-row{grid-template-columns:1fr 68px;gap:10px}
  .price-range-row output{min-width:68px}
  .price-quick-values{grid-template-columns:1fr 1fr}
  .price-estimator-result>div{padding:17px 20px}
  .price-estimator-result b{font-size:clamp(1.35rem,8vw,1.8rem)}
  .price-estimator-method{padding:16px 20px 8px}
  .price-static-note{padding:0 20px 17px}
  .pricing-pack-grid article{grid-template-columns:1fr auto;gap:4px 14px;padding:14px 18px}
  .pricing-pack-grid article>span{grid-column:1/-1}
  .pricing-pack-grid article>p:not(.pricing-pack-price){text-align:left}
  .pricing-boundary-grid article{padding:22px}
  .pricing-boundary-grid ul{grid-template-columns:1fr;gap:8px}
  .pricing-ledger li{padding:15px}
  .pricing-routes,.pricing-packs,.pricing-faq-section{padding:4.25rem 0}
}

@media(max-width:380px){
  .wrap{padding-left:16px;padding-right:16px}
  .price-estimator-result>div{padding:15px}
  .price-estimator-result small{font-size:.62rem}
}
