@import url('https://fonts.cdnfonts.com/css/northwell');

:root{--forest:#0c2b22;--forest2:#143b2f;--red:#8d2027;--cream:#f6efe2;--gold:#c99e4c;--ink:#211b16}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#071a15;color:var(--cream)}
body{background:linear-gradient(180deg,#071a15,#0e3026)}
button{font:inherit}.shell{max-width:720px;min-height:100vh;margin:auto;padding:18px 14px 34px}.serif,h1,h2{font-family:Georgia,"Times New Roman",serif}
.eyebrow{text-align:center;text-transform:uppercase;letter-spacing:.22em;font-size:.68rem;font-weight:700;color:#dfbd78}.goldrule{height:1px;width:125px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:16px auto}
.hero{min-height:92vh;border-radius:28px;overflow:hidden;display:flex;align-items:flex-end;padding:30px 22px;
background:
linear-gradient(180deg,rgba(3,12,9,.04) 0%,rgba(3,12,9,.18) 43%,rgba(3,12,9,.76) 80%,rgba(3,12,9,.92) 100%),
url('assets/home-hero-real.jpg') center 47%/cover no-repeat;
box-shadow:0 26px 70px rgba(0,0,0,.35);
border:1px solid rgba(211,171,94,.22);
position:relative}
.hero-content{width:100%;text-align:center}.hero h1{font-size:clamp(2.5rem,10vw,4.8rem);line-height:.92;font-weight:400;margin:8px 0}.hero p{letter-spacing:.16em;text-transform:uppercase;line-height:1.6;font-size:.82rem}
.cta{width:100%;border:0;border-radius:9px;padding:15px 16px;background:linear-gradient(#9b2830,#741820);color:#fff;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:700}.cta.green{background:linear-gradient(#20503f,#12372b)}.cta.alt{margin-top:10px;background:transparent;color:#483d32;border:1px solid #c5b398}
.paper{min-height:100vh;margin:-18px -14px -34px;padding:30px 16px 40px;color:var(--ink);background:linear-gradient(rgba(248,243,233,.86),rgba(248,243,233,.93)),url('assets/paper-cream.jpg') 0 0/360px repeat}
.paper h1{text-align:center;color:#12372c;font-size:clamp(2.35rem,9vw,4rem);line-height:.94;font-weight:400;margin:10px 0}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:26px auto 0;max-width:560px}
.gift{aspect-ratio:1/1.08;border:0;border-radius:6px;position:relative;overflow:hidden;box-shadow:0 4px 10px rgba(60,40,24,.22);color:#fff;background-size:cover;background-position:center}
.gift:nth-child(5n+1){background-image:url('assets/wrap-kraft.jpg')}.gift:nth-child(5n+2){background-image:url('assets/wrap-red.jpg')}.gift:nth-child(5n+3){background-image:url('assets/wrap-green.jpg')}.gift:nth-child(5n+4){background-image:url('assets/wrap-cream.jpg');color:#5c432f}.gift:nth-child(5n){background-image:url('assets/wrap-plaid.jpg')}
.gift:before,.gift:after{content:"";position:absolute;background:#d8b66c;opacity:.9}.gift:before{width:9%;top:0;bottom:0;left:45.5%}.gift:after{height:9%;left:0;right:0;top:45.5%}.gift .num{font-family:Georgia,serif;font-size:clamp(1.1rem,5vw,1.75rem);position:relative;z-index:2;text-shadow:0 1px 4px rgba(0,0,0,.35)}.gift.done{filter:saturate(.58);opacity:.72}.gift.done .num:after{content:"✓";position:absolute;top:-18px;right:-18px;background:var(--gold);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font:700 11px Arial;color:white}
.tagline{text-align:center;font-family:Georgia,serif;font-style:italic;color:#7b6e5c;margin-top:22px}.top{display:grid;grid-template-columns:42px 1fr 42px;align-items:center}.back{border:0;background:transparent;color:#fff;font-size:1.7rem}.adventure-no{text-align:center}.adventure-no b{display:block;font:400 3rem Georgia;color:#fff;margin-top:4px}
.meta{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(201,158,76,.28);border-bottom:1px solid rgba(201,158,76,.28);margin:17px 0 24px}.meta>div{text-align:center;padding:14px 4px}.meta>div+div{border-left:1px solid rgba(201,158,76,.24)}.meta strong{display:block;font-size:.62rem;color:#d8b46b;letter-spacing:.15em;margin-bottom:6px}.meta span{font-size:.83rem;font-weight:700}
.scratchbox{position:relative;height:340px;border-radius:17px;overflow:hidden;background:url('assets/paper-cream.jpg') center/cover;box-shadow:0 18px 45px rgba(0,0,0,.25);border:1px solid rgba(215,181,109,.45)}.scratch-under{position:absolute;inset:0;display:grid;place-items:center;color:#143b2f;text-align:center;padding:25px}.scratch-under h2{font-size:2.3rem;line-height:1;margin:0}.scratch-bg{position:absolute;inset:0;background:url('assets/foil-gold.jpg') center/cover}#scratch{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.scratch-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;pointer-events:none;color:#12372c}.scratch-copy .tree{font-size:3rem}.scratch-copy b{letter-spacing:.14em;font-size:.9rem}.scratch-copy small{margin-top:9px;letter-spacing:.13em}.hint{text-align:center;color:#d5c09a;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;margin:14px 0}
.detail{margin-top:18px;border-radius:18px;overflow:hidden;background:linear-gradient(rgba(248,243,233,.88),rgba(248,243,233,.95)),url('assets/paper-cream.jpg') 0 0/360px repeat;color:var(--ink);box-shadow:0 18px 45px rgba(0,0,0,.2)}.heroimg{height:205px;background-size:cover;background-position:center}.detailbody{padding:24px}.detail h2{text-align:center;color:#832028;font-size:2rem;line-height:1;margin:0 0 14px}.detail h3{font-size:.68rem;color:#91262b;letter-spacing:.17em;text-transform:uppercase;margin:20px 0 6px}.detail p{font-family:Georgia,serif;line-height:1.55;margin:0}.rule{height:1px;background:#ded0ba;margin:20px 0}.hidden{display:none!important}
.complete{min-height:82vh;border-radius:24px;padding:36px 22px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:linear-gradient(rgba(7,28,22,.54),rgba(7,28,22,.78)),url('assets/hero-bokeh.jpg') center/cover;box-shadow:0 24px 65px rgba(0,0,0,.28)}.check{width:82px;height:82px;border-radius:50%;margin:0 auto 22px;background:linear-gradient(#d8b870,#a97931);display:grid;place-items:center;font-size:2.5rem}.complete h1{font-size:2.5rem;line-height:1;margin:0}.complete p{font-family:Georgia,serif;font-style:italic;color:#eadfce;margin:24px auto 8px}.complete small{color:#d9b56e;letter-spacing:.14em}
@media(max-width:520px){.shell{padding:18px 14px 30px}.scratchbox{height:320px}.grid{gap:7px}.detailbody{padding:21px}}

.scratch-bg{display:none!important}
.scratch-copy{z-index:3;transition:opacity .35s ease}
#scratch{z-index:2}
.scratch-under{z-index:1}
.heroimg{background-color:#17362c}

.hero-content{position:relative;z-index:2}
.hero:after{
  content:"";position:absolute;inset:0;pointer-events:none;
  box-shadow:inset 0 0 80px rgba(0,0,0,.28)
}
.heroimg{
  height:235px!important;
  background-size:cover!important;
  background-position:center 48%!important;
  filter:saturate(.92) contrast(1.02) brightness(.96);
  border-bottom:1px solid rgba(128,93,48,.18);
}
.detail{overflow:hidden}
.complete{
  background:
  linear-gradient(rgba(6,25,19,.58),rgba(6,25,19,.82)),
  url('assets/home-hero-real.jpg') center 60%/cover no-repeat!important;
}

.heroimg{
  height:235px!important;
  background-image:url('assets/challenge-family-cocoa.jpg')!important;
  background-size:cover!important;
  background-position:center 52%!important;
  filter:saturate(.96) contrast(1.02) brightness(.98);
}

/* V10: individual photorealistic gift tiles */
.gift,
.gift:nth-child(5n+1),
.gift:nth-child(5n+2),
.gift:nth-child(5n+3),
.gift:nth-child(5n+4),
.gift:nth-child(5n){
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  border:1px solid rgba(109,77,42,.16)!important;
  border-radius:7px!important;
  box-shadow:0 5px 12px rgba(56,37,22,.24),0 1px 2px rgba(56,37,22,.18)!important;
  color:#fff!important;
}
.gift::before,.gift::after{display:none!important}
.gift .num{
  position:relative;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.08rem,4.7vw,1.72rem)!important;
  line-height:1;
  color:#fff;
  text-shadow:0 2px 5px rgba(0,0,0,.72),0 0 10px rgba(0,0,0,.30);
}
.gift.done{opacity:.72;filter:saturate(.65) brightness(.92)}
.gift.done .num::after{
  content:"✓";
  position:absolute;
  top:-13px;
  right:-15px;
  width:19px;
  height:19px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#c99e4c;
  color:#fff;
  font:700 10px Arial,sans-serif;
  text-shadow:none;
  box-shadow:0 2px 5px rgba(0,0,0,.25);
}

/* V11 editorial intro + closing letter */
.editorial-page{min-height:100vh;margin:-18px -14px -34px;background:linear-gradient(rgba(248,243,233,.90),rgba(248,243,233,.94)),url('assets/paper-cream.jpg') 0 0/360px repeat;color:var(--ink);overflow:hidden}
.editorial-photo{height:175px;background-size:cover;background-position:center}
.intro-photo{background-image:linear-gradient(rgba(0,0,0,.04),rgba(0,0,0,.08)),url('assets/intro-header.jpg')}
.final-photo{background-image:linear-gradient(rgba(0,0,0,.02),rgba(0,0,0,.08)),url('assets/final-header.jpg')}
.editorial-inner{padding:24px 24px 34px;max-width:650px;margin:0 auto}
.editorial-brand{color:#5b4c3d}.editorial-page h1{font-size:clamp(2.2rem,8vw,3.4rem);line-height:.96;text-align:center;color:#8a2128;font-weight:400;margin:8px 0 22px}.editorial-page h1 em{font-weight:400;color:#b38337}.final-page h1 em{color:#8a2128}.editorial-page p{font-family:Georgia,"Times New Roman",serif;font-size:1rem;line-height:1.5;margin:0 0 14px;color:#33291f}.editorial-page strong{font-weight:700}.pullquote{font-size:1.22rem!important;line-height:1.25!important;text-align:center;color:#95252d!important;font-style:italic;font-weight:700;margin:18px 0!important}.pullquote.small{font-size:1.08rem!important}.section-rule{height:1px;background:#d5bb88;margin:22px 0 16px}.section-title{text-align:center!important;font-family:Arial,Helvetica,sans-serif!important;font-size:.78rem!important;text-transform:uppercase;letter-spacing:.18em;color:#9a6f31!important;margin:0 0 16px!important}.tips-list{display:grid;gap:12px}.tips-list>div{display:grid;grid-template-columns:135px 1fr;gap:10px;border-bottom:1px solid rgba(153,111,49,.14);padding-bottom:10px}.tips-list strong{color:#8d2027;font-family:Georgia,serif}.tips-list span{font-family:Georgia,serif;line-height:1.4;color:#403328}.steps-row{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;text-align:center}.steps-row>div{padding:5px 3px}.steps-row b{display:block;color:#8d2027;font:400 1.15rem Georgia;margin-bottom:4px}.steps-row span{font-family:Georgia,serif;font-size:.72rem;line-height:1.25;color:#3c3026}.good-to-know{display:grid;grid-template-columns:1fr 1fr;gap:20px}.good-to-know>div+div{border-left:1px solid #d9c6a4;padding-left:20px}.good-to-know strong{font-family:Georgia,serif;color:#8d2027}.good-to-know p{font-size:.88rem;margin-top:5px}.closing-line{text-align:center;font-style:italic;color:#655746!important;margin:22px 0 16px!important}.keep-list{color:#8d2027!important;margin-left:18px!important}.signature{font-family:"Brush Script MT","Segoe Script",cursive;font-size:2rem;color:#3a3027;margin-top:20px}.founder-line{font-family:Georgia,serif;font-size:.82rem;color:#6c5d4d;margin:2px 0 18px}.editorial-page blockquote{font-family:Georgia,serif;font-style:italic;text-align:center;border:0;margin:18px auto 22px;padding:0 14px;color:#483b30}.editorial-page blockquote cite{display:block;margin-top:8px;font-style:normal;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.brand-end{text-align:center;font-size:.72rem;letter-spacing:.2em;font-weight:700;margin:18px 0 20px}.brand-end span{display:block;font-family:Georgia,serif;font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;font-size:.92rem;margin-top:6px;color:#6b5d4c}

.special-gift{overflow:visible!important}.special-label{position:absolute;left:4px;right:4px;bottom:-25px;background:#f5eee2;color:#6a5540;border:1px solid rgba(107,80,45,.16);border-radius:4px;padding:4px 2px;font-size:.48rem;text-transform:uppercase;letter-spacing:.08em;text-shadow:none;font-weight:700}.grid{row-gap:32px!important;margin-bottom:8px!important}.modal-backdrop{position:fixed;inset:0;background:rgba(4,16,12,.72);z-index:50;display:grid;place-items:center;padding:22px}.special-modal{width:min(92vw,420px);background:linear-gradient(rgba(249,244,235,.96),rgba(249,244,235,.98)),url('assets/paper-cream.jpg') center/320px;color:#2e261f;border-radius:20px;padding:28px 24px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.35)}.modal-star{color:#c99e4c;font-size:1.6rem}.special-modal h2{font-size:2rem;color:#812027;margin:8px 0 12px}.special-modal p{font-family:Georgia,serif;line-height:1.5;margin:0 0 22px}.text-button{border:0;background:transparent;color:#725f4c;padding:14px 8px 4px;text-decoration:underline;text-underline-offset:3px}

@media(max-width:520px){.editorial-photo{height:150px}.editorial-inner{padding:21px 18px 30px}.tips-list>div{grid-template-columns:112px 1fr;gap:9px}.steps-row{grid-template-columns:repeat(3,1fr);row-gap:14px}.good-to-know{grid-template-columns:1fr;gap:12px}.good-to-know>div+div{border-left:0;border-top:1px solid #d9c6a4;padding-left:0;padding-top:12px}.special-label{bottom:-23px}.grid{row-gap:30px!important}}

/* V12 founders family photo */
.founders-family-photo{display:block;width:78%;max-width:360px;aspect-ratio:3/2;object-fit:cover;object-position:center 42%;margin:14px auto 24px;border-radius:8px;border:1px solid rgba(133,96,48,.22);box-shadow:0 8px 22px rgba(62,43,25,.16)}

/* V13 final signature treatment */
.signature,
.founder-signature,
.letter-signature,
.signoff-name,
.closing-signature {
  font-family: 'Northwell', 'Segoe Script', 'Brush Script MT', cursive !important;
  font-weight: 400 !important;
  font-style: normal !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
}
