/* Grandma June — front (sales) page
   Extracted verbatim from index.html. Loaded only on the sales template. */

/* ---------- hero ---------- */
.hero{padding:54px 0 48px;}
.hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center;}
.byline{display:flex;align-items:center;gap:16px;margin-bottom:26px;}
.byline .lab{color:var(--red);white-space:nowrap;}
.byline i{flex:1;height:1px;background:var(--line);}
.byline .lab.r{color:var(--soft);}
.hero h1{font-size:clamp(38px,4.6vw,60px);font-weight:700;letter-spacing:-.015em;}
.hero h1 em{color:var(--red);font-style:italic;font-weight:700;}
.hero .intro{margin-top:24px;font-size:19px;line-height:1.62;}
.hero .intro::first-letter{float:left;font-family:"Playfair Display",Georgia,serif;
  font-size:76px;line-height:.78;font-weight:700;color:var(--red);margin:6px 11px 0 0;}
.btns{display:flex;gap:15px;flex-wrap:wrap;margin:34px 0 0;}
.statbar{display:flex;gap:0;margin-top:40px;border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);}
.statbar div{flex:1;padding:17px 4px 15px;border-left:1px solid var(--line);}
.statbar div:first-child{border-left:none;padding-left:0;}
.statbar b{display:block;font-family:"Playfair Display",Georgia,serif;font-style:italic;
  font-size:31px;color:var(--red);line-height:1;font-weight:700;}
.statbar .lab{color:var(--soft);font-size:10.5px;margin-top:7px;display:block;}

/* portrait */
.shot{position:relative;}
.shot .frame{border:1px solid var(--gold);padding:11px;background:var(--paper);}
.shot img{width:100%;display:block;border:1px solid var(--line);}
.quotecard{position:absolute;left:-34px;bottom:-26px;background:var(--paper);
  border:1px solid var(--line);padding:20px 24px 17px;max-width:330px;
  box-shadow:0 10px 30px rgba(74,86,66,.15);}
.quotecard .qm{font-family:"Playfair Display",Georgia,serif;font-size:46px;color:var(--gold);
  line-height:.4;display:block;margin-bottom:9px;}
.quotecard p{font-style:italic;font-size:16px;margin:0 0 9px;line-height:1.45;}
.quotecard .lab{color:var(--soft);font-size:10px;}

/* ---------- sections ---------- */
section{padding:62px 0;border-top:1px solid var(--line);}
section.dark{background:var(--ecru2);}
.snum{display:flex;align-items:baseline;gap:16px;margin-bottom:8px;}
.snum .lab{color:var(--soft);}
h2{font-size:clamp(27px,3.5vw,41px);font-weight:700;letter-spacing:-.01em;margin-bottom:10px;}
.dek{font-size:19.5px;color:var(--soft);font-style:italic;margin-bottom:28px;max-width:34em;}

/* ---------- math ---------- */
.math{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:8px;}
.mcard{background:var(--paper);border:1px solid var(--line);padding:24px 26px;}
.mcard.after{border-color:var(--gold);border-width:1.5px;}
.mcard h3{font-size:20px;margin-bottom:3px;}
.mcard .lab{color:var(--soft);font-size:10px;display:block;margin-bottom:15px;}
.mcard table{width:100%;border-collapse:collapse;font-size:16px;}
.mcard td{padding:8px 0;border-bottom:1px solid var(--line);}
.mcard td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;}
.mcard tr.tot td{border-bottom:none;border-top:2px solid var(--red);padding-top:12px;
  font-family:"Playfair Display",Georgia,serif;font-weight:700;font-size:20px;color:var(--red);}
.netline{background:var(--dark);color:var(--ecru);padding:22px 26px;margin-top:22px;
  display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;}
.netline span{font-family:"Playfair Display",Georgia,serif;font-size:21px;font-style:italic;}
.netline b{font-family:"Playfair Display",Georgia,serif;font-size:34px;color:#e9d7a8;}
.src{font-size:14px;color:var(--soft);font-style:italic;margin-top:16px;line-height:1.55;}

/* ---------- inside ---------- */
.inside{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:20px;margin-top:26px;}
.icard{background:var(--paper);border:1px solid var(--line);padding:20px 22px;}
.icard h3{font-size:19px;margin-bottom:2px;}
.icard .cnt{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--red);display:block;margin-bottom:9px;}
.icard ul{margin:0;padding-left:17px;font-size:15.5px;color:var(--soft);line-height:1.5;}
.icard li{margin-bottom:4px;}

.sheets{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;}
.sheets div{background:var(--paper);border:1px solid var(--line);
  border-left:2.5px solid var(--gold);padding:14px 16px;}
.sheets b{display:block;font-family:"Playfair Display",Georgia,serif;font-size:16.5px;
  color:var(--brown);margin-bottom:3px;}
.sheets span{font-size:14.5px;color:var(--soft);font-style:italic;line-height:1.45;}

/* ---------- samples ---------- */
.sample{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--red);
  padding:22px 24px;margin:16px 0;}
.sample h3{font-size:20px;margin-bottom:8px;}
.sample h3 span{color:var(--red);font-style:italic;}
.sample p{font-size:16.5px;margin-bottom:.65em;}
.sample .note{font-style:italic;color:var(--brown);font-size:16px;border-top:1px solid var(--line);
  padding-top:11px;margin:13px 0 0;}

/* ---------- offer ---------- */
.offer{background:var(--paper);border:1.5px solid var(--gold);padding:34px 36px;max-width:640px;margin:0 auto;}
.offer .lab{color:var(--soft);font-size:10.5px;display:block;text-align:center;}
.offer h3{font-size:28px;text-align:center;margin:10px 0 12px;}
.offer .blurb{font-size:16.5px;color:var(--soft);text-align:center;margin-bottom:22px;}
.stack{border-top:1px solid var(--line);}
.stack div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;
  border-bottom:1px solid var(--line);font-size:16px;}
.stack div span:last-child{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;
  color:var(--green);white-space:nowrap;padding-top:4px;text-transform:uppercase;}
.pricerow{display:flex;justify-content:center;align-items:baseline;gap:14px;margin:26px 0 6px;}
.pricerow b{font-family:"Playfair Display",Georgia,serif;font-size:56px;color:var(--red);line-height:1;}
.was{font-family:"Playfair Display",Georgia,serif;font-size:27px;color:var(--soft);
  text-decoration:line-through;}
.offer .after b{color:var(--red);font-weight:600;letter-spacing:.06em;}
.offer .after{text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--soft);margin-bottom:22px;}
.offer .btn{width:100%;justify-content:center;font-size:14.5px;padding:19px;}
.pay{text-align:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--soft);margin-top:15px;line-height:1.9;}

/* ---------- gifts ---------- */
.gifts{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:22px;}
.gifts div{background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--gold);padding:15px 17px;}
.gifts b{display:block;font-family:"Playfair Display",Georgia,serif;font-size:17.5px;color:var(--brown);margin-bottom:3px;}
.gifts span{font-size:15px;color:var(--soft);font-style:italic;line-height:1.45;}

/* ---------- misc ---------- */
.author{display:grid;grid-template-columns:200px 1fr;gap:34px;align-items:start;}
.author img{width:200px;border:1px solid var(--gold);padding:8px;background:var(--paper);}
.author figure img{width:200px;}
@media(max-width:700px){.gifts + *,section img[style*="float"]{float:none!important;width:100%!important;margin:0 0 20px 0!important;}}
.guar{background:var(--dark);color:var(--ecru);padding:34px 36px;text-align:center;}
.guar h2{color:var(--ecru);font-size:27px;}
.guar p{color:#dfe3d6;max-width:38em;margin:14px auto 0;}
details{border-bottom:1px solid var(--line);padding:15px 0;}
details summary{font-family:"Playfair Display",Georgia,serif;font-weight:600;font-size:19px;
  cursor:pointer;list-style:none;position:relative;padding-right:30px;}
details summary::-webkit-details-marker{display:none;}
details summary::after{content:"+";position:absolute;right:2px;top:-3px;color:var(--red);font-size:24px;}
details[open] summary::after{content:"\2212";}
details p{margin:12px 0 2px;font-size:16.5px;color:var(--soft);}
.lastcall{background:var(--dark);color:var(--ecru);text-align:center;padding:64px 0;border:none;}
.lastcall h2{color:var(--ecru);font-size:clamp(28px,4vw,44px);max-width:16em;margin:0 auto 16px;}
.lastcall h2 em{color:#e9d7a8;}
.lastcall p{color:#dfe3d6;max-width:34em;margin:0 auto 28px;}

@media(max-width:900px){
  .hero .grid{grid-template-columns:1fr;gap:46px;}
  .math{grid-template-columns:1fr;}
  .author{grid-template-columns:1fr;justify-items:center;text-align:center;}
  .quotecard{left:0;right:0;max-width:none;position:relative;bottom:0;margin-top:-30px;}
}
@media(max-width:560px){
  .wrap,.narrow{padding:0 18px;}
  .statbar{flex-wrap:wrap;}
  .statbar div{flex:1 1 50%;}
  .offer{padding:26px 20px;}
}
