/* ==========================================================================
   That Mike Hamilton — Seasoned.Tech
   Shared site stylesheet. Palette + type extracted from the live site so
   new pages match the homepage exactly.
   ========================================================================== */

:root{
  --paper:#F1E7D5;      /* page background (warm cream) */
  --paper-2:#E8D9BF;    /* raised surfaces / buttons */
  --ink:#1B344E;        /* headings (deep navy) */
  --text:#2B3848;       /* body copy */
  --muted:#5c6773;      /* secondary text */
  --accent:#CE6115;     /* burnt-orange — decorative / large text only */
  --accent-text:#a94e0f;/* AA-safe orange for links, CTAs + small accent text on cream */
  --accent-dark:#8a3f0a;/* hover / pressed */
  --border:#d8c8ab;     /* hairlines on cream */
  --card:#f7efe0;       /* card fill */
  --nav-bg:rgba(241,231,213,.86);
  --shadow:0 1px 2px rgba(27,52,78,.06), 0 8px 24px rgba(27,52,78,.06);
  --wrap:1120px;
  --radius:6px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--text);
  font:400 18px/1.65 "Bitter",Georgia,"Times New Roman",serif;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}

h1,h2,h3{
  font-family:"Anton","Arial Narrow",Impact,sans-serif;
  color:var(--ink);
  font-weight:400;
  letter-spacing:.5px;
  line-height:1.05;
  margin:0 0 .5em;
  text-transform:uppercase;
}
h1{font-size:clamp(2.4rem,6vw,3.6rem)}
h2{font-size:clamp(1.9rem,4.4vw,2.75rem)}
h3{font-size:1.15rem;letter-spacing:.6px}

p{margin:0 0 1.1em}
a{color:var(--accent-text);text-decoration:none}
a:hover{color:var(--accent-dark);text-decoration:underline}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}

/* ---- Skip link (accessibility) ---- */
.skip{
  position:absolute;left:-999px;top:0;z-index:200;
  background:var(--ink);color:#fff;padding:10px 16px;border-radius:0 0 var(--radius) 0;
}
.skip:focus{left:0}

/* ---- Nav ---- */
.nav{
  position:sticky;top:0;z-index:100;
  background:var(--nav-bg);
  backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid var(--border);
}
.nav .wrap{display:flex;align-items:center;gap:18px;height:64px;position:relative}
.brand{display:flex;align-items:center;gap:10px;font-family:"Anton",sans-serif;
  font-size:1.15rem;letter-spacing:.6px;color:var(--ink);text-transform:uppercase;white-space:nowrap}
.brand:hover{text-decoration:none}
.brand img{width:30px;height:30px}
.nav nav{margin-left:auto;display:flex;gap:18px;flex-wrap:nowrap;align-items:center;white-space:nowrap}
.nav nav a{color:var(--ink);font-family:"Bitter",serif;font-size:.94rem;font-weight:600}
.nav nav a:hover{color:var(--accent-text)}
.nav-cta{background:var(--accent-text);color:#fff !important;padding:8px 14px;border-radius:var(--radius)}
.nav-cta:hover{background:var(--accent-dark);text-decoration:none}
.nav-toggle{
  display:none;margin-left:auto;width:44px;height:44px;padding:0;
  align-items:center;justify-content:center;border:1px solid var(--border);
  border-radius:var(--radius);background:var(--paper-2);color:var(--ink);
  cursor:pointer;
}
.nav-toggle:hover{background:#e0cfae}
.nav-toggle:focus-visible{outline:3px solid var(--accent-text);outline-offset:2px}
.nav-toggle-lines,.nav-toggle-lines::before,.nav-toggle-lines::after{
  display:block;width:22px;height:2px;background:currentColor;border-radius:2px;
  transition:transform .18s ease,opacity .18s ease;
}
.nav-toggle-lines{position:relative}
.nav-toggle-lines::before,.nav-toggle-lines::after{content:"";position:absolute;left:0}
.nav-toggle-lines::before{top:-7px}
.nav-toggle-lines::after{top:7px}
.nav-toggle[aria-expanded="true"] .nav-toggle-lines{background:transparent}
.nav-toggle[aria-expanded="true"] .nav-toggle-lines::before{top:0;transform:rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle-lines::after{top:0;transform:rotate(-45deg)}

/* ---- Buttons ---- */
.btn{
  display:inline-block;padding:12px 22px;border-radius:var(--radius);
  font-family:"Bitter",serif;font-weight:700;font-size:1rem;cursor:pointer;
  border:1px solid transparent;transition:.15s ease;
}
.btn-primary{background:var(--accent-text);color:#fff}
.btn-primary:hover{background:var(--accent-dark);text-decoration:none;color:#fff}
.btn-ghost{background:var(--paper-2);color:var(--accent-text);border-color:var(--border)}
.btn-ghost:hover{background:#e0cfae;text-decoration:none}

/* ---- Sections ---- */
section{padding:64px 0}
.eyebrow{
  font-family:"Bitter",serif;font-weight:700;text-transform:uppercase;
  letter-spacing:2px;font-size:.78rem;color:var(--accent-text);margin-bottom:8px;display:block;
}
.lead{font-size:1.15rem;color:var(--text)}
.muted{color:var(--muted)}
.center{text-align:center}
hr{border:none;border-top:1px solid var(--border);margin:0}

/* ---- Hero ---- */
.hero{padding:56px 0 40px}
.hero .banner{border-radius:10px;box-shadow:var(--shadow);margin-bottom:28px;width:100%}
.hero .tag{font-family:"Bitter",serif;font-weight:700;letter-spacing:1px;
  text-transform:uppercase;font-size:.8rem;color:var(--accent-text)}
.hero p.big{font-size:1.35rem;line-height:1.5;max-width:44ch}
.hero-support{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);gap:72px;align-items:center}
.hero-book-callout{width:min(100%,300px);justify-self:center;padding:24px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:var(--shadow)}
.hero-book-callout .eyebrow{display:block;margin-bottom:14px}
.byline{font-weight:700;color:var(--ink)}

/* ---- Card grids ---- */
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.card{
  background:var(--card);border:1px solid var(--border);border-radius:10px;
  padding:22px;box-shadow:var(--shadow);display:flex;flex-direction:column;
}
.card h3{margin-bottom:.35em}
.card p{font-size:.98rem;color:var(--muted);margin-bottom:1em}
.card .go{margin-top:auto;font-weight:700;color:var(--accent-text)}
.go{color:var(--accent-text);font-weight:700}
a.card:hover{text-decoration:none;transform:translateY(-2px);transition:.15s}

/* ---- Prose (About / Privacy / Terms) ---- */
.prose{max-width:74ch;overflow-wrap:anywhere}
.prose h2{margin-top:1.4em}
.prose h3{margin-top:1.3em;color:var(--ink)}
.prose ul{padding-left:1.2em}
.prose li{margin-bottom:.5em}
.prose .updated{color:var(--muted);font-size:.9rem}

/* ---- Contact form ---- */
.form-grid{display:grid;gap:14px;max-width:640px}
.form-grid label{font-weight:700;color:var(--ink);font-size:.95rem;display:block;margin-bottom:4px}
.form-grid input,.form-grid textarea{
  width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);
  font:400 1rem/1.5 "Bitter",serif;background:#fbf6ec;color:var(--text);
}
.form-grid input:focus,.form-grid textarea:focus{outline:2px solid var(--accent);border-color:var(--accent)}
.form-note{font-size:.82rem;color:var(--muted);margin-top:6px}

/* ---- Contact + book ---- */
.contact-copy .lead{max-width:56ch}
.contact-copy .form-grid{margin-top:24px}
.book-cover-link{display:block;color:var(--ink)}
.book-cover-link:hover{text-decoration:none}
.book-cover-link img{display:block;width:100%;height:auto;border-radius:4px;box-shadow:0 18px 38px rgba(20,43,67,.2);transition:transform .18s ease,box-shadow .18s ease}
.book-cover-link span{display:inline-block;margin-top:18px;color:var(--accent-text);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.book-cover-link:hover img{transform:translateY(-3px);box-shadow:0 22px 44px rgba(20,43,67,.24)}

/* ---- Seasoned take (About excerpt) ---- */
.about-grid{display:grid;grid-template-columns:280px 1fr;gap:36px;align-items:start}
.about-grid img{border-radius:10px;box-shadow:var(--shadow);background:var(--card)}
.callout{
  margin:1.2em 0 0;padding:14px 18px;border-left:5px solid var(--accent);
  background:#f7efe0;font-weight:700;color:var(--ink);text-transform:uppercase;
  letter-spacing:.4px;font-size:.95rem;
}
@media(max-width:820px){
  .about-grid{grid-template-columns:1fr}
  .about-grid img{max-width:240px}
}

/* ---- Newsletter signup ---- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}
.signup-card{border-color:var(--accent)}
.signup{margin-top:auto}
.signup-row{display:flex;gap:8px;flex-wrap:wrap}
.signup-row input{
  flex:1 1 180px;min-width:0;padding:11px 13px;border:1px solid var(--border);
  border-radius:var(--radius);font:400 1rem/1.4 "Bitter",serif;background:#fbf6ec;color:var(--text);
}
.signup-row input:focus{outline:2px solid var(--accent);border-color:var(--accent)}
.signup-row .btn{flex:0 0 auto}
.signup-msg{margin:8px 0 0}
.signup-msg.ok{color:#2e6b3e;font-weight:700}
.signup-msg.err{color:#a4331a;font-weight:700}

/* ---- Homepage media + horizontal newsletter banners ---- */
.newsletter-band{padding:30px 0;background:var(--ink)}
.newsletter-banner{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:34px;
  align-items:center;padding:30px;border:1px solid rgba(255,255,255,.2);
  border-radius:12px;background:var(--ink);color:#fff;box-shadow:var(--shadow);
}
.newsletter-banner h2{color:#fff;margin-bottom:.35em}
.newsletter-banner p{margin-bottom:.55em}
.newsletter-banner .eyebrow{color:#f58a42}
.newsletter-banner .go{color:#ff9a54}
.newsletter-form{margin:0}
.newsletter-form label{display:block;margin-bottom:7px;font-weight:700;color:#fff;font-size:.92rem}
.newsletter-form .signup-row{flex-wrap:nowrap}
.newsletter-form .signup-row input{background:#fffdf7;border-color:#fff}
.newsletter-form .form-note{color:#e9dfcf}
.newsletter-archive{margin:8px 0 0;font-size:.88rem}
.latest-issue{margin:.8em 0 0;font-size:.9rem}

.latest-video{
  display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:28px;
  align-items:center;padding:24px;background:var(--card);border:1px solid var(--border);
  border-radius:12px;box-shadow:var(--shadow);
}
.video-copy p{color:var(--muted)}
.video-frame{position:relative;padding-top:56.25%;overflow:hidden;border-radius:8px;background:#0c1724}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

.listen-intro{max-width:54ch}
.podcast-player{margin:22px 0 28px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#1d1d1d;box-shadow:var(--shadow)}
.podcast-player iframe{display:block;width:100%;height:250px;border:0}
.newsletter-banner-bottom{background:#243f5d}

/* ---- Footer ---- */
.foot{border-top:1px solid var(--border);padding:40px 0;margin-top:20px}
.foot .wrap{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.foot a{color:var(--ink);font-weight:600}
.foot .social{display:flex;flex-wrap:wrap;gap:12px 16px}
.foot small{color:var(--muted)}

/* ---- Responsive ---- */
@media(max-width:820px){
  .grid-2,.grid-3,.hero-support{grid-template-columns:1fr}
  .hero-support{gap:42px}
  .hero-book-callout{width:min(100%,360px);justify-self:start}
  .newsletter-banner,.latest-video{grid-template-columns:1fr}
  section{padding:48px 0}
}
@media(max-width:560px){
  .foot .wrap{align-items:flex-start}
  .foot .social{width:100%}
  .foot .social a{display:inline-flex;align-items:center;min-height:44px}
  .hero-book-callout{padding:20px 18px}
  .newsletter-band{padding:18px 0}
  .newsletter-banner{padding:22px 18px;gap:20px;border-radius:8px}
  .newsletter-form .signup-row{flex-wrap:wrap}
  .newsletter-form .signup-row .btn{width:100%}
  .latest-video{padding:18px}
  .podcast-player iframe{height:300px}
}
@media(max-width:1320px){
  .nav.nav-ready .nav-toggle{display:inline-flex}
  .nav.nav-ready nav{
    display:none;position:absolute;top:100%;left:0;right:0;margin:0;
    padding:10px 0 16px;gap:0;flex-direction:column;align-items:stretch;
    background:var(--paper);border:1px solid var(--border);border-top:0;
    border-radius:0 0 10px 10px;box-shadow:var(--shadow);white-space:normal;
  }
  .nav.nav-ready nav.is-open{display:flex}
  .nav.nav-ready nav a{display:block;width:100%;padding:10px 18px;font-size:1rem}
  .nav.nav-ready nav a:hover{background:var(--paper-2);text-decoration:none}
  .nav.nav-ready nav .nav-cta{
    width:auto;margin:6px 18px 0;text-align:center;padding:10px 14px;
  }
}
@media(max-width:420px){
  .nav .wrap{padding:0 16px;gap:10px}
  .nav .brand{font-size:.98rem;letter-spacing:.35px;gap:8px}
  .nav .brand img{width:27px;height:27px}
  .nav.nav-ready nav{left:0;right:0}
}
@media(prefers-reduced-motion:reduce){
  .nav-toggle-lines,.nav-toggle-lines::before,.nav-toggle-lines::after{transition:none}
}

/* ---- DRAW THIS FIRST! visual conversation system ---- */
.dtf-page{--dtf-lavender:#a78bfa;--dtf-lavender-dark:#6948c8;--dtf-orange:#ef7b3b;--dtf-soft:#fbf8f2;--dtf-night:#142b43;accent-color:var(--dtf-lavender-dark)}
.dtf-page::selection{background:var(--dtf-lavender);color:var(--dtf-night)}
.dtf-page{scrollbar-color:var(--dtf-lavender-dark) var(--paper)}
.dtf-page .foot .social{flex-wrap:wrap}
.dtf-page .brand,.dtf2-nav-product{min-height:44px}
.dtf2-nav-product{display:flex;align-items:center;gap:8px;margin-left:4px;padding-left:18px;border-left:1px solid var(--border);color:var(--ink);font-family:"Anton",sans-serif;font-size:1rem;letter-spacing:.025em;text-transform:uppercase}.dtf2-nav-product sup{margin-left:2px;font:700 .55em/1 "Bitter",serif}.dtf2-nav-product:hover{color:var(--dtf-lavender-dark);text-decoration:none}.dtf2-nav-badge{display:grid;place-items:center;width:30px;height:30px;background:var(--ink);color:var(--paper);font-size:1.05rem;line-height:1;clip-path:polygon(0 0,100% 0,100% 80%,66% 80%,55% 100%,45% 80%,0 80%)}.dtf2-nav-badge span{color:var(--dtf-lavender)}
.dtf2-hero{position:relative;padding:76px 0 0;overflow:hidden;background:var(--dtf-soft)}
.dtf2-hero::after{content:"";position:absolute;right:-4rem;top:7rem;width:20rem;height:20rem;border:2px solid rgba(27,52,78,.12);border-radius:49% 51% 44% 56%;transform:rotate(18deg);pointer-events:none}
.dtf2-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.88fr) minmax(440px,1.12fr);gap:34px;align-items:center}
.dtf2-logo{position:relative;display:block;width:min(100%,540px);margin:0 0 44px;font-family:"Anton",sans-serif;line-height:.82;letter-spacing:-.025em;text-transform:uppercase;transform:rotate(-1deg)}
.dtf2-logo-face{position:relative;display:flex;flex-direction:column;width:100%;filter:drop-shadow(0 18px 20px rgba(20,43,67,.14))}
.dtf2-logo-face::after{content:"";position:absolute;right:22%;bottom:-20px;width:52px;height:22px;background:var(--ink);clip-path:polygon(0 0,100% 0,54% 100%)}
.dtf2-logo-draw{display:block;padding:.1em .12em .06em;background:var(--dtf-orange);color:var(--dtf-night);font-size:clamp(4rem,8vw,5.8rem);line-height:.82;letter-spacing:.015em;text-align:center}
.dtf2-logo-lock{display:block;padding:.14em .12em .12em;background:var(--ink);color:var(--dtf-soft);font-size:clamp(2.7rem,5vw,3.75rem);line-height:.86;text-align:center;white-space:nowrap}
.dtf2-logo-bang{color:var(--dtf-lavender)}
.dtf2-logo>sup{position:absolute;right:-1.4em;bottom:.4em;color:var(--ink);font:700 .72rem/1 "Bitter",serif;letter-spacing:0}
.dtf2-deck{max-width:28ch;margin-bottom:.65em;color:var(--ink);font-size:clamp(1.55rem,2.5vw,2.2rem);font-weight:700;line-height:1.22}
.dtf2-intro{max-width:58ch;font-size:1.05rem}
.dtf-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:30px}
.dtf2-primary{background:var(--dtf-lavender-dark);color:#fff}.dtf2-primary:hover{background:#5132ad;color:#fff;text-decoration:none}
.dtf-text-link,.dtf2-inline{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.dtf2-parent{margin-top:24px;color:var(--muted);font-size:.78rem}.dtf2-parent a{color:var(--ink);font-weight:700}
.dtf2-hero-art{position:relative;margin:0}
.dtf2-hero-art img{position:relative;width:100%;height:auto}
.dtf2-method-rail{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);margin-top:34px;padding:0;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);background:var(--paper)}
.dtf2-method-rail>div{display:grid;grid-template-columns:auto 1fr;gap:13px;align-items:center;min-height:104px;padding:18px 20px;border-right:1px solid var(--ink)}.dtf2-method-rail>div:last-child{border-right:0}
.dtf2-method-rail b,.dtf2-letter{display:grid;place-items:center;width:46px;height:46px;border-radius:48% 52% 46% 54%;background:#b9a5f5;color:var(--ink);font-family:"Anton",sans-serif;font-size:1.75rem;font-weight:400;transform:rotate(-4deg)}
.dtf2-method-rail>div:nth-child(2) b,.dtf2-method-rail>div:nth-child(4) b{background:#ef8754;transform:rotate(4deg)}
.dtf2-method-rail span{font-size:.8rem;line-height:1.35}.dtf2-method-rail strong{display:block;color:var(--ink);font-size:.94rem}

.dtf2-thesis{padding:104px 0;background:var(--paper)}
.dtf2-thesis-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:64px;align-items:center}
.dtf2-thesis h2,.dtf2-section-title h2,.dtf2-builder h2,.dtf2-program h2,.dtf2-mike h2,.dtf2-interest h2{font-size:clamp(3rem,5.8vw,5.7rem);letter-spacing:-.015em;text-wrap:balance}
.dtf2-thesis h2{max-width:10ch}.dtf2-thesis-content{max-width:66ch}.dtf2-thesis-art{margin:-32px 0 22px;border:2px solid var(--ink);background:var(--dtf-soft);overflow:hidden;transform:rotate(1deg)}.dtf2-thesis-art img{display:block;width:100%;height:auto}.dtf2-large{color:var(--ink);font-size:1.26rem;font-weight:600;line-height:1.52}

.dtf2-method{padding:104px 0;background:var(--dtf-night);color:#f4ead9}
.dtf2-section-title{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:60px;align-items:end;margin-bottom:58px}
.dtf2-section-title h2{max-width:13ch;margin:0;color:#fff}.dtf2-section-title p{max-width:40ch;margin:0;color:#e9dfd0;font-size:1.08rem}.dtf2-method-intro{display:grid;gap:24px;align-self:stretch}.dtf2-method-art{position:relative;margin:0;padding:18px 14px;overflow:hidden;border:1px solid rgba(255,255,255,.38);background:var(--dtf-soft);transform:rotate(1deg)}.dtf2-method-art img{display:block;width:100%;height:auto}
.dtf2-moves{border-top:1px solid rgba(255,255,255,.28)}
.dtf2-moves article{display:grid;grid-template-columns:84px minmax(0,1fr);gap:30px;padding:34px 0;border-bottom:1px solid rgba(255,255,255,.28)}
.dtf2-moves article:nth-child(even) .dtf2-letter{background:var(--dtf-orange);transform:rotate(4deg)}
.dtf2-moves h3{margin:.1em 0 .3em;color:#fff;font-size:clamp(1.7rem,3vw,2.5rem)}.dtf2-moves p{max-width:62ch;margin:0;color:#e9dfd0}
.dtf2-moves .dtf2-ask{justify-self:end;align-self:center;margin:-2.2em 0 0;padding:.45em .8em;border:1px solid rgba(255,255,255,.25);border-radius:14px;color:#d6c9ff;font-size:.84rem;font-style:italic;transform:rotate(-1deg)}

.dtf2-builder{padding:104px 0;background:#e9e0ff}
.dtf2-builder-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:52px;align-items:center;margin-bottom:40px}.dtf2-builder-head>div:first-child{max-width:760px}.dtf2-builder h2{max-width:12ch}.dtf2-builder-head p{max-width:60ch}.dtf2-builder-visual{display:grid;gap:16px}.dtf2-note{justify-self:start;padding:9px 13px;border:1px solid var(--ink);border-radius:14px;color:var(--ink);font-size:.76rem;font-weight:700;transform:rotate(2deg)}.dtf2-builder-art{margin:0;border:1px solid rgba(27,52,78,.22);background:var(--dtf-soft)}.dtf2-builder-art img{display:block;width:100%;height:auto}
.dtf2-canvas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:2px solid var(--ink);background:var(--dtf-soft);box-shadow:0 22px 55px rgba(20,43,67,.13)}
.dtf2-field{padding:28px;border-bottom:1px solid var(--ink)}.dtf2-field:nth-child(odd){border-right:1px solid var(--ink)}.dtf2-field:nth-child(n+3){border-bottom:0}
.dtf2-field label{display:flex;gap:12px;align-items:center;margin-bottom:15px;color:var(--ink);font-weight:700}.dtf2-field label b{display:grid;place-items:center;width:38px;height:38px;border-radius:48% 52% 44% 56%;background:var(--dtf-lavender);font-family:"Anton",sans-serif;font-size:1.35rem;font-weight:400;transform:rotate(-3deg)}
.dtf2-field:nth-child(even) label b{background:var(--dtf-orange);transform:rotate(3deg)}
.dtf2-field textarea{display:block;width:100%;min-height:124px;resize:vertical;padding:14px 16px;border:1px solid rgba(27,52,78,.42);border-radius:6px;background:rgba(255,255,255,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.7);color:var(--text);font:400 1rem/1.55 "Bitter",serif;cursor:text;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.dtf2-field textarea:hover{border-color:rgba(27,52,78,.7);background:rgba(255,255,255,.68)}.dtf2-field textarea:focus{border-color:var(--dtf-lavender-dark);outline:3px solid rgba(105,72,200,.28);outline-offset:2px;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.dtf2-field:focus-within{background:rgba(255,255,255,.5)}.dtf2-field textarea::placeholder{color:#5c6773;opacity:1}
.dtf2-build-actions{grid-column:1/-1;display:flex;gap:18px;align-items:center;justify-content:space-between;padding:20px 28px;border-top:2px solid var(--ink);background:#fff}.dtf2-reset{min-height:44px;padding:9px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--ink);font:700 .86rem/1 "Bitter",serif;cursor:pointer}
.dtf2-output{margin-top:28px;padding:30px;border:2px solid var(--ink);background:var(--dtf-night);color:#fff;box-shadow:0 20px 45px rgba(20,43,67,.16)}.dtf2-output-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.dtf2-output h3{margin:0;color:#fff;font-size:1.35rem}.dtf2-output button{min-width:44px;min-height:44px;padding:8px 14px;border:1px solid #fff;border-radius:14px;background:transparent;color:#fff;font:700 .8rem/1 "Bitter",serif;cursor:pointer}.dtf2-output pre{margin:24px 0 0;white-space:pre-wrap;color:#f7efe2;font:400 .95rem/1.65 "Bitter",serif}.dtf2-output p{margin:18px 0 0;color:#cfc1f7;font-size:.82rem}

.dtf2-difference{padding:0;background:var(--dtf-soft)}.dtf2-difference-grid{display:grid;grid-template-columns:1fr 1fr;max-width:none;padding:0}.dtf2-difference-grid>div{min-height:520px;padding:58px max(7vw,40px) 72px}.dtf2-spot{display:flex;align-items:center;height:180px;max-width:330px;margin:0 0 28px}.dtf2-spot img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}.dtf2-difference h2{max-width:8ch;font-size:clamp(2.7rem,4.8vw,4.7rem)}.dtf2-difference p{max-width:46ch}.dtf2-wrong{background:var(--paper-2)}.dtf2-right{background:var(--dtf-lavender);color:var(--dtf-night)}

.dtf2-program{padding:110px 0;background:var(--paper)}.dtf2-program-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);gap:82px;align-items:start}.dtf2-program h2{max-width:12ch}.dtf2-program-grid>div:first-child p{max-width:62ch}.dtf2-program-sheet{position:relative;padding:38px 36px 32px;border:2px solid var(--ink);background:var(--dtf-soft);box-shadow:0 26px 60px rgba(20,43,67,.12);transform:rotate(1deg)}.dtf2-sheet-logo{display:flex;gap:6px;margin-bottom:30px}.dtf2-sheet-logo span{display:grid;place-items:center;width:45px;height:45px;border-radius:48% 52% 45% 55%;background:var(--dtf-lavender);color:var(--ink);font-family:"Anton",sans-serif;font-size:1.6rem}.dtf2-sheet-logo span:nth-child(even){background:var(--dtf-orange);transform:rotate(5deg)}.dtf2-program-sheet h3{font-size:1.65rem}.dtf2-program-sheet ul{padding-left:1.2em}.dtf2-program-sheet li{margin:.72em 0}.dtf2-program-sheet>p{margin:28px 0 0;padding-top:18px;border-top:1px solid var(--border);color:var(--muted);font-size:.82rem}

.dtf2-mike{padding:100px 0;background:var(--dtf-night);color:#eee3d3}.dtf2-mike-grid{display:grid;grid-template-columns:minmax(500px,.95fr) minmax(0,1.05fr);gap:64px;align-items:center}.dtf2-mike-image{display:grid;grid-template-columns:minmax(0,360px) minmax(150px,1fr);gap:24px;align-items:end}.dtf2-mike-image img{width:100%;border-radius:14px;box-shadow:0 24px 50px rgba(0,0,0,.22)}.dtf2-mike-image span{justify-self:start;max-width:200px;margin:0 0 28px;padding:13px 16px;border-radius:14px;background:var(--dtf-lavender);color:var(--dtf-night);font-size:.78rem;font-weight:700;line-height:1.35;transform:rotate(-3deg)}.dtf2-mike h2{max-width:12ch;color:#fff}.dtf2-mike p{max-width:62ch}.dtf2-mike .dtf2-inline{color:#cfbfff}

.dtf2-interest{padding:110px 0;background:var(--dtf-orange);color:var(--dtf-night)}.dtf2-interest-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);gap:80px;align-items:start}.dtf2-logo-small{max-width:390px;margin-bottom:54px}.dtf2-interest .dtf2-logo-small{padding:18px 22px 30px;border:2px solid var(--ink);background:var(--dtf-soft);box-shadow:0 22px 44px rgba(20,43,67,.18)}.dtf2-interest .dtf2-logo-small>sup{right:9px;bottom:12px}.dtf2-logo-small .dtf2-logo-draw{font-size:4rem}.dtf2-logo-small .dtf2-logo-lock{font-size:2.6rem}.dtf2-interest h2{max-width:11ch}.dtf2-interest-grid>div>p{max-width:50ch}.dtf2-contact{padding:32px;border-radius:14px;background:var(--paper);box-shadow:0 26px 60px rgba(20,43,67,.2)}.dtf2-contact .btn{width:100%}.dtf2-contact .form-note{margin-bottom:0}

@media(max-width:900px){
  .dtf2-hero-grid,.dtf2-thesis-grid,.dtf2-section-title,.dtf2-program-grid,.dtf2-mike-grid,.dtf2-interest-grid{grid-template-columns:1fr}
  .dtf2-hero-art{max-width:680px}.dtf2-method-rail{grid-template-columns:repeat(2,1fr)}.dtf2-method-rail>div:nth-child(2){border-right:0}.dtf2-method-rail>div:nth-child(-n+2){border-bottom:1px solid var(--ink)}
  .dtf2-thesis-grid,.dtf2-section-title,.dtf2-program-grid,.dtf2-interest-grid{gap:42px}.dtf2-thesis-art{max-width:720px;margin:-18px 0 18px}.dtf2-section-title{align-items:start}.dtf2-method-intro{max-width:720px}.dtf2-builder-head{grid-template-columns:1fr;gap:30px;align-items:start}.dtf2-builder-visual{max-width:720px}.dtf2-mike-grid{grid-template-columns:1fr;gap:46px}.dtf2-mike-image{max-width:620px}
}
@media(max-width:660px){
  .dtf2-nav-product{display:none}.dtf2-hero{padding-top:48px}.dtf2-logo{width:calc(100% - 18px);margin-bottom:42px}.dtf2-logo-draw{font-size:clamp(3.8rem,18vw,5rem)}.dtf2-logo-lock{font-size:clamp(2.45rem,11.5vw,3.25rem)}.dtf2-logo>sup{right:-1.5em;bottom:.2em;font-size:.62rem}.dtf2-logo-face::after{right:18%;bottom:-16px;width:42px;height:18px}.dtf2-hero-art{margin:0 -18px}.dtf2-method-rail{margin-top:24px}.dtf2-method-rail>div{grid-template-columns:38px 1fr;gap:9px;padding:14px 10px}.dtf2-method-rail b{width:36px;height:36px;font-size:1.4rem}
  .dtf2-thesis,.dtf2-method,.dtf2-builder,.dtf2-program,.dtf2-mike,.dtf2-interest{padding:72px 0}.dtf2-thesis-art{margin:-8px 0 16px}.dtf2-method-intro{gap:20px}.dtf2-method-art{margin-top:4px}.dtf2-moves article{grid-template-columns:54px 1fr;gap:17px}.dtf2-moves .dtf2-ask{justify-self:start;margin:15px 0 0}.dtf2-builder-head{gap:24px}.dtf2-builder-visual{gap:14px}.dtf2-canvas{grid-template-columns:1fr}.dtf2-field,.dtf2-field:nth-child(odd),.dtf2-field:nth-child(n+3){border-right:0;border-bottom:1px solid var(--ink)}.dtf2-build-actions{display:grid;justify-content:stretch}.dtf2-build-actions .btn{width:100%}.dtf2-reset{justify-self:center}
  .dtf2-difference-grid{grid-template-columns:1fr}.dtf2-difference-grid>div{min-height:0;padding:62px 22px}.dtf2-mike-grid{grid-template-columns:1fr}.dtf2-mike-image{grid-template-columns:1fr;max-width:320px;gap:0}.dtf2-mike-image span{position:relative;z-index:1;margin:-30px 0 0 22px}.dtf2-interest-grid{grid-template-columns:1fr}.dtf2-contact{padding:25px 20px}
}
@media(pointer:coarse){
  .dtf-page .foot a{display:inline-flex;align-items:center;min-height:44px}
}
@supports(padding:max(0px)){
  .dtf-page .nav .wrap,.dtf-page .foot .wrap{padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}
  .dtf-page .foot{padding-bottom:max(40px,calc(24px + env(safe-area-inset-bottom)))}
}
@media(max-width:420px){
  @supports(padding:max(0px)){
    .dtf-page .nav .wrap,.dtf-page .foot .wrap{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
  }
}

/* ---- Speaker landing page ---- */
::selection{background:var(--accent-text);color:#fff}
:focus-visible{outline:3px solid var(--accent-text);outline-offset:3px}

.speaker-hero{padding:72px 0 64px}
.speaker-hero-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:54px;align-items:center}
.speaker-hero h1{max-width:12ch;font-size:clamp(3.25rem,6.4vw,5.7rem);letter-spacing:-.015em;text-wrap:balance}
.speaker-hero-lead{max-width:62ch;font-size:1.18rem;line-height:1.58}
.speaker-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 30px}
.speaker-credentials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;margin:0;padding:20px 0 0;border-top:1px solid var(--border);list-style:none;color:var(--ink);font-size:.92rem;font-weight:600}
.speaker-credentials li{margin:0}
.speaker-hero-art{margin:0;position:relative;box-shadow:var(--shadow);border-radius:12px;overflow:hidden;background:var(--card)}
.speaker-hero-art img{width:100%;aspect-ratio:1.22/1;object-fit:cover;object-position:68% 36%}

.speaker-problem{padding:68px 0;background:var(--ink);color:#fff}
.speaker-problem-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:64px;align-items:start}
.speaker-problem h2{max-width:12ch;color:#fff;font-size:clamp(2.6rem,5vw,4.8rem);letter-spacing:-.01em}
.speaker-problem p{max-width:54ch;font-size:1.12rem;color:#f2e8d8}
.speaker-text-link{display:inline-block;color:#ff9a54;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.speaker-text-link:hover{color:#ffc296}

.speaker-keynote{padding:88px 0}
.speaker-section-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:48px;align-items:end;padding-bottom:32px;border-bottom:1px solid var(--border)}
.speaker-section-heading h2{max-width:15ch;font-size:clamp(2.8rem,5.5vw,5rem);letter-spacing:-.01em}
.speaker-section-heading p{max-width:40ch;margin:0;font-size:1.12rem}
.keynote-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:64px;padding-top:44px}
.keynote-copy{max-width:68ch}
.keynote-summary{font-size:1.2rem;color:var(--ink)}
.keynote-copy h3{margin-top:2.2em}
.speaker-outcomes{margin:18px 0 0;padding:0;list-style:none;border-top:1px solid var(--border)}
.speaker-outcomes li{padding:15px 0;border-bottom:1px solid var(--border)}
.dial-framework{padding:34px;background:var(--ink);color:#fff;align-self:start;box-shadow:var(--shadow);border-radius:12px}
.dial-framework h3{color:#fff;font-size:1.65rem}
.dial-framework>p{color:#eee2d1}
.dial-framework ol{margin:28px 0 0;padding:0;list-style:none;counter-reset:dial}
.dial-framework li{display:grid;grid-template-columns:34px 92px 1fr;gap:12px;align-items:baseline;padding:16px 0;border-top:1px solid rgba(255,255,255,.2);counter-increment:dial}
.dial-framework li::before{content:counter(dial,decimal-leading-zero);font-family:"Anton",sans-serif;color:#ff9a54;font-size:1.1rem}
.dial-framework strong{font-family:"Anton",sans-serif;font-size:1.05rem;font-weight:400;letter-spacing:.6px;text-transform:uppercase}
.dial-framework span{font-size:.88rem;line-height:1.45;color:#eee2d1}

.speaker-preview{padding:88px 0;background:var(--paper-2)}
.preview-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:38px 54px;align-items:start}
.speaker-reel{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:var(--ink);box-shadow:var(--shadow);object-fit:contain}
.speaker-preview-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 18px;align-items:baseline}
.speaker-preview-links a{color:var(--ink);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.speaker-preview-links a:hover{color:var(--accent-text)}
.speaker-preview-link{display:flex;min-height:330px;padding:34px;position:relative;overflow:hidden;border-radius:12px;box-shadow:var(--shadow);background:var(--ink);color:#fff;flex-direction:column;justify-content:flex-end}
.speaker-preview-link::after{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.22);pointer-events:none}
.speaker-preview-link .preview-event{position:absolute;top:42px;left:42px;color:#ff9a54;font-size:.78rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase}
.speaker-preview-link strong{position:relative;z-index:1;max-width:8ch;font-family:"Anton",sans-serif;font-size:clamp(3rem,6vw,5rem);font-weight:400;letter-spacing:-.01em;line-height:.92;text-transform:uppercase}
.speaker-preview-link .preview-watch{position:relative;z-index:1;margin-top:18px;color:#f2e8d8;font-size:.9rem;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.speaker-preview-link:hover{text-decoration:none;background:#1b3b5a}
.speaker-preview-link:hover .preview-watch{color:#ffb27d}
.video-caption{margin:10px 0 0;color:var(--muted);font-size:.82rem}
.preview-copy h2{font-size:clamp(2.4rem,4.5vw,4rem);max-width:13ch}
.preview-copy>p{max-width:55ch}
.preview-experience{grid-column:1/-1;padding-top:28px;border-top:1px solid #c7b695}
.preview-experience h3{margin:0 0 12px}
.experience-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;margin:0;padding:0;list-style:none;border-top:1px solid #c7b695}
.experience-list li{display:grid;grid-template-columns:minmax(160px,.75fr) minmax(0,1.25fr);gap:20px;padding:14px 0;border-bottom:1px solid #c7b695}
.experience-list span{color:var(--muted);font-size:.92rem}

.speaker-stage-proof{padding:88px 0;background:var(--ink);color:#fff}
.stage-proof-heading{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,.55fr);gap:72px;align-items:end;margin-bottom:36px}
.stage-proof-heading h2{max-width:12ch;color:#fff;font-size:clamp(2.6rem,4.8vw,4.4rem)}
.stage-proof-heading>p{max-width:47ch;margin:0;color:#eee2d1}
.stage-proof-grid{display:grid;grid-template-columns:minmax(0,1.55fr) repeat(2,minmax(210px,.72fr));gap:18px;align-items:stretch}
.stage-proof-card{display:grid;grid-template-rows:1fr auto;min-width:0;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:#13283d}
.stage-proof-card img{display:block;width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center 24%}
.stage-proof-card-wide img{aspect-ratio:4/3;object-position:center 58%}
.stage-proof-card figcaption{display:grid;gap:3px;padding:15px 17px 17px}
.stage-proof-card figcaption strong{font-family:"Anton",sans-serif;font-size:1.15rem;font-weight:400;letter-spacing:.4px;text-transform:uppercase}
.stage-proof-card figcaption span{color:#d8c8ab;font-size:.82rem}

.speaker-operator{padding:88px 0}
.operator-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:72px;align-items:start}
.operator-layout>div>p{max-width:62ch}
.operator-layout h2{font-size:clamp(2.6rem,4.6vw,4.2rem);max-width:14ch}
.operator-evidence{display:grid;gap:28px}
.speaker-stage-photo{margin:0;overflow:hidden;border-radius:12px;background:var(--card);box-shadow:var(--shadow)}
.speaker-stage-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.speaker-stage-photo figcaption{padding:12px 16px;color:var(--muted);font-size:.82rem}
.proof-ledger{margin:0;border-top:1px solid var(--border)}
.proof-ledger div{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:baseline;padding:24px 0;border-bottom:1px solid var(--border)}
.proof-ledger dt{font-family:"Anton",sans-serif;color:var(--accent-text);font-size:2rem;line-height:1;text-transform:uppercase}
.proof-ledger dd{margin:0;color:var(--ink);font-weight:600}

.speaker-programs{padding:88px 0;background:var(--ink);color:#fff}
.programs-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:72px}
.programs-layout h2{color:#fff;font-size:clamp(2.5rem,4.5vw,4.1rem);max-width:13ch}
.programs-layout>div:first-child p{color:#eee2d1;max-width:42ch}
.program-list{border-top:1px solid rgba(255,255,255,.24)}
.program-list article{padding:24px 0;border-bottom:1px solid rgba(255,255,255,.24)}
.program-list h3{color:#fff;font-size:1.45rem}
.program-list p{margin:0;color:#eee2d1}
.format-line{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.24);color:#eee2d1;font-size:.9rem}
.format-line strong{color:#ff9a54;text-transform:uppercase;letter-spacing:1px}

.speaker-kit{padding:54px 0;background:var(--accent-text);color:#fff}
.kit-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}
.speaker-kit h2{color:#fff;font-size:clamp(2.2rem,4vw,3.7rem)}
.speaker-kit p{max-width:60ch;margin:0;color:#fff3e8}
.kit-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.speaker-kit .btn-primary{background:#fff;color:var(--accent-dark)}
.speaker-kit .btn-primary:hover{background:var(--paper);color:var(--accent-dark)}
.kit-actions span{font-size:.8rem;color:#fff3e8}

.speaker-faq{padding:88px 0}
.faq-layout{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:72px;align-items:start}
.faq-layout h2{font-size:clamp(2.5rem,4.5vw,4rem);max-width:12ch}
.faq-list{border-top:1px solid var(--border)}
.faq-list details{border-bottom:1px solid var(--border)}
.faq-list summary{padding:20px 42px 20px 0;color:var(--ink);font-weight:700;cursor:pointer;position:relative;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:2px;top:16px;font-family:"Anton",sans-serif;color:var(--accent-text);font-size:1.5rem}
.faq-list details[open] summary::after{content:"−"}
.faq-list details p{padding:0 42px 20px 0;margin:0;color:var(--muted)}

.speaker-booking{padding:88px 0;background:#13283d;color:#fff}
.booking-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:72px;align-items:start}
.booking-copy h2{color:#fff;font-size:clamp(2.8rem,5vw,4.6rem);max-width:10ch}
.booking-copy p,.booking-copy li{color:#eee2d1}
.booking-copy ul{padding-left:1.15em}
.speaker-inquiry{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));padding:30px;background:#f7efe0;border-radius:12px;box-shadow:var(--shadow)}
.speaker-inquiry>div:nth-child(3),.speaker-inquiry>div:nth-child(4),.speaker-inquiry>div:nth-child(5){grid-column:1/-1}
.speaker-inquiry .form-note{color:var(--muted)}
.speaker-inquiry .form-note a{text-decoration:underline;text-underline-offset:3px}

@media(max-width:900px){
  .speaker-hero-layout,.speaker-problem-layout,.speaker-section-heading,.keynote-layout,.preview-layout,.stage-proof-heading,.operator-layout,.programs-layout,.faq-layout,.booking-layout{grid-template-columns:1fr}
  .speaker-hero-layout,.speaker-problem-layout,.keynote-layout,.preview-layout,.operator-layout,.programs-layout,.faq-layout,.booking-layout{gap:38px}
  .stage-proof-heading{gap:18px}
  .stage-proof-grid{grid-template-columns:1.2fr 1fr}
  .stage-proof-card-wide{grid-column:1/-1}
  .stage-proof-card img{min-height:360px}
  .stage-proof-card-wide img{min-height:0}
  .speaker-section-heading{gap:18px}
  .speaker-hero-art{max-width:680px}
  .speaker-hero-art img{aspect-ratio:16/10;object-position:66% 30%}
  .experience-list{grid-template-columns:1fr}
  .dial-framework{max-width:620px}
  .kit-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
  .speaker-hero{padding:48px 0}
  .speaker-hero h1{font-size:clamp(2.85rem,14vw,4.2rem)}
  .speaker-actions{align-items:stretch;flex-direction:column}
  .speaker-actions .btn{text-align:center}
  .speaker-credentials{grid-template-columns:1fr}
  .speaker-problem,.speaker-keynote,.speaker-preview,.speaker-stage-proof,.speaker-operator,.speaker-programs,.speaker-faq,.speaker-booking{padding:64px 0}
  .stage-proof-grid{grid-template-columns:1fr}
  .stage-proof-card-wide{grid-column:auto}
  .stage-proof-card img{height:auto;min-height:0;aspect-ratio:4/3;object-position:center 30%}
  .dial-framework{padding:26px 22px}
  .dial-framework li{grid-template-columns:30px 78px 1fr;gap:8px}
  .experience-list li,.proof-ledger div{grid-template-columns:1fr;gap:4px}
  .speaker-inquiry{grid-template-columns:1fr;padding:24px 18px}
  .speaker-inquiry>div{grid-column:1!important}
}
