body { margin: 0; font-family: var(--font-sans, "Mulish", system-ui, sans-serif); background: var(--surface); color: var(--navy); }
.tc-row { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; padding: var(--space-6); }
.tc-navy { background: var(--navy); color: var(--on-navy); }
.tc-icon { flex: none; display: inline-block; vertical-align: middle; }
.tc-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); font-family: "Montserrat", sans-serif; font-weight: 700; font-size: 15px; line-height: 1; min-height: 44px; padding: 0 20px; border-radius: var(--radius-md); border: 2px solid transparent; text-decoration: none; cursor: pointer; }
.tc-btn-lg { min-height: 52px; padding: 0 26px; font-size: 16px; }
.tc-btn-primary { background: var(--red); color: #fff; }
.tc-btn-primary:hover { background: #B8150C; }
.tc-btn-secondary { background: var(--blue); color: #fff; }
.tc-btn-outline { background: transparent; color: var(--navy); border-color: var(--navy); }
.tc-btn-on-navy { background: transparent; color: var(--on-navy); border-color: var(--on-navy); }
.tc-btn:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.tc-strip { display: grid; grid-template-columns: repeat(4, 1fr); color: var(--navy); }
.tc-strip-item { display: flex; flex-direction: column; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-3); text-align: center; font-family: "Montserrat", sans-serif; font-weight: 700; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.tc-strip-item + .tc-strip-item { border-left: 1px solid var(--line); }
.tc-strip.tc-on-navy { color: var(--on-navy); }
.tc-strip.tc-on-navy .tc-strip-item + .tc-strip-item { border-left-color: rgba(255,255,255,.25); }
.tc-checks { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); }
.tc-checks li { display: flex; gap: var(--space-3); align-items: center; font-size: 16px; line-height: 22px; }
.tc-check-disc { width: 28px; height: 28px; border-radius: var(--radius-pill); background: var(--blue); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.tc-checks.tc-on-navy li { color: var(--on-navy); }
.tc-split { display: block; height: 4px; border-radius: 2px; background: linear-gradient(90deg, var(--blue) 0 50%, var(--flame) 50% 100%); }
.tc-tagline { display: flex; gap: 14px; align-items: center; font-family: "Montserrat", sans-serif; font-weight: 500; font-size: 13px; letter-spacing: .3em; text-transform: uppercase; color: var(--navy); }
.tc-tagline i { font-style: normal; letter-spacing: 0; opacity: .6; }
.tc-tagline.tc-on-navy { color: var(--on-navy); }
.tc-gassafe { display: inline-flex; align-items: center; gap: var(--space-2); background: var(--gas-safe-yellow); color: var(--navy); border-radius: var(--radius-sm); padding: 6px 10px; font-size: 14px; line-height: 18px; }
.tc-swoosh { display: block; width: 100%; height: 100%; }
.tc-sw-blue { fill: var(--blue); } .tc-sw-sky { fill: var(--sky); } .tc-sw-red { fill: var(--flame); } .tc-sw-orange { fill: var(--orange); }
.tc-logo-navy { display: inline-flex; align-items: center; gap: .35em; color: var(--on-navy); }
.tc-logo-navy img { height: 1.9em; width: auto; }
.tc-logo-words { display: flex; flex-direction: column; font-family: "Montserrat", sans-serif; font-weight: 800; }
.tc-logo-name { font-size: 1em; line-height: 1; letter-spacing: -.01em; }
.tc-logo-sub { font-size: .42em; line-height: 1.3; text-transform: uppercase; letter-spacing: .02em; }
.tc-logo-sub .b { color: var(--blue-on-navy); } .tc-logo-sub .r { color: var(--orange-on-navy); }

/* Phone-width fixes */
@media (max-width: 760px) {
  .tc-tagline { flex-wrap: wrap; gap: 8px; letter-spacing: .18em; font-size: 12px; }
  .wrap > div, .wrap > form, .wrap > aside { min-width: 0; }
  .tc-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 16px; }
  .tc-strip-item + .tc-strip-item { border-left: 0; }
}

/* Cookie banner */
.cc-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:1000;max-width:760px;margin:0 auto;background:#0B2340;color:#FFFFFF;border-radius:14px;box-shadow:0 10px 30px rgba(11,35,64,.35);font-family:"Mulish",system-ui,sans-serif}
.cc-banner[hidden]{display:none}
.cc-inner{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;padding:18px 20px}
.cc-text{margin:0;flex:1 1 360px;font-size:15px;line-height:22px;color:#E6EDF6}
.cc-text a{color:#5EA8FF}
.cc-actions{display:flex;gap:10px;flex:0 0 auto}
.cc-btn{font:700 15px "Montserrat",sans-serif;min-height:44px;padding:0 20px;border-radius:10px;cursor:pointer;border:2px solid #FFFFFF;background:#FFFFFF;color:#0B2340}
.cc-btn.cc-reject{background:transparent;color:#FFFFFF}
.cc-btn:focus-visible{outline:2px solid #5EA8FF;outline-offset:2px}
/* Embeds that wait for consent */
.consent-embed{border-radius:16px;overflow:hidden;background:#F3F6FA;border:1px solid #DCE3EC;display:flex}
.consent-slot{flex:1;display:flex}
.consent-fallback{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:28px;color:#4A5A70}
.consent-fallback strong{font-family:"Montserrat",sans-serif;color:#0B2340;font-size:18px}
.consent-fallback p{margin:0;max-width:380px;line-height:23px}
.consent-embed.is-loaded{background:#FFFFFF}
.consent-embed iframe{border:0;width:100%;min-height:380px;display:block}
