/* Mira Lis — shared styles. Mobile-first, no framework, self-hosted fonts (no third-party requests). */
@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin-ext-400-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Newsreader;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/newsreader-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Newsreader;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/newsreader-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bg:#f7f3ee; --paper:#fffdf9; --sand:#efe6db; --line:#e0d6cb;
  --ink:#2a2420; --ink-2:#4a403a; --muted:#6b5f56;
  --copper:#9a4a2a; --copper-dark:#6e2f18; --alert-bg:#f6e6dc;
  --serif:Newsreader,Georgia,serif; --sans:"IBM Plex Sans",system-ui,sans-serif; --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--copper)} a:hover{color:var(--copper-dark)}
:focus-visible{outline:2px solid var(--copper);outline-offset:3px}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.kicker{font:12px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--copper)}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;line-height:1.05;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:clamp(44px,11vw,76px)} h1 em{font-style:italic}
h2{font-size:clamp(32px,7vw,48px)}
h3{font-size:22px;font-weight:500;line-height:1.2}
p{margin:0;text-wrap:pretty}
.btn{display:inline-block;background:var(--ink);color:var(--bg);text-decoration:none;padding:15px 24px;border-radius:4px;font-weight:600;font-size:16px;text-align:center}
.btn:hover{background:#000;color:var(--bg)}
.note{font-size:14px;color:var(--muted)}
.btn-soon{background:var(--sand);color:var(--ink);border:1.5px dashed var(--copper);cursor:default}
.btn-soon:hover{background:var(--sand);color:var(--ink)}
.btn-link{font-weight:600;text-decoration:none;color:var(--copper)}
.ai-banner{background:var(--paper);border-left:3px solid var(--copper);padding:10px 14px;font-size:15px;color:var(--ink-2);max-width:34em}

/* nav */
.nav{position:sticky;top:0;z-index:5;background:rgba(247,243,238,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;justify-content:space-between;align-items:center;height:56px}
.nav .logo{font:22px var(--serif);color:var(--ink);text-decoration:none}
.nav .btn{padding:9px 14px;font-size:14px}

main{display:flex;flex-direction:column;gap:72px;padding-bottom:72px}
section{scroll-margin-top:72px}

/* hero */
.hero{display:grid;gap:32px;padding-top:32px;align-items:center}
.hero-copy{display:flex;flex-direction:column;gap:20px}
.hero-copy .lead{font-size:18px;color:var(--ink-2);max-width:32em}
.cta-row{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center}
.hero-card{position:relative;background:var(--ink);color:#efe6db;overflow:hidden;aspect-ratio:4/5;max-width:440px;width:100%;justify-self:center}
.hero-card img{width:100%;height:100%;object-fit:cover}
.hero-card .cap{position:absolute;left:0;right:0;bottom:0;padding:48px 20px 20px;background:linear-gradient(transparent,rgba(42,36,32,.88))}
.hero-card .cap b{display:block;font:400 34px/1 var(--serif)}
.hero-card .cap i{font:italic 16px var(--serif);color:#e0a585}

/* timeline */
.timeline{display:grid;gap:12px}
.timeline div{background:var(--paper);border:1px solid var(--line);padding:16px 18px}
.timeline span{display:block;font:12px var(--mono);color:var(--copper);margin-bottom:6px}
.timeline p{font:19px/1.35 var(--serif)}

/* cards grid */
.cards{display:grid;grid-template-columns:1fr;gap:8px;margin-top:24px;padding:0;list-style:none}
.cards li{display:flex;gap:12px;align-items:baseline;background:var(--paper);border:1px solid var(--line);padding:12px 14px;font-size:15px}
.cards li span{font:12px var(--mono);color:var(--copper);min-width:20px}
.cards li.alert{background:var(--alert-bg);border-color:#e3c2ae}
.after{margin-top:16px;color:var(--ink-2);font-size:15px;max-width:40em}

/* preview */
.preview{display:grid;gap:32px;align-items:center}
.sheet{background:var(--paper);border:1px solid var(--ink);outline:1px solid var(--ink);outline-offset:4px;padding:24px 22px;margin:5px}
.sheet .kicker{font-size:11px}
.sheet h3{font-size:28px;margin:8px 0 4px;font-weight:400}
.sheet .rule{font:italic 17px var(--serif);color:var(--copper)}
.sheet blockquote{margin:14px 0;background:var(--sand);padding:12px 14px;font:17px/1.4 var(--serif)}
.sheet ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:15px}
.sheet li{display:flex;gap:10px;align-items:flex-start}
.sheet li::before{content:"";flex:none;width:14px;height:14px;border:1.5px solid var(--ink);margin-top:4px}
.sheet li.fade{color:var(--muted)}

/* bonuses */
.bonuses{display:grid;gap:20px;margin-top:24px}
.bonuses div{border-top:2px solid var(--ink);padding-top:14px}
.bonuses p{color:var(--ink-2);font-size:15px;margin-top:6px}

/* about */
.about{background:var(--sand);display:grid;gap:24px;padding:24px 16px;align-items:center}
.about img{aspect-ratio:4/5;object-fit:cover;width:100%;max-width:360px}
.about blockquote{margin:12px 0;font:21px/1.4 var(--serif)}
.about .who{font-size:14px;color:var(--ink-2)}
.ai-tag{display:inline-block;font:11px var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--copper);color:var(--copper);padding:2px 6px;margin-left:6px}

/* price */
.price{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.price .amount{font:400 clamp(72px,20vw,120px)/1 var(--serif)}
.price p{max-width:30em;color:var(--ink-2)}
.price .legal{font-size:13px;color:var(--muted);max-width:34em}

/* faq */
.faq{max-width:760px;margin:0 auto;width:100%}
.faq details{border-top:1px solid var(--line);padding:14px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font:20px var(--serif);list-style-position:outside}
.faq details p{margin-top:10px;color:var(--ink-2)}

/* footer */
footer{border-top:1px solid var(--line);padding:28px 0 40px;font-size:13px;color:var(--muted)}
footer .wrap{display:flex;flex-direction:column;gap:12px}
footer nav{display:flex;flex-wrap:wrap;gap:8px 18px}
footer a{color:var(--ink-2)}

/* legal pages */
.doc{display:block;max-width:760px;margin:0 auto;padding:32px 16px 72px}
.doc h1{font-size:clamp(36px,8vw,52px);margin-bottom:8px}
.doc h2{font-size:26px;margin:32px 0 10px}
.doc p,.doc li{color:var(--ink-2)}
.doc ol,.doc ul{padding-left:22px;display:flex;flex-direction:column;gap:6px}
.draft{background:var(--alert-bg);border:1px solid #e3c2ae;padding:12px 14px;font-size:14px;margin:16px 0}
mark{background:#fbe3a8;color:var(--ink);padding:0 3px}

@media (min-width:600px){
  .wrap{padding:0 24px}
  .timeline{grid-template-columns:repeat(3,1fr)}
  .cards{grid-template-columns:repeat(2,1fr)}
  .bonuses{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:900px){
  main{gap:96px}
  .hero{grid-template-columns:1.1fr .9fr;gap:48px;padding-top:56px}
  .cards{grid-template-columns:repeat(4,1fr)}
  .preview{grid-template-columns:1fr 1fr;gap:56px}
  .about{grid-template-columns:.8fr 1.2fr;padding:40px;gap:48px}
}
