:root{
  --ink:#1c2321;
  --ink-soft:#4b5751;
  --cream:#faf7f1;
  --cream-2:#f1ece1;
  --teal:#1f4d43;
  --teal-deep:#153731;
  --gold:#c99b4a;
  --gold-soft:#e8d3a4;
  --line:#e3ddcf;
  --radius:14px;
  --gold-wash:rgba(201,155,74,.18);
  --teal-wash:rgba(31,77,67,.10);
}
*{box-sizing:border-box;}
html{scrollbar-gutter:stable;}
body{margin:0;font-family:'Inter',sans-serif;font-size:18px;color:var(--ink);background-color:var(--cream);background-image:radial-gradient(var(--line) 1.5px, transparent 1.5px);background-size:26px 26px;line-height:1.65;}
h1,h2,h3,h4{font-family:'Times New Roman', Times, 'Liberation Serif', serif;font-weight:600;letter-spacing:-0.01em;margin:0 0 .5em;color:var(--teal-deep);}
h2{font-size:clamp(30px,4vw,46px);}
p{margin:0 0 1em;}
a{color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
.section{padding:56px 0;}
.section-tight{padding:40px 0;}
.eyebrow{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:14px;}
.btn{display:inline-block;padding:16px 32px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;transition:transform .15s ease, box-shadow .15s ease;border:2px solid transparent;}
.btn-primary{background:var(--teal);color:#fff;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(31,77,67,.25);}
.btn-gold{background:var(--gold);color:var(--teal-deep);}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(201,155,74,.35);}
.btn-outline{background:transparent;color:var(--teal);border-color:var(--teal);}
.btn-outline:hover{background:var(--teal);color:#fff;}
.btn-row{display:flex;gap:16px;flex-wrap:wrap;}

/* header */
header{position:sticky;top:0;z-index:40;background:rgba(250,247,241,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);}
.nav{position:relative;display:flex;align-items:center;justify-content:space-between;padding:18px 0;}
.logo{font-family:'Times New Roman', Times, 'Liberation Serif', serif;font-size:22px;font-weight:600;color:var(--teal-deep);text-decoration:none;}
.nav-links{display:flex;gap:28px;align-items:center;font-size:16px;font-weight:500;}
.nav-links a{text-decoration:none;color:var(--ink-soft);}
.nav-links a:hover{color:var(--teal);}
.nav-toggle{display:none;background:none;border:none;font-size:26px;line-height:1;color:var(--teal-deep);cursor:pointer;padding:4px 6px;order:3;}
.nav-cta{padding:11px 24px;font-size:15px;}

/* hero */
.hero{position:relative;padding:100px 0 90px;overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;position:relative;z-index:1;}
.hero h1{font-size:clamp(40px,5.5vw,62px);line-height:1.08;}
.hero-sub{font-size:21px;color:var(--ink-soft);max-width:46ch;margin-bottom:32px;}
.hero-img{border-radius:var(--radius);overflow:hidden;box-shadow:0 30px 60px rgba(21,55,49,.18);}
.hero-dates{margin-top:26px;font-size:16px;color:var(--ink-soft);}
.hero-dates strong{color:var(--teal-deep);}

/* meet */
.meet-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center;position:relative;z-index:1;}
.meet-grid img{border-radius:var(--radius);}
.kicker{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:10px;}

.band{background:var(--teal);color:#fff;}
.band h2, .band h3{color:#fff;}
.band-sub{color:#d9e6e1;}

/* trip cards */
.trips-head{text-align:center;max-width:640px;margin:0 auto 48px;}
.trip-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.trip-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;}
.trip-photo{aspect-ratio:16/10;overflow:hidden;}
.trip-photo img{width:100%;height:100%;object-fit:cover;}
.trip-body{padding:28px 28px 30px;display:flex;flex-direction:column;flex:1;}
.trip-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.pill{font-size:13px;font-weight:600;background:var(--cream-2);color:var(--teal-deep);padding:7px 13px;border-radius:999px;}
.trip-body h3{font-size:27px;margin-bottom:6px;}
.trip-dates{font-size:16px;color:var(--gold);font-weight:600;margin-bottom:14px;}
.trip-body p{color:var(--ink-soft);font-size:17px;flex:1;}
.trip-both{text-align:center;font-size:16px;color:var(--ink-soft);max-width:640px;margin:36px auto 0;}

/* who is this for */
.who-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;}
.who-grid img{border-radius:var(--radius);}

/* talk to human */
.talk{background:var(--cream-2);text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.talk h2{font-size:32px;}
.talk-sub{color:var(--ink-soft);margin-bottom:28px;}
.talk .btn-row{justify-content:center;}

/* mission */
.mission{text-align:center;max-width:680px;margin:0 auto;}

/* signup */
.signup{background:var(--teal-deep);color:#fff;text-align:center;}
.signup-divided{border-top:1px solid rgba(255,255,255,.18);}

/* lined notebook paper section */
.lined-paper{position:relative;background:repeating-linear-gradient(to bottom, transparent 0, transparent 38px, rgba(21,55,49,.14) 39px), #fdfcf5;padding:72px 40px 80px 100px;box-shadow:inset 0 12px 20px -14px rgba(0,0,0,.18);}
.lined-paper::before{content:"";position:absolute;top:0;bottom:0;left:66px;width:2px;background:rgba(190,80,80,.4);}
.lined-paper .wrap{max-width:680px;margin:0 auto;text-align:center;}
.lined-paper .kicker-hw{font-family:'Caveat',cursive;font-size:34px;color:var(--gold);display:block;transform:rotate(-1.5deg);margin-bottom:4px;}
.lined-paper h2{font-family:'Times New Roman',serif;font-size:clamp(40px,6.5vw,68px);line-height:1.05;margin:8px 0 22px;color:var(--ink);}
.lined-paper p{color:var(--ink-soft);font-size:19px;line-height:1.7;margin:0 auto 30px;max-width:520px;}
.lined-paper .btn-row{justify-content:center !important;}
.lined-paper .btn{padding:20px 40px;font-size:18px;}
@media (max-width:640px){
  .lined-paper{padding:56px 24px 64px 52px;}
  .lined-paper::before{left:30px;}
}
.signup h2{color:#fff;}
.signup p{color:#cfe0da;}
.signup-form{display:flex;justify-content:center;gap:10px;margin-top:22px;flex-wrap:wrap;}
.signup-form input[type=email]{padding:14px 18px;border-radius:999px;border:none;min-width:280px;font-family:inherit;font-size:15px;}
.signup-note{font-size:12px;color:#9fb8b0;margin-top:14px;}

/* quote */
.quote{text-align:center;max-width:760px;margin:0 auto;}
.quote p{font-family:'Fraunces',serif;font-size:clamp(22px,3vw,30px);color:var(--teal-deep);font-style:italic;line-height:1.4;}

/* come one */
.come-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;position:relative;z-index:1;}
.come-grid img{border-radius:var(--radius);}

/* weight off */
.weight{background:var(--cream-2);text-align:center;}
.weight-inner{max-width:680px;margin:0 auto;}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;}
.contact-card h3{font-size:20px;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:14px;font-weight:600;color:var(--ink-soft);margin-bottom:6px;}
.field input, .field textarea{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:16px;background:var(--cream);}
.form-note{font-size:12px;color:#9a9484;margin-top:10px;}

footer{background:var(--teal-deep);color:#cfe0da;padding:56px 0 28px;}
.footer-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;margin-bottom:32px;}
.footer-social a{color:#cfe0da;text-decoration:none;margin-left:18px;font-size:15px;}
.footer-social a:first-child{margin-left:0;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;font-size:13px;color:#89a49c;text-align:center;}

/* ===== Stories page additions ===== */
.page-hero{padding:44px 0 16px;text-align:center;}
.page-hero p{max-width:560px;margin:0 auto;color:var(--ink-soft);font-size:20px;}

.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.testi-grid-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:1000px){ .testi-grid-4{grid-template-columns:repeat(2,1fr);} }
.testi-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;}
.testi-card p{font-family:'Times New Roman',serif;font-style:italic;color:var(--teal-deep);font-size:19px;margin-bottom:14px;}
.testi-handle{font-size:14px;color:var(--ink-soft);font-weight:600;}

/* full traveler reviews */
.review-grid{display:grid;grid-template-columns:1.3fr .9fr;gap:32px;align-items:stretch;}
.review-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:38px 36px;box-shadow:0 14px 30px rgba(21,55,49,.08);position:relative;}
.review-card p{color:var(--ink-soft);font-size:16px;line-height:1.7;margin-bottom:14px;}
.review-sign{font-family:'Caveat',cursive;font-size:24px;color:var(--teal-deep);line-height:1.35;margin-top:6px;}
.review-trip{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-top:16px;}
.review-card-quote{background:#e3d3b0;box-shadow:0 18px 34px rgba(21,55,49,.16);transform:rotate(-1deg);display:flex;flex-direction:column;justify-content:center;}
.review-card-quote::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(135deg, rgba(0,0,0,.025) 0 2px, transparent 2px 7px);border-radius:var(--radius);pointer-events:none;}
.review-pull{font-family:'Times New Roman',serif;font-style:italic;color:var(--teal-deep);font-size:clamp(18px,2.2vw,22px);line-height:1.5;position:relative;z-index:1;}
.review-card-quote .review-sign, .review-card-quote .review-trip{position:relative;z-index:1;}
.review-card-stamped{grid-column:1/-1;background:#fffdf8;border:2px dashed var(--gold);box-shadow:none;padding:40px 44px;max-width:820px;margin:0 auto;}
.review-card-stamped .review-star-stamp{float:right;margin:0 0 16px 22px;width:100px;border:2px solid var(--teal);border-radius:4px;padding:10px 6px;text-align:center;color:var(--gold);font-size:15px;letter-spacing:.05em;transform:rotate(4deg);}
.review-card-stamped .review-star-stamp span{display:block;font-family:'Caveat',cursive;font-size:14px;color:var(--teal-deep);letter-spacing:0;margin-top:4px;}
.review-card-stamped .review-sign, .review-card-stamped .review-trip{clear:both;}
.review-card-repeat{grid-column:1/-1;background:var(--teal-wash);border:none;max-width:820px;margin:0 auto;}
.review-card-repeat .review-repeat-badge{float:right;margin:0 0 16px 22px;width:104px;text-align:center;background:var(--teal-deep);color:#fff;font-family:'Caveat',cursive;font-size:19px;line-height:1.25;padding:14px 8px;border-radius:50%;transform:rotate(5deg);}
.review-card-repeat .review-sign, .review-card-repeat .review-trip{clear:both;}
.review-card-video{grid-column:1/-1;display:flex;gap:34px;align-items:flex-start;background:var(--teal-deep);box-shadow:0 20px 40px rgba(21,55,49,.22);}

.journal-note{background:#fffdf7;max-width:340px;padding:32px 30px 26px;border-radius:3px;box-shadow:0 24px 42px rgba(21,55,49,.22),0 3px 6px rgba(0,0,0,.1);position:relative;margin:20px auto;}
.journal-note-tape{position:absolute;top:-14px;left:50%;transform:translateX(-50%) rotate(-3deg);width:72px;height:24px;background:rgba(201,155,74,.6);box-shadow:0 3px 5px rgba(0,0,0,.12);}
.journal-note p{font-family:'Times New Roman',serif;font-style:italic;color:var(--teal-deep);font-size:19px;line-height:1.5;margin:0 0 14px;}
.journal-note-foot{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:4px;}
.journal-note .journal-sign{font-family:'Caveat',cursive;font-size:21px;color:var(--gold);}
.journal-note .journal-trip{font-size:11px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;}
.journal-note .journal-more{font-size:13px;font-weight:600;color:var(--teal-deep);text-decoration:none;border-bottom:1px solid var(--teal-deep);padding-bottom:1px;white-space:nowrap;}
.journal-note .journal-more:hover{opacity:.7;}
@media (max-width:640px){
  .journal-note{max-width:280px;padding:26px 24px 22px;}
  .journal-note p{font-size:17px;}
}

.review-card-postmark{grid-column:1/-1;max-width:820px;margin:0 auto;padding-top:58px;}
.review-card-postmark::before{content:"AIR MAIL · BALI 2026";position:absolute;top:0;left:0;right:0;background:var(--teal-deep);color:var(--gold-soft);font-size:11px;letter-spacing:.15em;text-transform:uppercase;text-align:center;padding:11px;border-radius:var(--radius) var(--radius) 0 0;font-weight:700;}
.review-card-video .review-video{flex:0 0 220px;width:220px;}
.review-card-video .review-video video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:10px;background:#000;box-shadow:0 14px 28px rgba(0,0,0,.35);}
.review-card-video .review-video-text{flex:1;}
.review-card-video .review-video-text p{color:#e3ece8;}
.review-card-video .review-sign{color:var(--gold-soft);}
.review-card-video .review-trip{color:var(--gold-soft);}
@media (max-width:860px){
  .review-grid{grid-template-columns:1fr;}
  .review-card{padding:30px 26px;}
  .review-card-postmark{padding-top:56px;}
  .review-card-stamped{padding:30px 26px;}
  .review-card-stamped .review-star-stamp{float:none;margin:0 0 16px;width:110px;}
  .review-card-repeat .review-repeat-badge{float:none;margin:0 0 16px;}
  .review-card-video{flex-direction:column;align-items:center;text-align:center;}
  .review-card-video .review-video{width:200px;}
}

.blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.blog-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;}
.blog-photo{aspect-ratio:16/11;overflow:hidden;}
.blog-photo img{width:100%;height:100%;object-fit:cover;}
.blog-body{padding:26px;flex:1;display:flex;flex-direction:column;}
.blog-body .kicker{margin-bottom:6px;}
.blog-body h3{font-size:22px;margin-bottom:10px;}
.blog-body p{color:var(--ink-soft);font-size:17px;flex:1;}
.blog-card.placeholder{border-style:dashed;}
.blog-card.placeholder .blog-photo{background:var(--cream-2);display:flex;align-items:center;justify-content:center;color:#b7ae9a;font-size:14px;}
.blog-card.placeholder .blog-photo img{display:none;}
.blog-card-link{text-decoration:none;color:inherit;display:block;transition:transform .15s ease, box-shadow .15s ease;}
.blog-card-link:hover{transform:translateY(-4px);}
.blog-card-link .blog-card{height:100%;}
.blog-read-more{margin-top:auto;padding-top:10px;font-family:'Caveat',cursive;font-size:19px;color:var(--gold);}

.trip-teaser-head{margin:44px 0 18px;text-align:center;font-family:'Caveat',cursive;font-size:22px;color:var(--gold);}
.trip-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;}
.trip-teaser{background:#fffdf7;border:1.5px dashed var(--gold);border-radius:8px;padding:16px 12px;text-align:center;}
.trip-teaser .trip-teaser-icon{font-size:22px;display:block;margin-bottom:6px;}
.trip-teaser .trip-teaser-place{font-family:'Times New Roman',serif;font-weight:700;color:var(--teal-deep);font-size:14px;line-height:1.3;}
.trip-teaser .trip-teaser-date{font-size:11px;color:var(--ink-soft);margin-top:3px;text-transform:uppercase;letter-spacing:.04em;}
.trip-teaser .trip-teaser-soon{font-family:'Caveat',cursive;color:var(--gold);font-size:13px;margin-top:6px;display:block;}

/* recap page gallery + video */
.recap-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.recap-gallery img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;}
.recap-video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:640px;margin:0 auto;}
.recap-video-grid-4{grid-template-columns:repeat(4,1fr);max-width:900px;}
.video-placeholder{aspect-ratio:9/16;background:var(--cream-2);border:1px dashed var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#b7ae9a;font-size:14px;text-align:center;padding:12px;}
.recap-video-grid video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:10px;background:#000;box-shadow:0 14px 28px rgba(21,55,49,.18);}
@media (max-width:860px){
  .recap-gallery{grid-template-columns:repeat(2,1fr);}
  .recap-video-grid, .recap-video-grid-4{grid-template-columns:repeat(2,1fr);}
}

.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.ig-tile{position:relative;aspect-ratio:1/1;border-radius:10px;overflow:hidden;display:block;}
.ig-tile img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease;}
.ig-tile:hover img{transform:scale(1.06);}
.ig-follow{text-align:center;margin-top:36px;}

@media (max-width:860px){
  .hero-grid, .meet-grid, .who-grid, .come-grid, .contact-grid, .blog-grid{grid-template-columns:1fr;}
  .trip-grid{grid-template-columns:1fr;}
  .testi-grid{grid-template-columns:1fr;}
  .ig-grid{grid-template-columns:repeat(2,1fr);}
  .hero-img{order:-1;}
  .nav-toggle{display:block;}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;gap:4px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 20px;box-shadow:0 16px 32px rgba(21,55,49,.16);z-index:50;}
  .nav-links.open{display:flex;}
  .nav-links a{padding:10px 4px;width:100%;}
}

/* ===== Journal theme additions ===== */
.handwritten{font-family:'Caveat',cursive;}
.eyebrow-hw{font-family:'Caveat',cursive;font-size:29px;font-weight:600;color:var(--teal);margin-bottom:2px;display:block;}
.kicker-hw{font-family:'Caveat',cursive;font-size:27px;font-weight:600;color:var(--gold);margin-bottom:2px;display:block;}

.polaroid{background:#fdfdfb;padding:14px 14px 50px;box-shadow:0 20px 40px rgba(21,55,49,.22), 0 2px 8px rgba(0,0,0,.08);border-radius:2px;position:relative;}
.polaroid::before{content:"";position:absolute;top:-16px;left:50%;transform:translateX(-50%) rotate(-3deg);width:76px;height:26px;background:rgba(178,163,128,.88);box-shadow:0 3px 5px rgba(0,0,0,.2);}
.polaroid img{width:100%;display:block;border-radius:0;aspect-ratio:1/1;object-fit:cover;}
.polaroid figcaption{font-family:'Caveat',cursive;font-size:22px;color:var(--teal-deep);text-align:center;margin-top:10px;}

.hero-journal-img{transform:rotate(3deg);max-width:340px;margin-left:auto;}

/* postcards */
.postcard-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
.postcard{background:#fffdf8;border:2px dashed var(--gold);border-radius:6px;padding:28px;position:relative;}
.postcard .stamp{position:absolute;top:18px;right:18px;width:54px;height:64px;border:2px solid var(--teal);display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--teal);text-align:center;transform:rotate(6deg);font-weight:700;line-height:1.2;z-index:5;background:var(--cream);}
.postcard .pc-photo{border-radius:4px;overflow:hidden;margin-bottom:18px;aspect-ratio:16/10;}
.postcard .pc-photo img{width:100%;height:100%;object-fit:cover;}
.pc-flag{display:flex;align-items:center;justify-content:center;background:var(--cream-2);position:relative;}
.pc-flag::after{content:"";position:absolute;inset:12px;border:1px dashed var(--gold-soft);border-radius:3px;}
.pc-flag .flag-big{font-size:76px;line-height:1;position:relative;z-index:1;filter:drop-shadow(0 10px 18px rgba(21,55,49,.2));}
.postcard h3{font-family:'Caveat',cursive;font-size:40px;margin-bottom:2px;color:var(--teal-deep);font-weight:600;}
.postcard .trip-dates{margin-top:2px;}

/* filmstrip */
.filmstrip-wrap{overflow:hidden;background:#0e1c19;padding:28px 0 22px;}
.filmstrip-row{display:flex;gap:10px;width:max-content;animation:fs-scroll 22s linear infinite;}
.filmstrip-row img{height:260px;width:auto;border-radius:4px;flex-shrink:0;opacity:.9;}
@keyframes fs-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.filmstrip-cap{text-align:center;color:#c7d6d0;font-family:'Caveat',cursive;font-size:25px;padding-top:16px;}

/* giant type break */
.giant-line{text-align:center;padding:82px 0 66px;}
.giant-line h2{font-size:clamp(42px,7.5vw,92px);line-height:.95;margin:0 0 20px;}
.giant-line .kicker{font-size:19px;letter-spacing:.16em;margin-bottom:18px;}
.giant-line p{max-width:560px;margin:0 auto;color:var(--ink-soft);font-size:20px;}

/* bento */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:150px;gap:16px;max-width:960px;margin:0 auto;}
.bento .b1{grid-column:span 2;grid-row:span 3;border-radius:16px;overflow:hidden;}
.bento .b1 img{width:100%;height:100%;object-fit:cover;}
.bento .b2{grid-column:span 2;grid-row:span 2;background:var(--teal-deep);border-radius:16px;color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:center;}
.bento .b2 h3{color:#fff;font-size:32px;margin-bottom:10px;}
.bento .b2 p{color:#cfe0da;font-size:16px;margin:0;}
.bento .b3{grid-column:span 1;grid-row:span 1;background:var(--gold);border-radius:16px;padding:16px;display:flex;flex-direction:column;justify-content:center;color:var(--teal-deep);font-weight:700;font-size:15px;line-height:1.4;}
.bento .b4{grid-column:span 1;grid-row:span 1;border-radius:16px;overflow:hidden;}
.bento .b4 img{width:100%;height:100%;object-fit:cover;}

/* handwritten margin quote */
.margin-quote{max-width:600px;margin:0 auto;text-align:center;}
.margin-quote p{font-family:'Caveat',cursive;font-size:clamp(32px,4.5vw,46px);color:var(--teal-deep);line-height:1.35;font-weight:600;}

/* scattered polaroids */
.polaroid-cluster{position:relative;height:360px;}
.polaroid-cluster .polaroid{position:absolute;width:190px;}
.pc-1{top:0;left:10%;transform:rotate(-7deg);z-index:1;}
.pc-2{top:60px;left:42%;transform:rotate(5deg);z-index:2;}
.pc-3{top:150px;left:12%;transform:rotate(3deg);z-index:1;}

/* one-line row of polaroids, taped in a strip */
.polaroid-line{display:flex;align-items:flex-start;justify-content:center;gap:18px;flex-wrap:nowrap;overflow-x:auto;max-width:100%;margin-top:36px;padding:24px 4px 16px;}
.polaroid-line .polaroid{width:160px;flex:0 0 auto;}

/* letter-style contact */
.letter-heading{font-family:'Caveat',cursive;font-size:42px;color:var(--teal-deep);font-weight:600;margin-bottom:2px;}

@media (max-width:860px){
  .postcard-grid{grid-template-columns:1fr;}
  .bento{grid-template-columns:repeat(2,1fr);}
  .bento .b1, .bento .b2{grid-column:span 2;}
  .hero-journal-img{margin:30px auto 0;max-width:260px;}
  .filmstrip-row img{height:170px;width:auto;}
  .polaroid-cluster{height:auto;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;padding:10px 0;}
  .polaroid-cluster .polaroid{position:static;transform:none;width:150px;}
  .polaroid-line{justify-content:flex-start;padding-left:20px;padding-right:20px;}
  .polaroid-line .polaroid{width:130px;}
}


/* ===== Depth & shape additions ===== */
.section-shape{position:relative;overflow:hidden;}
.deco-blob{position:absolute;border-radius:50%;pointer-events:none;z-index:0;}

.giant-line.dark{background:var(--teal-deep);}
.giant-line.dark h2{color:#fff;}
.giant-line.dark .kicker{color:var(--gold-soft);}
.giant-line.dark p{color:#cfe0da;}

.sticky-note{background:var(--gold-wash);border:2px dashed var(--gold);border-radius:10px;padding:44px 34px;transform:rotate(-1.2deg);max-width:640px;box-shadow:0 14px 30px rgba(21,55,49,.08);}

.side-panel{background:var(--teal-wash);border-radius:var(--radius);padding:32px;}

@media (max-width:860px){
  .deco-blob{display:none;}
  .sticky-note{transform:none;padding:32px 24px;}
}


/* ===== Bold + Journal merge additions ===== */
.hero-bold{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:var(--teal-deep);padding:110px 24px 64px;}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38;}
.hero-bold-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(21,55,49,.45) 0%, rgba(14,28,25,.88) 100%);}
.hero-bold-inner{position:relative;z-index:2;max-width:780px;}
.hero-bold-inner .eyebrow-hw{color:var(--gold-soft);font-size:30px;}
.hero-bold-inner h1{color:#fff;font-size:clamp(46px,7.5vw,88px);line-height:1.0;margin:10px 0 22px;}
.hero-bold-inner p.hero-sub{color:#e3ece8;font-size:22px;max-width:44ch;margin:0 auto 30px;}
.hero-bold-inner .hero-dates{color:#bcd4cc;}
.hero-bold-inner .hero-dates strong{color:#fff;}
.hero-bold-pola{position:relative;z-index:2;margin:40px auto 0;transform:rotate(-4deg);width:240px;}
.hero-bold-inner .btn{padding:20px 42px;font-size:19px;}

.meet-photo-bold{width:260px;height:260px;object-fit:cover;border-radius:62% 38% 55% 45% / 45% 55% 45% 55%;margin:0 auto 28px;box-shadow:0 30px 60px rgba(21,55,49,.2);}

.postcard-grid-bold{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;max-width:1020px;margin:36px auto 0;}
.postcard-grid-bold .postcard{width:360px;text-align:left;padding:32px;}
.postcard-grid-bold .postcard .pc-photo{aspect-ratio:16/11;}
.postcard-grid-bold .postcard h3{font-size:42px;}

.stat-line{font-family:'Times New Roman',serif;font-weight:700;font-size:clamp(26px,3.6vw,40px);color:var(--teal-deep);margin-bottom:10px;}

.quote-bold{background:var(--cream);padding:64px 24px;text-align:center;}
.quote-card{position:relative;display:inline-block;max-width:800px;background:#e3d3b0;border-radius:3px;padding:56px 64px;box-shadow:0 22px 40px rgba(21,55,49,.2);transform:rotate(-1deg);}
.quote-card::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(135deg, rgba(0,0,0,.025) 0 2px, transparent 2px 7px);border-radius:3px;pointer-events:none;}
.quote-card p{font-family:'Times New Roman',serif;font-style:italic;color:var(--teal-deep);font-size:clamp(26px,4.4vw,44px);line-height:1.25;margin:0;position:relative;z-index:1;}
.tape-corner{position:absolute;width:78px;height:28px;background:rgba(201,155,74,.6);box-shadow:0 3px 5px rgba(0,0,0,.12);}
.tape-corner.tl{top:-14px;left:6%;transform:rotate(-8deg);}
.tape-corner.tr{top:-14px;right:6%;transform:rotate(7deg);}

.close-bold{background:var(--teal-deep);color:#fff;text-align:center;padding:70px 24px;}
.close-bold h2{color:#fff;font-family:'Times New Roman',serif;font-size:clamp(24px,6vw,56px);margin:0 auto 26px;white-space:nowrap;}
.close-bold p{color:#cfe0da;max-width:520px;margin:0 auto 26px;}

.come-bold{background:var(--gold-wash);padding:64px 24px;}
.come-bold-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;max-width:1040px;margin:0 auto;text-align:left;}
.come-bold-grid .kicker{justify-content:flex-start;display:flex;}
.come-bold-grid h2{font-size:clamp(34px,4.5vw,52px);margin:8px 0 0;}
.come-bold-grid p{color:var(--ink-soft);}
.come-bold .polaroid-cluster{margin:60px auto 0;max-width:640px;}

.hero-polaroid-row{position:relative;z-index:2;display:flex;flex-wrap:nowrap;gap:18px;justify-content:center;align-items:flex-start;margin:40px auto 0;padding:20px 4px;}
.hero-polaroid-row .hp-side{width:190px;flex:0 0 auto;}
.hero-polaroid-row .hp-center{width:210px;flex:0 0 auto;}

@media (max-width:860px){
  .hero-bold{min-height:auto;padding:80px 24px 50px;}
  .postcard-grid-bold .postcard{width:100%;max-width:360px;}
  .come-bold .polaroid-cluster{height:auto;}
  .giant-line{padding:56px 24px 48px;}
  .close-bold{padding:52px 24px;}
  .quote-bold{padding:46px 24px;}
  .come-bold{padding:46px 24px;}
  .section{padding:40px 0;}
  .section-tight{padding:30px 0;}
}
@media (max-width:640px){
  .hero-polaroid-row{flex-wrap:wrap;gap:32px;padding:16px 4px 4px;margin-top:30px;}
  .hero-polaroid-row .hp-side, .hero-polaroid-row .hp-center{width:min(76vw,260px);margin-top:0;}
}
.mobile-break{display:none;}
@media (max-width:640px){
  .mobile-break{display:block;}
}


.journal-masthead-bar{text-align:center;padding:7px 24px 6px;border-bottom:1px solid var(--line);}
.journal-masthead-bar .jm-title{font-family:'Times New Roman',serif;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal-deep);font-weight:600;}
.journal-masthead-bar .jm-dot{color:var(--line);margin:0 8px;font-size:14px;}
.journal-masthead-bar .jm-sub{font-family:'Caveat',cursive;font-size:19px;color:var(--gold);}

@media (max-width:860px){
  .come-bold-grid{grid-template-columns:1fr;text-align:center;gap:18px;}
  .come-bold-grid .kicker{justify-content:center;}
}


/* ===== Do Both value section ===== */
.do-both{background-color:var(--cream-2);background-image:repeating-linear-gradient(var(--cream-2) 0px, var(--cream-2) 27px, rgba(31,77,67,.12) 28px);border-radius:6px;padding:60px 36px;margin-top:56px;text-align:center;box-shadow:0 10px 24px rgba(21,55,49,.08);}
.do-both .kicker{justify-content:center;display:flex;}
.do-both h2{font-size:clamp(32px,5vw,52px);margin-bottom:34px;}
.do-both h2 .hw-accent{font-family:'Caveat',cursive;color:var(--gold);font-size:1.15em;font-weight:600;}
.do-both-cols{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:760px;margin:0 auto 34px;text-align:left;}
.do-both-flag{font-size:26px;vertical-align:-3px;margin-right:8px;}
.do-both-col h3{font-size:22px;margin-bottom:8px;}
.do-both-col p{color:var(--ink-soft);font-size:16px;margin:0;}
.do-both-value{list-style:none;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:0;margin:0 0 34px;}
.do-both-value li{background:#fff;border:1px solid var(--line);color:var(--teal-deep);font-weight:600;font-size:14px;padding:9px 16px;border-radius:999px;}
.do-both-price{margin-bottom:22px;}
.price-now{font-family:'Times New Roman',serif;font-size:clamp(30px,4vw,42px);color:var(--gold);font-weight:700;}
.price-was{font-size:20px;color:#9a9484;text-decoration:line-through;margin-left:10px;font-weight:400;}
.price-note{color:var(--ink-soft);font-size:14px;margin-top:6px;}

@media (max-width:860px){
  .do-both-cols{grid-template-columns:1fr;}
}

/* ===== FAQ ===== */
.faq-list{max-width:780px;margin:0 auto;}
.faq-group-title{margin:48px 0 18px;}
.faq-group-title:first-child{margin-top:0;}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;overflow:hidden;}
.faq-item summary{cursor:pointer;padding:20px 52px 20px 24px;font-family:'Times New Roman', Times, 'Liberation Serif', serif;font-weight:600;color:var(--teal-deep);font-size:18px;list-style:none;position:relative;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:24px;line-height:1;color:var(--gold);transition:transform .2s ease;}
.faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.faq-item summary:hover{color:var(--teal);}
.faq-item-body{padding:0 24px 22px;}
.faq-item-body p{color:var(--ink-soft);font-size:16px;line-height:1.7;margin:0 0 12px;}
.faq-item-body p:last-child{margin-bottom:0;}
.faq-item-body ul{color:var(--ink-soft);font-size:16px;line-height:1.7;margin:0 0 12px;padding-left:22px;}
.faq-item-body ul:last-child{margin-bottom:0;}


/* ===== Junk journal texture: torn paper edges ===== */
.torn-edge{
  width:100%;
  height:52px;
  margin-top:-22px;
  position:relative;
  z-index:6;
  background:linear-gradient(178deg, #fdfdf9 0%, #efe6d2 100%);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201000%2070%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C0%20L1000%2C0%20L1000%2C40.3%20L994%2C18.4%20L988%2C35.6%20L946%2C50.5%20L939%2C6.6%20L930%2C40.0%20L867%2C15.1%20L810%2C57.0%20L805%2C6%20L801%2C54.7%20L788%2C62.4%20L709%2C9.0%20L679%2C41.8%20L652%2C9.5%20L616%2C52.0%20L595%2C13.2%20L552%2C29.2%20L550%2C44.4%20L515%2C15.3%20L497%2C47.2%20L483%2C46.3%20L478%2C12.2%20L455%2C51.5%20L448%2C24.0%20L432%2C6%20L413%2C49.2%20L375%2C51.2%20L367%2C51.5%20L336%2C30.7%20L333%2C24.9%20L295%2C41.6%20L261%2C9.4%20L244%2C7.8%20L227%2C35.3%20L219%2C51.2%20L217%2C17.5%20L199%2C30.1%20L197%2C47.8%20L196%2C28.0%20L164%2C26.5%20L90%2C40.6%20L72%2C48.8%20L49%2C13.7%20L0%2C16.8%20Z%22%20fill%3D%22%23fff%22/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201000%2070%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C0%20L1000%2C0%20L1000%2C40.3%20L994%2C18.4%20L988%2C35.6%20L946%2C50.5%20L939%2C6.6%20L930%2C40.0%20L867%2C15.1%20L810%2C57.0%20L805%2C6%20L801%2C54.7%20L788%2C62.4%20L709%2C9.0%20L679%2C41.8%20L652%2C9.5%20L616%2C52.0%20L595%2C13.2%20L552%2C29.2%20L550%2C44.4%20L515%2C15.3%20L497%2C47.2%20L483%2C46.3%20L478%2C12.2%20L455%2C51.5%20L448%2C24.0%20L432%2C6%20L413%2C49.2%20L375%2C51.2%20L367%2C51.5%20L336%2C30.7%20L333%2C24.9%20L295%2C41.6%20L261%2C9.4%20L244%2C7.8%20L227%2C35.3%20L219%2C51.2%20L217%2C17.5%20L199%2C30.1%20L197%2C47.8%20L196%2C28.0%20L164%2C26.5%20L90%2C40.6%20L72%2C48.8%20L49%2C13.7%20L0%2C16.8%20Z%22%20fill%3D%22%23fff%22/%3E%3C/svg%3E");
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  filter:drop-shadow(0 10px 10px rgba(0,0,0,.25));
  pointer-events:none;
  display:block;
}
.torn-edge.v2{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201000%2070%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C0%20L1000%2C0%20L1000%2C30.5%20L992%2C18.2%20L920%2C32.0%20L894%2C34.1%20L889%2C29.0%20L876%2C47.2%20L871%2C16.1%20L848%2C31.7%20L782%2C39.9%20L772%2C6%20L763%2C35.4%20L732%2C6%20L724%2C30.2%20L692%2C24.0%20L672%2C6%20L660%2C35.0%20L658%2C12.7%20L644%2C40.0%20L625%2C55.8%20L540%2C50.9%20L535%2C53.8%20L506%2C66%20L487%2C56.4%20L480%2C6.8%20L476%2C56.6%20L462%2C24.1%20L453%2C14.2%20L438%2C35.8%20L435%2C26.0%20L419%2C9.0%20L411%2C18.6%20L407%2C51.0%20L394%2C16.0%20L334%2C22.0%20L333%2C16.3%20L243%2C17.5%20L206%2C12.5%20L202%2C15.2%20L200%2C8.0%20L196%2C51.2%20L131%2C8.4%20L57%2C50.8%20L36%2C19.2%20L0%2C7.9%20Z%22%20fill%3D%22%23fff%22/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201000%2070%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C0%20L1000%2C0%20L1000%2C30.5%20L992%2C18.2%20L920%2C32.0%20L894%2C34.1%20L889%2C29.0%20L876%2C47.2%20L871%2C16.1%20L848%2C31.7%20L782%2C39.9%20L772%2C6%20L763%2C35.4%20L732%2C6%20L724%2C30.2%20L692%2C24.0%20L672%2C6%20L660%2C35.0%20L658%2C12.7%20L644%2C40.0%20L625%2C55.8%20L540%2C50.9%20L535%2C53.8%20L506%2C66%20L487%2C56.4%20L480%2C6.8%20L476%2C56.6%20L462%2C24.1%20L453%2C14.2%20L438%2C35.8%20L435%2C26.0%20L419%2C9.0%20L411%2C18.6%20L407%2C51.0%20L394%2C16.0%20L334%2C22.0%20L333%2C16.3%20L243%2C17.5%20L206%2C12.5%20L202%2C15.2%20L200%2C8.0%20L196%2C51.2%20L131%2C8.4%20L57%2C50.8%20L36%2C19.2%20L0%2C7.9%20Z%22%20fill%3D%22%23fff%22/%3E%3C/svg%3E");
}
.torn-edge.v3{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201000%2070%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C0%20L1000%2C0%20L1000%2C47.2%20L992%2C41.7%20L969%2C35.5%20L961%2C34.1%20L946%2C44.9%20L847%2C16.5%20L842%2C51.7%20L841%2C7.3%20L808%2C53.3%20L790%2C66%20L758%2C40.9%20L722%2C13.8%20L711%2C9.3%20L702%2C36.0%20L691%2C31.7%20L638%2C15.5%20L635%2C16.1%20L608%2C7.4%20L596%2C6.2%20L580%2C38.4%20L579%2C16.0%20L556%2C22.9%20L541%2C51.2%20L528%2C56.1%20L504%2C54.5%20L484%2C22.8%20L422%2C55.7%20L419%2C6%20L407%2C44.0%20L400%2C12.4%20L296%2C56.7%20L286%2C51.8%20L264%2C9.7%20L262%2C46.9%20L245%2C57.5%20L199%2C52.2%20L161%2C7.1%20L141%2C47.8%20L124%2C33.3%20L94%2C33.2%20L90%2C18.9%20L32%2C12.7%20L4%2C13.7%20L0%2C8.0%20Z%22%20fill%3D%22%23fff%22/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201000%2070%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2C0%20L1000%2C0%20L1000%2C47.2%20L992%2C41.7%20L969%2C35.5%20L961%2C34.1%20L946%2C44.9%20L847%2C16.5%20L842%2C51.7%20L841%2C7.3%20L808%2C53.3%20L790%2C66%20L758%2C40.9%20L722%2C13.8%20L711%2C9.3%20L702%2C36.0%20L691%2C31.7%20L638%2C15.5%20L635%2C16.1%20L608%2C7.4%20L596%2C6.2%20L580%2C38.4%20L579%2C16.0%20L556%2C22.9%20L541%2C51.2%20L528%2C56.1%20L504%2C54.5%20L484%2C22.8%20L422%2C55.7%20L419%2C6%20L407%2C44.0%20L400%2C12.4%20L296%2C56.7%20L286%2C51.8%20L264%2C9.7%20L262%2C46.9%20L245%2C57.5%20L199%2C52.2%20L161%2C7.1%20L141%2C47.8%20L124%2C33.3%20L94%2C33.2%20L90%2C18.9%20L32%2C12.7%20L4%2C13.7%20L0%2C8.0%20Z%22%20fill%3D%22%23fff%22/%3E%3C/svg%3E");
}
.torn-edge.small{height:26px;margin-top:0;filter:drop-shadow(0 5px 5px rgba(0,0,0,.22));}
