/* TravelCode /corporate-cards — page-specific styles. Base / NAV / FOOTER come from tc-shared.css. */

/* Tint tokens the shared base doesn't define. */
:root{
  --green-50:#E5F4ED;
  --red-50:#FBE6E1;
}

@keyframes cc-pulse{0%,100%{opacity:1}50%{opacity:.35}}

.btn-lg{padding:14px 24px!important;font-size:15px!important}

section[id]{scroll-margin-top:88px}

/* Section head */
.s-head{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:end;margin-bottom:64px}
.s-head h2{max-width:22ch}
@media (max-width:900px){ .s-head{grid-template-columns:1fr;gap:20px;margin-bottom:40px} }

.hc-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 1px 2px rgba(11,13,18,.04),0 24px 48px -28px rgba(11,13,18,.18)}

/* ── HERO ── */
.cc-hero{padding:56px 0 64px}
.cc-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
@media (max-width:1000px){ .cc-hero-grid{grid-template-columns:1fr;gap:48px} }
.cc-hero h1{margin-bottom:24px}
.cc-hero p.sub{font-size:18px;line-height:1.55;color:var(--ink-2);max-width:54ch;margin-bottom:32px;text-wrap:pretty}
.cc-hero .hero-cta{display:flex;gap:10px;flex-wrap:wrap}
.cc-hero .hero-trust{display:flex;gap:24px;align-items:center;margin-top:32px;flex-wrap:wrap;font-size:13px;color:var(--muted);font-family:'JetBrains Mono',monospace;letter-spacing:.04em}
.cc-hero .hero-trust .item{display:inline-flex;align-items:center;gap:8px}
.cc-hero .hero-trust .item::before{content:"";width:6px;height:6px;border-radius:99px;background:var(--green);flex-shrink:0}

.cc-stage{position:relative;height:560px}
.cc-phys{position:absolute;left:8%;top:140px;width:min(400px,82%);z-index:2}
.cc-phys img{width:100%;height:auto;display:block;border-radius:20px;border:1px solid var(--line);box-shadow:0 2px 4px rgba(11,13,18,.08),0 48px 90px -30px rgba(11,13,18,.4)}
.cc-virt{position:absolute;left:20px;bottom:6px;width:292px;z-index:3;padding:18px}
.cc-virt .h{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:12px}
.cc-virt .tag{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:600}
.cc-virt .live{display:inline-flex;align-items:center;gap:6px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--green);font-weight:600}
.cc-virt .live::before{content:"";width:6px;height:6px;border-radius:99px;background:var(--green);animation:cc-pulse 1.6s ease-in-out infinite}
.cc-virt .nm{font-size:13.5px;font-weight:600;margin-bottom:4px}
.cc-virt .pan{font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.08em;color:var(--ink-2);margin-bottom:12px}
.cc-virt .cap{display:flex;justify-content:space-between;align-items:baseline;padding:9px 12px;background:var(--bg);border-radius:9px;font-size:12px;color:var(--ink-3);margin-bottom:12px}
.cc-virt .cap b{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--ink);font-feature-settings:"tnum"}
.cc-virt .foot-row{display:flex;justify-content:space-between;align-items:center}
.cc-kill{display:inline-flex;align-items:center;gap:7px;background:var(--red-50);color:var(--red);border:1px solid #F0CCC4;border-radius:9px;padding:8px 13px;font-size:12.5px;font-weight:600}
.cc-kill::before{content:"×";font-weight:700}
.cc-single{position:absolute;left:20px;top:10px;width:288px;z-index:1;background:var(--night);color:#fff;border-radius:16px;padding:18px;box-shadow:0 24px 56px -20px rgba(11,13,18,.5)}
.cc-single .h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.cc-single .tag{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:600}
.cc-burn{background:var(--signage);color:var(--night);font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;padding:4px 8px;border-radius:99px;text-align:center}
.cc-single .pan{font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.08em;color:rgba(255,255,255,.85);margin-bottom:8px}
.cc-single .amt{display:flex;justify-content:space-between;font-size:12px;color:rgba(255,255,255,.5)}
.cc-single .amt b{font-family:'JetBrains Mono',monospace;font-size:13px;color:#fff;font-feature-settings:"tnum"}
.cc-single .visa-row{display:flex;justify-content:flex-end;margin-top:12px}
.cc-visa{font-style:italic;font-weight:800;letter-spacing:.01em;font-size:16px;color:#1434CB;line-height:1}
.cc-visa.dk{color:#fff}
.cc-wallet{position:absolute;right:22px;bottom:24px;z-index:4;background:var(--ink);color:#fff;border-radius:99px;padding:11px 17px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.05em;display:inline-flex;gap:9px;align-items:center;box-shadow:0 18px 40px -14px rgba(11,13,18,.45);white-space:nowrap}
.cc-wallet .dot{width:7px;height:7px;border-radius:99px;background:var(--signage);animation:cc-pulse 1.6s ease-in-out infinite}
@media (max-width:1000px){
  .cc-stage{height:auto;display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:8px}
  .cc-phys,.cc-virt,.cc-single,.cc-wallet{position:static;transform:none;width:100%;max-width:340px}
}

/* ── CARD TYPES ── */
.cc-types{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:1100px){ .cc-types{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .cc-types{grid-template-columns:1fr} }
.cc-type{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:11px;transition:border-color .15s}
.cc-type:hover{border-color:var(--ink-3)}
.cc-type .tagrow{display:flex;align-items:center;gap:8px}
.cc-type .tag{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:600}
.cc-type h3{font-size:20px;letter-spacing:-.02em;line-height:1.25}
.cc-type .pitch{font-size:14px;color:var(--ink-2);line-height:1.5}
.cc-type ul{list-style:none;margin:0;margin-top:auto;padding:16px 0 0;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:9px}
.cc-type li{font-size:13.5px;color:var(--ink-2);line-height:1.45;padding-left:16px;position:relative}
.cc-type li::before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:99px;background:var(--blue)}
.cc-soon{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--night);background:var(--signage);padding:3px 8px;border-radius:99px}

.cc-api{margin-top:20px;background:var(--night);color:#fff;border-radius:18px;padding:28px 32px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}
@media (max-width:820px){ .cc-api{grid-template-columns:1fr;padding:24px} .cc-code{white-space:normal} }
.cc-api h3{font-size:20px;letter-spacing:-.02em;color:#fff;margin-bottom:8px}
.cc-api p{font-size:14px;line-height:1.55;color:rgba(255,255,255,.72);max-width:56ch}
.cc-code{background:var(--night-2);border:1px solid var(--night-3);color:rgba(255,255,255,.85);border-radius:10px;padding:14px 18px;font-family:'JetBrains Mono',monospace;font-size:11.5px;line-height:1.7;white-space:nowrap}
.cc-code .k{color:var(--signage)}
.cc-code .s{color:#7FB5FF}

/* ── EMPLOYEE SCENARIOS ── */
.cc-scenes{background:var(--bg-2)}
.cc-scns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:1000px) and (min-width:721px){ .cc-scns{grid-template-columns:1fr 1fr} }
@media (max-width:720px){
  .cc-scns{grid-auto-flow:column;grid-auto-columns:84%;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px;margin:0 -18px;padding-left:18px;padding-right:18px}
  .cc-scn{scroll-snap-align:start}
}
.cc-scn{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;display:flex;flex-direction:column;gap:13px;min-height:300px;transition:border-color .15s}
.cc-scn:hover{border-color:var(--ink-3)}
.cc-scn .num{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--ink-3);font-weight:500;display:flex;align-items:center;gap:10px}
.cc-scn .num::after{content:"";flex:1;height:1px;background:var(--line);max-width:60px}
.cc-scn h3{font-size:21px;letter-spacing:-.02em;line-height:1.2}
.cc-scn p{font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.cc-scn .bts{margin-top:auto;padding-top:16px;border-top:1px dashed var(--line);font-family:'JetBrains Mono',monospace;font-size:11.5px;line-height:1.6;color:var(--ink-3)}
.cc-scn .bts b{display:block;color:var(--ink);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:9.5px;margin-bottom:5px}

/* ── FINANCE ── */
.cc-finance{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cc-fins{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width:1000px){ .cc-fins{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .cc-fins{grid-template-columns:1fr} }
.cc-fin{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:10px}
.cc-fin .num{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--ink-3);font-weight:500;display:flex;align-items:center;gap:10px}
.cc-fin .num::after{content:"";flex:1;height:1px;background:var(--line);max-width:60px}
.cc-fin h3{font-size:18px;letter-spacing:-.018em;line-height:1.3}
.cc-fin p{font-size:14px;color:var(--ink-2);line-height:1.55}

/* ── CASHBACK + TERMS ── */
.cc-money{background:var(--night);color:#fff}
.cc-money-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--night-3);border-radius:22px;background:var(--night-2);overflow:hidden}
.cc-stat{padding:48px}
.cc-stat+.cc-stat{border-left:1px solid var(--night-3)}
@media (max-width:820px){
  .cc-money-grid{grid-template-columns:1fr}
  .cc-stat{padding:32px 28px}
  .cc-stat+.cc-stat{border-left:0;border-top:1px solid var(--night-3)}
}
.cc-stat .v{font-size:clamp(44px,5vw,72px);font-weight:600;letter-spacing:-.035em;line-height:1;margin-bottom:14px}
.cc-stat .v em{font-style:normal;font-size:.42em;letter-spacing:-.02em;color:rgba(255,255,255,.5);font-weight:500}
.cc-stat h3{font-size:19px;letter-spacing:-.018em;margin-bottom:10px;color:#fff}
.cc-stat p{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.72);max-width:44ch}
.cc-money .fine{margin-top:20px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.04em;color:rgba(255,255,255,.4)}
.cc-money .ctas{margin-top:36px;display:flex;gap:12px;flex-wrap:wrap}
.cc-money .ctas .btn-primary{background:#fff!important;color:var(--ink)!important}
.cc-money .ctas .btn-primary:hover{background:var(--blue)!important;color:#fff!important}
.cc-money .ctas .btn-secondary{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.3)!important}
.cc-money .ctas .btn-secondary:hover{border-color:#fff!important;background:rgba(255,255,255,.06)!important}

/* ── TRAVEL-NATIVE ── */
.cc-tn-rows{max-width:920px}
.cc-tn-row{display:grid;grid-template-columns:64px 1fr;gap:24px;padding:30px 0;border-top:1px solid var(--line)}
.cc-tn-row:last-child{border-bottom:1px solid var(--line)}
.cc-tn-row .n{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:600;color:var(--ink);width:36px;height:36px;border-radius:99px;background:var(--surface);border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center}
.cc-tn-row h3{font-size:20px;letter-spacing:-.02em;margin-bottom:8px}
.cc-tn-row p{font-size:15px;line-height:1.6;color:var(--ink-2);max-width:64ch}
@media (max-width:600px){ .cc-tn-row{grid-template-columns:1fr;gap:12px} }

/* ── ALLOWANCES ── */
.cc-allowance{background:var(--bg-2)}
.cc-allow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media (max-width:1000px){ .cc-allow{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .cc-allow{grid-template-columns:1fr} }
.cc-tile{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:9px}
.cc-tile h3{font-size:17px;letter-spacing:-.015em;line-height:1.3}
.cc-tile p{font-size:13.5px;color:var(--ink-2);line-height:1.5}
.cc-tile .ft{margin-top:auto;padding-top:14px;border-top:1px dashed var(--line);font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.04em;color:var(--ink-3);font-weight:500;line-height:1.5}

/* ── SECURITY ── */
.cc-sec{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:940px}
@media (max-width:720px){ .cc-sec{grid-template-columns:1fr} }
.cc-sec .item{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px 22px;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.cc-sec .item b{color:var(--ink);font-weight:600}
.cc-sec .ck{width:22px;height:22px;border-radius:99px;background:var(--green-50);color:var(--green);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:1px}

/* ── FAQ ── */
.cc-faq-list{max-width:820px;margin-top:48px}
.cc-faq-list details{border-top:1px solid var(--line)}
.cc-faq-list details:last-child{border-bottom:1px solid var(--line)}
.cc-faq-list summary{cursor:pointer;padding:22px 0;font-size:17px;font-weight:600;letter-spacing:-.015em;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}
.cc-faq-list summary::-webkit-details-marker{display:none}
.cc-faq-list summary::after{content:"+";font-family:'JetBrains Mono',monospace;font-size:18px;color:var(--ink-3);flex-shrink:0;transition:transform .2s}
.cc-faq-list details[open] summary::after{transform:rotate(45deg)}
.cc-faq-list .a{padding:0 0 24px;font-size:15px;line-height:1.6;color:var(--ink-2);max-width:66ch}

/* ── FINAL CTA ── */
.cc-final{background:var(--night);color:#fff;text-align:center}
.cc-final h2{color:#fff;margin-bottom:18px}
.cc-final p{color:rgba(255,255,255,.72);font-size:16px;line-height:1.6;max-width:52ch;margin:0 auto 36px;text-wrap:pretty}
.cc-final .btn-primary{background:#fff!important;color:var(--ink)!important}
.cc-final .btn-primary:hover{background:var(--blue)!important;color:#fff!important}
