/* Inner pages: articles, legal text, contact, opt-in/thank-you, members. Uses the shared kit tokens only. */

/* plain text pages (privacy, GDPR, cookies) */
.legal{padding:64px 0 90px}
.legal .prose{max-width:800px;font-size:18px;line-height:1.7}
.legal .prose h2{margin-top:1.8em;padding-top:.2em}
.legal .prose p,.legal .prose li{overflow-wrap:anywhere}
.legal .prose ul{padding-left:1.4em}
.legal .prose strong{color:var(--navy)}

/* articles index */
.arts{padding:72px 0 40px}
.art-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.art-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow-s);transition:transform .2s,box-shadow .2s}
.art-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.art-card .pic{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--sky)}
.art-card .pic img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.art-card:hover .pic img{transform:scale(1.04)}
.art-card .in{padding:30px 32px 34px;display:flex;flex-direction:column;flex:1}
.art-card .meta{margin:0 0 12px;font-size:16px;color:var(--muted)}
.art-card h2{font-size:clamp(25px,2.4vw,32px);margin:0 0 8px}
.art-card h2 a{color:var(--navy);text-decoration:none}
.art-card h2 a::after{content:"";position:absolute;inset:0}
.art-card .by{font:700 16px/1.4 var(--hf);color:var(--blue-d);margin:0 0 10px}
.art-card .ex{color:var(--ink);margin:0 0 22px}
.art-card .more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font:700 18px/1 var(--hf);color:var(--blue-d)}
.art-card .more::after{content:"";width:9px;height:9px;border:solid currentColor;border-width:3px 3px 0 0;transform:rotate(45deg)}
.pres-band{padding:30px 0 20px}
.pres-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:center}
.pres-row{align-items:stretch}
.ad-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow-s);text-decoration:none;transition:transform .2s,box-shadow .2s}
.ad-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.ad-pic{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--sky)}
.ad-pic img{width:100%;height:100%;object-fit:cover}
.ad-in{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;padding:24px 22px 26px;flex:1}
.ad-t{font:900 clamp(20px,1.7vw,23px)/1.3 var(--hf);color:var(--navy);flex:1}
.ad-in .btn{margin-top:auto}
.book-band{background:linear-gradient(120deg,var(--orange),var(--orange-2));color:#fff;padding:72px 0;margin-top:56px}
.book-band .bb{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:center;max-width:960px;margin:0 auto}
.book-band .bb img{width:100%;filter:drop-shadow(0 18px 26px rgba(60,10,10,.4))}
.book-band h2{color:#fff;font-size:clamp(28px,3vw,38px)}
.book-band p{color:#fff6ee}
.book-band .chip{background:#fff;color:var(--coral-d)}
.book-band .ck-form{max-width:520px}
.book-band .ck-form input.formkit-input{border-color:#fff}
.book-band .ck-form .formkit-submit{background:var(--navy);box-shadow:0 10px 22px -10px rgba(40,5,10,.8)}
.book-band .ck-form .formkit-submit:hover{background:var(--navy-2)}

/* article pages */
.art-hero{padding-bottom:110px}
.art-hero .wrap{max-width:900px}
.art-hero h1{font-size:clamp(34px,4.6vw,54px)}
.art-hero .byline{margin:22px 0 0;color:#fff6ee;font-size:18px;flex-wrap:wrap;gap:6px 14px}
.art-hero .byline a{color:#fff;font-weight:700}
.art-pic{max-width:960px;margin:-84px auto 0;padding:0 24px;position:relative}
.art-pic img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-l);box-shadow:var(--shadow);border:6px solid #fff;background:var(--sky)}
.art-body{max-width:720px;margin:0 auto;padding:56px 24px 20px;font-size:19px;line-height:1.75}
.art-body p{margin:0 0 1.15em}
.art-body h2{font-size:clamp(26px,2.8vw,34px);margin:1.8em 0 .6em;padding-left:18px;border-left:6px solid var(--orange)}
.art-body blockquote{margin:0 0 1.6em;padding:22px 28px;background:var(--sky);border-left:6px solid var(--orange);border-radius:0 var(--r) var(--r) 0;font:italic 500 clamp(21px,2.2vw,25px)/1.5 var(--sf);color:var(--navy)}
.art-body a{color:var(--blue-d);font-weight:600}
.art-body .cta-line{margin:2em 0;padding:20px 24px;background:linear-gradient(120deg,#fff4ea,#ffe6cf);border:1px solid #f6cfa5;border-radius:var(--r);font-size:20px;line-height:1.45}
.art-body .cta-line a{text-decoration:none;color:var(--coral-d)}
.art-body .cta-line a::after{content:" \2192"}
.art-body .cta-line a:hover{text-decoration:underline}
.art-end{max-width:960px;margin:0 auto;padding:30px 24px 90px}
.freebook{display:grid;grid-template-columns:200px 1fr;gap:36px;align-items:center;background:var(--navy);color:#fbeeee;border-radius:var(--r-l);padding:38px 42px;box-shadow:var(--shadow)}
.freebook img{width:100%;filter:drop-shadow(0 14px 22px rgba(0,0,0,.4))}
.freebook h2{color:#fff;font-size:clamp(26px,2.8vw,34px);margin-bottom:.3em}
.freebook p{color:#f3d9d3}
.freebook .chip{background:#fde8e6;color:var(--coral-d)}
.freebook .ck-form{max-width:520px}
.more-arts{margin-top:44px}
.more-arts h2{font-size:clamp(26px,2.8vw,34px)}
.more-card{display:grid;grid-template-columns:300px 1fr;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow-s);text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s}
.more-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);color:var(--ink)}
.more-card img{width:100%;height:100%;object-fit:cover;min-height:170px}
.more-card .in{padding:26px 30px;align-self:center}
.more-card h3{font-size:clamp(22px,2.2vw,28px);margin:0 0 8px;color:var(--navy)}
.more-card .go{font:700 18px/1 var(--hf);color:var(--blue-d)}

/* contact */
.contact{padding:64px 0 90px}
.cf-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:stretch}
.cf-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:38px 40px;box-shadow:var(--shadow)}
.cf-row{margin:0 0 20px}
.cf-row label{display:block;font:700 18px/1.3 var(--hf);color:var(--navy);margin:0 0 8px}
.cf-row .req{font-weight:400;color:var(--muted);font-family:var(--bf)}
.cf-row input,.cf-row textarea{width:100%;padding:14px 18px;border:2px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font:400 18px/1.4 var(--bf);transition:border-color .15s,box-shadow .15s}
.cf-row input{min-height:58px}
.cf-row textarea{min-height:190px;resize:vertical}
.cf-row input:focus,.cf-row textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(232,89,12,.18)}
.cf-row [aria-invalid=true]{border-color:#c0392b}
.cf-err{margin:8px 0 0;color:#a52a1f;font-size:16px;font-weight:600}
.cf-err-top{background:#fde8e6;border-radius:10px;padding:12px 16px;margin:0 0 20px}
.cf-hp{position:absolute!important;left:-5000px;width:1px;height:1px;overflow:hidden}
.cf .btn{min-width:200px}
.cf-thanks{background:var(--sky);border-radius:var(--r-l);padding:38px 40px}
.cf-thanks h2{font-size:clamp(26px,2.8vw,34px)}
.cf-side{position:relative;min-height:320px}
.cf-side img{width:100%;height:100%;position:absolute;inset:0;border-radius:var(--r-l);box-shadow:var(--shadow);object-fit:cover}

/* opt-in and thank-you */
.optin-page{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
.optin-page main{flex:1}
.oi{padding:72px 0 96px;background:linear-gradient(180deg,var(--cream),#fff)}
.oi-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.oi h1{font-size:clamp(34px,4.4vw,54px)}
.oi h1.long{font-size:clamp(30px,3.6vw,44px)}
.oi .lead{color:var(--ink)}
.oi-form{margin-top:28px;max-width:520px}
.oi-art{position:relative}
.oi-art .picframe{border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:3/2}
.oi-art .picframe img{width:100%;height:100%;object-fit:cover}
.oi-art .cover{position:absolute;width:38%;right:-10px;bottom:-34px;filter:drop-shadow(0 22px 30px rgba(60,10,10,.5))}
.ty{padding:72px 0 96px;background:linear-gradient(180deg,var(--cream),#fff);text-align:center}
.ty .narrow{max-width:760px}
.ty h1{font-size:clamp(30px,4vw,48px)}
.ty .lead{color:var(--ink)}
.ty .cover{width:min(260px,70%);margin:30px auto;filter:drop-shadow(0 18px 26px rgba(60,10,10,.4))}
.ty .picframe{margin:34px auto 0;max-width:640px;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:3/2}
.ty .picframe img{width:100%;height:100%;object-fit:cover}
.ty .vidlink{display:block;position:relative;margin:30px auto 0;max-width:720px;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow)}
.ty .vidlink img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.ty .vidlink::after{content:"";position:absolute;left:50%;top:50%;width:86px;height:86px;margin:-43px 0 0 -43px;border-radius:50%;background:var(--coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M15 10l15 10-15 10z' fill='%23fff'/%3E%3C/svg%3E") center/42px no-repeat;box-shadow:0 0 0 10px rgba(255,255,255,.3),0 12px 30px rgba(0,0,0,.35);transition:transform .15s}
.ty .vidlink:hover::after{transform:scale(1.07)}
.ty .big-text{font-size:clamp(20px,2vw,24px);line-height:1.55;margin:28px auto 0;max-width:680px}
.mem{padding:72px 0 96px;background:linear-gradient(180deg,var(--cream),#fff)}
.mem-grid{display:grid;grid-template-columns:320px 1fr;gap:56px;align-items:center;max-width:960px;margin:0 auto}
.mem-grid img{width:100%;filter:drop-shadow(0 20px 28px rgba(60,10,10,.35))}
.mem h1{font-size:clamp(32px,4vw,48px)}
.mem p{font-size:19px}
.mem .btn{margin-top:14px}
.login-card{max-width:680px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:56px 44px;box-shadow:var(--shadow)}
.login-card img{width:min(240px,70%);margin:0 auto 28px;filter:drop-shadow(0 16px 22px rgba(60,10,10,.3))}
.login-card h1{font-size:clamp(32px,4vw,46px)}
.login-card p{font-size:19px;margin-bottom:26px}

@media (max-width:900px){
  .art-grid{grid-template-columns:1fr}
  .cf-grid,.oi-grid{grid-template-columns:1fr;gap:36px}
  .oi-art{order:-1;margin-bottom:20px}
  .cf-side{order:-1;min-height:0}
  .cf-side img{position:static;height:auto;aspect-ratio:3/2}
  .mem-grid{grid-template-columns:1fr;gap:30px;text-align:center}
  .mem-grid img{max-width:260px;margin:0 auto}
  .book-band .bb{grid-template-columns:1fr;gap:28px;text-align:center}
  .book-band .bb img{max-width:200px;margin:0 auto}
  .book-band .ck-form{margin:0 auto}
}
@media (max-width:700px){
  .pres-row{grid-template-columns:1fr;max-width:420px;margin:0 auto}
  .freebook{grid-template-columns:1fr;padding:30px 24px;text-align:center;gap:24px}
  .freebook img{max-width:170px;margin:0 auto}
  .freebook .ck-form{margin:0 auto}
  .more-card{grid-template-columns:1fr}
  .more-card img{min-height:0;aspect-ratio:16/9}
}
@media (max-width:600px){
  .legal{padding:44px 0 64px}
  .art-hero{padding-bottom:90px}
  .art-pic{margin-top:-64px;padding:0 16px}
  .art-pic img{border-width:4px}
  .art-body{padding:40px 20px 10px;font-size:18px}
  .art-body .cta-line{font-size:19px;padding:18px}
  .art-end{padding:20px 20px 64px}
  .art-card .in{padding:24px 22px 28px}
  .cf-card{padding:26px 20px}
  .cf-thanks{padding:28px 22px}
  .oi,.ty,.mem{padding:44px 0 64px}
  .login-card{padding:36px 22px}
  .oi-art .cover{right:6px;bottom:-24px}
}
.ad-play::after{content:"";position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M15 10l15 10-15 10z' fill='%23fff'/%3E%3C/svg%3E") center/32px no-repeat;box-shadow:0 0 0 7px rgba(255,255,255,.3),0 10px 24px rgba(0,0,0,.35)}
