@import url('https://fonts.googleapis.com/css?family=Oswald:400,700');
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,700');

:root{
  --brand:#c1121f;
  --brand-dark:#780000;
  --brand-soft:#ffe8ea;
  --surface:#ffffff;
  --bg:#fff8f8;
  --text:#2f2323;
  --ink-soft:#2b3442;
  --ink-muted:#4b5563;
  --muted:#6a5858;
  --line:#efc6ca;
  --shadow:0 14px 36px rgba(120,0,0,.10);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:var(--bg);color:var(--text);line-height:1.65}
a{text-decoration:none;color:inherit}
ul{list-style:none}
img,video{max-width:100%;display:block}
.container{width:min(1120px,92%);margin:0 auto}
header.site-header{background:#111;color:#fff;border-bottom:.34rem solid var(--brand);position:sticky;top:0;z-index:1000}
.header-inner{display:flex;align-items:center;gap:1rem;justify-content:space-between;min-height:5rem;padding:.35rem 0}
.brand{font-family:'Oswald',sans-serif;font-size:2rem;letter-spacing:.4px}
.nav-main{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}
.nav-main a{padding:1rem .9rem 1.15rem;border-radius:.9rem .9rem 0 0;font-weight:700;color:#fff;position:relative;transition:.25s}
.nav-main a:hover,.nav-main a.active{background:var(--brand);color:#fff}
.header-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}
.pill-btn,.btn{display:inline-block;border:none;cursor:pointer;background:#fff;color:var(--brand-dark);padding:.82rem 1.35rem;border-radius:999px;font-weight:700;transition:.25s;box-shadow:none}
.pill-btn:hover,.btn:hover{transform:translateY(-1px);background:var(--brand-soft)}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-dark);color:#fff}
.btn-outline{background:transparent;border:2px solid var(--brand);color:var(--brand)}
.btn-outline:hover{background:var(--brand-soft)}
.hero{padding:4rem 0 3rem}
.hero-grid,.grid-2{display:grid;grid-template-columns:1.1fr .95fr;gap:1.8rem;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--brand);font-weight:800;font-size:.85rem}
.hero h1,.page-title{font-family:'Oswald',sans-serif;line-height:1.08;margin:.55rem 0 1rem;font-size:clamp(2.3rem,5vw,4.2rem)}
.lead{font-size:1.08rem;color:var(--muted);max-width:62ch}
.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem}
.card,.feature,.form-card,.question-card,.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:1.1rem;box-shadow:var(--shadow)}
.card,.feature,.form-card,.question-card{padding:1.35rem}
.hero-media-card{padding:.7rem;overflow:hidden}
.hero-video-shell{position:relative;border-radius:1rem;overflow:hidden;min-height:360px;background:#000}
.hero-video-shell video{width:100%;height:100%;object-fit:cover}
.video-chip{position:absolute;top:1rem;left:1rem;background:rgba(17,17,17,.75);color:#fff;padding:.45rem .8rem;border-radius:999px;font-size:.82rem;font-weight:700;backdrop-filter:blur(6px)}
.video-caption{position:absolute;left:1rem;right:1rem;bottom:1rem;background:rgba(17,17,17,.72);color:#fff;padding:1rem 1.1rem;border-radius:1rem;backdrop-filter:blur(6px)}
.hero-video-bg{position:relative;overflow:hidden;isolation:isolate}
.hero-video-bg::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg, rgba(255,248,248,.96) 0%, rgba(255,248,248,.93) 45%, rgba(255,248,248,.84) 100%);z-index:-1}
.hero-video-bg .hero-bg-media{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero-video-bg .hero-bg-media video{width:100%;height:100%;object-fit:cover;filter:saturate(.9) brightness(.95)}
.highlight-panel{background:#111;color:#fff;border-top:.34rem solid var(--brand);border-bottom:.34rem solid var(--brand);padding:2.3rem 0;margin:2rem 0}
.highlight-panel h2{font-family:'Oswald',sans-serif;color:#fff;font-size:2.2rem;margin-bottom:.8rem}
.highlight-panel p,.highlight-panel li{color:#f7dddd}
.section{padding:2rem 0}
.section h2{font-family:'Oswald',sans-serif;font-size:2.15rem;margin-bottom:.9rem}
.section p{margin-bottom:.8rem}
.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.cards-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.stat-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.stat-card{padding:1.2rem;text-align:center}
.stat-card strong{display:block;font-family:'Oswald',sans-serif;font-size:2rem;color:var(--brand)}
.notice{background:var(--brand-soft);padding:1rem 1.1rem;border-radius:1rem;border-left:6px solid var(--brand)}
.footer{background:#111;color:#f8e7e7;padding:1.8rem 0;margin-top:2.2rem;border-top:.34rem solid var(--brand)}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1rem}
.footer h3{font-family:'Oswald',sans-serif;margin-bottom:.7rem}
.footer a{color:#f8e7e7}
.form-card label{display:block;font-weight:700;margin-bottom:.35rem}
.form-card input,.form-card textarea,.form-card select,.form-card .input{width:100%;padding:.9rem 1rem;border:1px solid #ddb2b7;border-radius:.8rem;font:inherit;margin:.25rem 0 1rem;background:#fff;color:var(--ink-soft)}
.form-card input::placeholder,.form-card textarea::placeholder,.form-card select::placeholder,.form-card .input::placeholder{color:var(--ink-muted);opacity:1}
.form-card textarea{min-height:160px;resize:vertical}
.center{text-align:center}
.question-card h3{font-size:1.1rem;margin-bottom:.4rem}
.question-meta{font-size:.92rem;color:var(--muted)}
.question-list{display:grid;gap:1rem}
.split-actions{display:flex;gap:.8rem;flex-wrap:wrap}
.table{width:100%;border-collapse:collapse;background:#fff;border-radius:1rem;overflow:hidden;border:1px solid var(--line)}
.table th,.table td{padding:.9rem;text-align:left;border-bottom:1px solid var(--line)}
.table th{background:var(--brand-soft)}
.auth-shell{min-height:calc(100vh - 180px);display:grid;place-items:center;padding:2rem 0}
.auth-card{width:min(620px,94%)}
.small{font-size:.95rem;color:var(--muted)}
.badge{display:inline-block;background:var(--brand-soft);color:var(--brand-dark);padding:.35rem .7rem;border-radius:999px;font-weight:700;font-size:.85rem}
.feature h3{margin:.7rem 0}
.product-preview-card{display:grid;grid-template-columns:120px 1fr;gap:1rem;align-items:center}
.product-preview-card img{width:120px;height:120px;object-fit:cover;border-radius:1rem;border:1px solid var(--line);background:#fff}
.page-intro{padding:2.5rem 0 1rem}
.page-intro .lead{max-width:68ch}
@media (max-width: 980px){
  .hero-grid,.grid-2,.cards-3,.cards-2,.footer-grid,.stat-wrap,.product-preview-card{grid-template-columns:1fr}
  .header-inner{padding:.7rem 0;align-items:flex-start;flex-direction:column}
  .nav-main a{padding:.8rem .85rem;border-radius:.8rem}
  .hero{padding:3.2rem 0 2.2rem}
  .hero-video-shell{min-height:280px}
}

.cart-chip{background:var(--brand);color:#fff;padding:.55rem .85rem;border-radius:999px;font-weight:700;display:inline-flex;gap:.5rem;align-items:center}
.page-video-bg{position:relative;overflow:hidden;isolation:isolate}
.page-video-bg::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg, rgba(255,248,248,.94), rgba(255,248,248,.98));z-index:-1}
.page-video-bg .hero-bg-media{position:absolute;inset:0;z-index:-2;opacity:.16}
.page-video-bg .hero-bg-media video{width:100%;height:100%;object-fit:cover}
.checkout-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem}
.cart-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:1rem;overflow:hidden}
.cart-table th,.cart-table td{padding:.9rem;border-bottom:1px solid var(--line);vertical-align:middle;text-align:left}
.cart-table th{background:var(--brand-soft)}
.cart-mini-img{width:72px;height:72px;border-radius:.8rem;border:1px solid var(--line);object-fit:cover;background:#fff}
.qty-input{width:76px;padding:.55rem .7rem;border:1px solid var(--line);border-radius:.65rem}
.checkout-card{background:#fff;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow);padding:1.2rem}
@media (max-width: 900px){.checkout-grid{grid-template-columns:1fr}}


.page-video-bg .container,
.hero-video-bg .container,
.auth-shell .auth-card{
  position:relative;
  z-index:1;
}
.checkout-card label{
  display:block;
  font-weight:700;
  margin-bottom:.35rem;
}
.checkout-card .input{
  width:100%;
  padding:.9rem 1rem;
  border:1px solid #ddb2b7;
  border-radius:.8rem;
  font:inherit;
  margin:.25rem 0 1rem;
  background:#fff;
  color:var(--ink-soft);
}
.checkout-card .input::placeholder{
  color:var(--ink-muted);
  opacity:1;
}
.checkout-card textarea.input{
  min-height:140px;
  resize:vertical;
}
.checkbox-card{
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:.85rem;
  padding:1rem 1.05rem;
  margin:.35rem 0 1rem;
  border:1px solid var(--line);
  border-radius:1rem;
  background:#fff8f8;
  cursor:pointer;
  transition:.2s ease;
}
.checkbox-card:hover{
  border-color:#d98c95;
  transform:translateY(-1px);
}
.checkbox-card input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.checkbox-ui{
  width:1.35rem;
  height:1.35rem;
  flex:0 0 1.35rem;
  border:2px solid #d39aa2;
  border-radius:.4rem;
  background:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:.1rem;
  transition:.2s ease;
}
.checkbox-ui::after{
  content:'';
  width:.4rem;
  height:.75rem;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(45deg) scale(0);
  transition:.2s ease;
}
.checkbox-copy{
  display:grid;
  gap:.15rem;
}
.checkbox-copy strong{
  color:var(--ink-soft);
}
.checkbox-copy small{
  color:var(--muted);
  font-size:.92rem;
}
.checkbox-card.is-checked{
  background:#fff0f2;
  border-color:#d8838d;
  box-shadow:0 0 0 3px rgba(193,18,31,.08);
}
.checkbox-card.is-checked .checkbox-ui{
  background:var(--brand);
  border-color:var(--brand);
}
.checkbox-card.is-checked .checkbox-ui::after{
  transform:rotate(45deg) scale(1);
}
.billing-address-wrap[hidden]{
  display:none !important;
}

/* Animated colour borders */
@keyframes rainbowFlow{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
@keyframes glowPulse{
  0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.06),0 8px 24px rgba(193,18,31,.18),0 0 18px rgba(0,0,0,.28)}
  50%{box-shadow:0 0 0 1px rgba(255,255,255,.12),0 12px 34px rgba(17,24,39,.24),0 0 28px rgba(59,130,246,.22)}
}

header.site-header,
.hero-video-shell,
.card,
.feature,
.form-card,
.question-card,
.stat-card,
.checkout-card,
.search-box,
.toolbar,
.catalog-card,
.history-card,
.table,
.cart-table,
.highlight-panel,
.notice,
.auth-card,
.video-caption,
.video-chip{
  position:relative;
  isolation:isolate;
}

header.site-header::before,
.hero-video-shell::before,
.card::before,
.feature::before,
.form-card::before,
.question-card::before,
.stat-card::before,
.checkout-card::before,
.search-box::before,
.toolbar::before,
.catalog-card::before,
.history-card::before,
.table::before,
.cart-table::before,
.highlight-panel::before,
.notice::before,
.auth-card::before,
.video-caption::before,
.video-chip::before{
  content:'';
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  background:linear-gradient(120deg,#c1121f,#1f2937,#2563eb,#c1121f);
  background-size:300% 300%;
  animation:rainbowFlow 7s linear infinite;
  z-index:-1;
  opacity:.95;
}

header.site-header{
  animation:glowPulse 4.5s ease-in-out infinite;
}

.nav-main{
  padding:.25rem;
  border-radius:1rem;
  background:rgba(255,255,255,.04);
  box-shadow:0 0 0 1px rgba(255,255,255,.08) inset;
}
.nav-main a{
  overflow:hidden;
}
.nav-main a::after{
  content:'';
  position:absolute;
  left:12%;
  right:12%;
  bottom:.28rem;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#c1121f,#1f2937,#2563eb,#c1121f);
  background-size:240% 240%;
  animation:rainbowFlow 5s linear infinite;
  opacity:.68;
}
.nav-main a:hover::after,
.nav-main a.active::after{
  opacity:1;
}

.hero-video-shell,
.video-caption,
.video-chip,
.card,
.feature,
.form-card,
.question-card,
.stat-card,
.checkout-card,
.search-box,
.toolbar,
.catalog-card,
.history-card,
.table,
.cart-table,
.notice,
.auth-card{
  animation:glowPulse 5.5s ease-in-out infinite;
}

.content-dark-soft,
.form-dark-soft,
input, textarea, select{
  color:var(--ink-soft);
}

p, li, td, th, label, small, span{
  text-rendering:optimizeLegibility;
}


/* White text theme with one accent sentence */
body,
h1, h2, h3, h4, h5, h6,
p, a, label, span, li, td, th, strong, small {
  color:#f7e7e7;
}







.lead,
.small,
.question-meta,
.checkbox-copy strong,
.checkbox-copy small,
.form-card input,.form-card textarea,.form-card select,.form-card .input,
.checkout-card .input,
input, textarea, select,
::placeholder,
.form-card input::placeholder,.form-card textarea::placeholder,.form-card select::placeholder,.form-card .input::placeholder,
.checkout-card .input::placeholder{
  color:#ffffff;
}

.highlight-text{
  color:#4e4b4b !important;
  text-shadow:0 0 10px rgba(5, 5, 5, 0.6);
}


/* Hosting-safe color lock: keep same colors across browsers and servers */
html{color-scheme:dark;forced-color-adjust:none;-webkit-text-size-adjust:100%}
body, header, section, footer, nav, main, aside, article,
.card,.panel,.container,.content,.hero,.hero-video-shell,.video-caption,.video-chip,
.form-card,.checkout-card,.cart-table,.table,.product-card,.category-card,.highlight-panel,
input,textarea,select,button,a,label,p,span,li,h1,h2,h3,h4,h5,h6{
  forced-color-adjust:none;
}

body, p, li, label, span, td, th, .content, .container, .checkout-card, .form-card {
  color:#ffffff !important;
}

input, textarea, select {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  caret-color:#ffffff;
  background:#121826 !important;
  border-color:#2563eb !important;
}

input::placeholder, textarea::placeholder, select::placeholder {
  color:#cbd5e1 !important;
  opacity:1;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-text-fill-color:#ffffff !important;
  -webkit-box-shadow:0 0 0px 1000px #121826 inset !important;
  box-shadow:0 0 0px 1000px #121826 inset !important;
  transition:background-color 9999s ease-in-out 0s;
  border:1px solid #2563eb !important;
}

.hero-video-shell,
.page-video-bg,
.highlight-panel,
.checkout-card,
.form-card,
.table,
.cart-table,
.product-card,
.category-card,
.site-header {
  background-color:#0f172a !important;
}

.video-caption,.video-chip {
  background:rgba(15,23,42,.78) !important;
}

.highlight-text {
  color:#050404 !important;
}
