/* Longevium — One Box Challenge page. Hand-coded, brand-tokenised. Class prefix: obc- */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500;700&display=swap');

.obc{
  --forest:#2E4034;--forest-deep:#21302A;--forest-mid:#3A5142;
  --tan:#D6B98E;--tan-light:#F0E4D2;--tan-mid:#E4CFAE;
  --cream-1:#FBF8F0;--cream-2:#F0EBDD;--cream-3:#E7E0CE;
  --sage-a:#7C8A5E;--sage-b:#8A9A5B;
  --gold:#C9A24B;--gold-light:#D8C48A;--gold-lighter:#E4D2A0;
  --on-dark:#F5F1E8;--on-light-h:#24352B;--on-cream-b:#4A5A4E;--on-tan-b:#5A4B38;
  --serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif;
  font-family:var(--sans);color:var(--on-cream-b);
}
.obc *{box-sizing:border-box;}

/* ---- Section shells ---- */
.obc-sec{position:relative;overflow:hidden;padding:clamp(56px,8vw,96px) clamp(20px,6vw,72px);}
.obc-sec__inner{position:relative;z-index:1;max-width:1160px;margin:0 auto;}
.obc-sec--forest{background:radial-gradient(130% 130% at 82% 0%,var(--forest-mid) 0%,var(--forest) 46%,var(--forest-deep) 100%);color:var(--on-dark);}
.obc-sec--dark{background:var(--forest-deep);color:var(--on-dark);}
.obc-sec--tan{background:radial-gradient(120% 120% at 15% 10%,var(--tan-light) 0%,var(--tan-mid) 52%,var(--tan) 100%);color:var(--on-light-h);}
.obc-sec--cream{background:var(--cream-1);color:var(--on-cream-b);}
.obc-leaf{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle at 12% 88%,var(--sage-b) 0,transparent 24%),radial-gradient(circle at 92% 22%,var(--sage-a) 0,transparent 28%);opacity:.08;}
.obc-sec--forest .obc-leaf,.obc-sec--dark .obc-leaf{opacity:.10;}

/* ---- Type + shared bits ---- */
.obc-eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:2.5px;font-size:11px;font-weight:700;display:inline-block;padding:7px 16px;border-radius:22px;margin:0 0 22px;}
.obc-sec--forest .obc-eyebrow,.obc-sec--dark .obc-eyebrow{background:rgba(201,162,75,.18);border:1px solid rgba(201,162,75,.5);color:var(--gold-lighter);}
.obc-sec--tan .obc-eyebrow{background:rgba(46,64,52,.10);border:1px solid rgba(46,64,52,.28);color:var(--forest-mid);}
.obc-sec--cream .obc-eyebrow{background:rgba(46,64,52,.06);border:1px solid rgba(46,64,52,.18);color:var(--forest);}
.obc-h{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:.3px;margin:0 0 22px;font-size:clamp(30px,4.4vw,50px);}
.obc-sec--forest .obc-h,.obc-sec--dark .obc-h{color:var(--on-dark);}
.obc-sec--tan .obc-h{color:var(--on-light-h);}
.obc-sub{font-family:var(--serif);font-weight:500;font-size:clamp(19px,2.2vw,24px);margin:0 0 14px;color:inherit;opacity:.92;}
.obc-intro{font-size:clamp(14px,1.4vw,16px);line-height:1.65;max-width:640px;margin:0 0 22px;}
.obc-sec--forest .obc-intro,.obc-sec--dark .obc-intro{color:rgba(245,241,232,.86);}
.obc-sec--tan .obc-intro{color:var(--on-tan-b);}

/* ---- Buttons ---- */
.obc-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:4px;}
.obc-cta{font-family:var(--sans);font-weight:700;font-size:14px;letter-spacing:.5px;padding:15px 32px;border-radius:32px;display:inline-block;text-decoration:none;border:1.5px solid transparent;cursor:pointer;}
.obc-cta--primary{background:var(--gold);color:var(--forest);}
.obc-sec--tan .obc-cta--primary{background:var(--forest);color:var(--on-dark);}
.obc-cta--ghost{background:transparent;border-color:rgba(245,241,232,.5);color:var(--on-dark);}
.obc-sec--tan .obc-cta--ghost{border-color:rgba(46,64,52,.45);color:var(--on-light-h);}
.obc-sec--cream .obc-cta--ghost{border-color:rgba(46,64,52,.35);color:var(--forest);}

/* ---- Hero ---- */
.obc-hero{min-height:clamp(420px,64vh,600px);display:flex;align-items:center;}
.obc-hero .obc-h{font-size:clamp(38px,6vw,64px);}
.obc-hero .obc-intro{font-size:clamp(15px,1.6vw,17px);}

/* ---- Why: 6 tiles ---- */
.obc-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px;}
.obc-tile{background:rgba(255,255,255,.45);border:1px solid rgba(46,64,52,.10);border-radius:14px;padding:22px;}
.obc-tile h4{font-family:var(--serif);font-weight:600;font-size:20px;color:var(--on-light-h);margin:0 0 8px;}
.obc-tile p{font-size:13.5px;line-height:1.55;color:var(--on-tan-b);margin:0;}

/* ---- Getting started: 3 steps ---- */
.obc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px;}
.obc-step{background:var(--cream-2);border-radius:14px;padding:24px;}
.obc-step__n{font-family:var(--serif);font-weight:600;font-size:30px;color:var(--gold);line-height:1;margin-bottom:10px;}
.obc-step h4{font-family:var(--serif);font-weight:600;font-size:21px;color:var(--on-light-h);margin:0 0 8px;}
.obc-step p{font-size:13.5px;line-height:1.6;margin:0 0 14px;}
.obc-step .obc-cta{padding:11px 22px;font-size:12.5px;}

/* ---- Collection cards ---- */
.obc-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:26px 0;}
.obc-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(0,0,0,.07);text-decoration:none;color:inherit;display:flex;flex-direction:column;}
.obc-card__img{aspect-ratio:1/1;background:linear-gradient(160deg,var(--cream-3),var(--tan-mid));display:flex;align-items:center;justify-content:center;color:var(--forest);font-family:var(--serif);font-size:15px;letter-spacing:2px;}
.obc-card__body{padding:14px 16px;}
.obc-card__name{font-family:var(--serif);font-weight:600;font-size:17px;color:var(--on-light-h);margin:0 0 4px;}
.obc-card__price{font-weight:700;color:var(--forest);font-size:14px;}

/* ---- Best sellers ---- */
.obc-best{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px;}
.obc-best__item{background:rgba(255,255,255,.5);border-radius:14px;padding:24px;}
.obc-best__item h4{font-family:var(--serif);font-weight:600;font-size:22px;color:var(--on-light-h);margin:0 0 8px;}
.obc-best__item p{font-size:14px;line-height:1.6;color:var(--on-tan-b);margin:0 0 16px;}

/* ---- FAQ ---- */
.obc-faq{max-width:820px;margin:26px auto 0;}
.obc-faq__item{border-bottom:1px solid var(--cream-3);}
.obc-faq__q{width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:18px 0;font-family:var(--sans);font-weight:700;font-size:16px;color:var(--on-light-h);display:flex;justify-content:space-between;gap:16px;align-items:center;}
.obc-faq__q::after{content:"+";font-size:22px;color:var(--gold);font-weight:400;}
.obc-faq__item[open] .obc-faq__q::after{content:"\2013";}
.obc-faq__a{padding:0 0 18px;font-size:14px;line-height:1.65;color:var(--on-cream-b);}

/* ---- Newsletter ---- */
.obc-news{max-width:560px;}
.obc-news__form{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap;}
.obc-news__form input{flex:1;min-width:200px;padding:14px 16px;border-radius:32px;border:1px solid rgba(245,241,232,.4);background:rgba(255,255,255,.08);color:var(--on-dark);font-family:var(--sans);font-size:14px;}
.obc-news__form input::placeholder{color:rgba(245,241,232,.6);}

/* ---- Founder video ---- */
.obc-video{max-width:900px;margin:26px auto 0;}
.obc-video__poster{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 140% at 50% 0%,var(--forest-mid),var(--forest) 55%,var(--forest-deep));}
.obc-video__play{width:74px;height:74px;border-radius:50%;background:var(--gold);color:var(--forest);display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .2s ease;}
.obc-video__poster:hover .obc-video__play{transform:scale(1.06);}
.obc-video__label{position:absolute;bottom:18px;left:20px;font-family:var(--serif);font-size:20px;color:var(--on-dark);}

/* ---- Lightbox ---- */
.obc-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(15,22,18,.88);display:none;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .25s ease;}
.obc-lightbox.is-open{display:flex;opacity:1;}
.obc-lightbox__inner{position:relative;width:min(960px,100%);aspect-ratio:16/9;}
.obc-lightbox__frame{position:absolute;inset:0;}
.obc-lightbox__inner iframe{width:100%;height:100%;border:0;border-radius:12px;}
.obc-lightbox__close{position:absolute;top:-44px;right:0;width:36px;height:36px;border-radius:50%;background:var(--gold);color:var(--forest);border:0;font-size:20px;cursor:pointer;}

/* ---- Journal ---- */
.obc-journal{max-width:640px;margin:26px auto 0;background:var(--cream-1);border:2px solid var(--gold);border-radius:18px;padding:clamp(22px,4vw,34px);}
.obc-journal__disclaimer{font-size:12px;line-height:1.5;color:var(--on-tan-b);background:rgba(46,64,52,.06);border-radius:10px;padding:12px 14px;margin:0 0 20px;}
.obc-journal__row{margin:16px 0;}
.obc-journal__row > label{display:block;font-weight:700;font-size:13.5px;color:var(--on-light-h);margin-bottom:8px;}
.obc-scale{display:flex;gap:4px;}
.obc-scale__seg{flex:1;height:34px;border-radius:6px;border:1px solid var(--tan-mid);background:var(--cream-3);color:var(--on-tan-b);font-size:12px;font-weight:700;cursor:pointer;}
.obc-scale__seg[aria-pressed="true"]{background:var(--forest);color:var(--on-dark);border-color:var(--forest);}
.obc-journal__field{display:flex;gap:10px;align-items:center;margin:18px 0;flex-wrap:wrap;}
.obc-journal__field label{font-weight:700;font-size:13.5px;color:var(--on-light-h);}
.obc-journal__field input[type=number],.obc-journal__field input[type=email]{padding:12px 14px;border-radius:10px;border:1px solid var(--tan-mid);font-family:var(--sans);font-size:14px;}
.obc-journal__field input[type=email]{flex:1;min-width:220px;}
.obc-journal__consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.5;color:var(--on-cream-b);margin:16px 0;}
.obc-journal__consent input{margin-top:3px;}
.obc-journal__submit{background:var(--forest);color:var(--on-dark);border:0;border-radius:32px;padding:15px 32px;font-family:var(--sans);font-weight:700;font-size:14px;letter-spacing:.5px;cursor:pointer;}
.obc-journal__submit[disabled]{opacity:.55;cursor:not-allowed;}
.obc-journal__status{margin-top:14px;font-size:13.5px;min-height:20px;}
.obc-journal__status--ok{color:var(--forest);font-weight:700;}
.obc-journal__status--err{color:#9b3b2f;font-weight:700;}

/* ---- Scroll reveal ---- */
.obc-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}
.obc-reveal.is-in{opacity:1;transform:none;}

/* ---- Responsive ---- */
@media (max-width:820px){
  .obc-tiles,.obc-steps{grid-template-columns:1fr 1fr;}
  .obc-cards{grid-template-columns:1fr 1fr;}
  .obc-best{grid-template-columns:1fr;}
}
@media (max-width:520px){
  .obc-tiles,.obc-steps,.obc-cards{grid-template-columns:1fr;}
  .obc-scale__seg{height:30px;font-size:11px;}
  .obc-cta-row .obc-cta{width:100%;text-align:center;}
}
@media (prefers-reduced-motion:reduce){
  .obc-reveal{opacity:1;transform:none;transition:none;}
  .obc-lightbox{transition:none;}
  .obc-video__poster:hover .obc-video__play{transform:none;}
}
