/* theme_skinner — index.html styles (Claude-owned)

   This product brands itself. Its palette and components are its own
   and deliberately NOT shared with /assets/css/site.css, which covers
   the main site pages only (index, contact_us).

   One file per page: this product's pages share ~20 selectors but
   define several of them differently, so a single combined stylesheet
   collides. */

:root{
    /* This page is themed with the Parchment preset. */
    --surface:#f5eedc;
    --surface-container:#fbf7ec;
    --surface-container-2:#efe6cf;
    --text:#2a1800;
    --text-label:#5c4326;
    --text-recessive:#7a5a2a;
    --accent:#5c3410;
    --border:rgba(80,50,10,.16);
    --border-2:rgba(80,50,10,.30);
    --on-accent:#f5eedc;
    --serif:Georgia,"Iowan Old Style","Palatino Linotype","Times New Roman",serif;
    --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    --mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
    --wrap:840px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:var(--surface);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;}
  a{color:var(--accent);text-decoration:none;}
  a:hover{text-decoration:underline;}
  :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px;}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 26px;}
  h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--text);line-height:1.15;}

  /* top bar */
  .topbar{border-bottom:.5px solid var(--border);}
  .topbar .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px;}
  .mark{line-height:1.1;}
  .mark .name{font-family:var(--serif);font-size:19px;color:var(--text);}
  .mark .pub{font-family:var(--mono);font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--text-recessive);margin-top:5px;}
  .mark .pub a{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--border-2);transition:.2s;}
  .mark .pub a:hover{color:var(--accent);text-decoration-color:var(--accent);}
  .navlink{font-size:14px;color:var(--text-label);}

  /* sections */
  section{padding:56px 0;border-bottom:.5px solid var(--border);}
  section.alt{background:var(--surface-container);}
  .eyebrow{font-size:12px;letter-spacing:.07em;text-transform:lowercase;color:var(--text-recessive);margin:0 0 12px;}
  .lede{font-family:var(--serif);font-style:italic;font-size:clamp(20px,3.4vw,26px);color:var(--accent);margin:0 0 16px;}
  h1.hero{font-size:clamp(40px,8vw,62px);margin:0 0 8px;letter-spacing:-.01em;}
  .intro{font-size:17px;max-width:520px;color:#3d2a12;margin:0 0 26px;}
  h2{font-size:clamp(24px,4vw,30px);margin:0 0 6px;}
  .sub{color:var(--text-label);max-width:560px;margin:0 0 26px;}

  /* buttons */
  .btn{display:inline-block;border-radius:9px;padding:11px 22px;font-size:15px;font-family:var(--sans);cursor:pointer;border:.5px solid transparent;transition:transform .08s ease;}
  .btn:hover{text-decoration:none;}
  .btn:active{transform:scale(.985);}
  .btn-primary{background:var(--text);color:var(--on-accent);}
  .btn-ghost{background:transparent;color:var(--accent);border-color:var(--border-2);}
  .btn-row{display:flex;gap:12px;flex-wrap:wrap;}

  /* cascade demo */
  .demo{background:var(--surface-container);border:.5px solid var(--border);border-radius:14px;padding:22px 24px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:6px;}
  .demo .cap{font-size:11px;color:var(--text-recessive);margin-bottom:7px;}
  .chip-big{width:66px;height:66px;border-radius:11px;border:.5px solid var(--border-2);}
  .hex{font-family:var(--mono);font-size:11px;color:var(--accent);margin-top:6px;text-align:center;}
  .chips{display:flex;gap:9px;}
  .chips .c{text-align:center;}
  .chips .sw{width:44px;height:44px;border-radius:9px;border:.5px solid var(--border);}
  .chips .lbl{font-size:10px;color:var(--text-recessive);margin-top:5px;}
  .arrow{font-size:24px;color:#9a7a4a;line-height:1;}

  /* feature beats */
  .beats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:26px;}
  .beat .ico{font-size:22px;line-height:1;color:var(--accent);}
  .beat h3{font-size:17px;margin:10px 0 5px;}
  .beat p{font-size:14px;color:#5c4326;margin:0;}

  /* screenshot slot */
  .shot{margin-top:34px;border:1.5px dashed var(--border-2);border-radius:14px;background:var(--surface-container-2);aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--text-recessive);}
  .shot .t{font-size:14px;letter-spacing:.02em;}
  .shot .s{font-size:12px;margin-top:4px;opacity:.8;}
  /* filled variant — real capture in a browser-chrome frame, click-to-zoom */
  .shot.filled{display:block;aspect-ratio:auto;padding:0;border:.5px solid var(--border-2);background:var(--surface-container);box-shadow:0 18px 44px rgba(40,30,15,.13),0 3px 8px rgba(40,30,15,.07);overflow:hidden;}
  .shot.filled .shot-chrome{display:flex;align-items:center;gap:6px;padding:9px 12px;background:var(--surface-container-2);border-bottom:.5px solid var(--border);}
  .shot.filled .shot-chrome i{width:9px;height:9px;border-radius:50%;background:#d9c9a8;display:inline-block;}
  .shot.filled .shot-chrome i:first-child{background:#e0796b;}
  .shot.filled .shot-chrome i:nth-child(2){background:#e8c15a;}
  .shot.filled .shot-chrome i:nth-child(3){background:#7fb87f;}
  .shot.filled .shot-chrome .label{margin-left:10px;font-family:var(--mono);font-size:11px;color:var(--text-recessive);}
  .shot-img-btn{display:block;width:100%;border:0;padding:0;margin:0;background:none;cursor:zoom-in;line-height:0;}
  .shot-img-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;}
  .shot-img{width:100%;height:auto;display:block;}
  /* lightbox */
  .lightbox{position:fixed;inset:0;z-index:999;display:none;align-items:center;justify-content:center;background:rgba(28,22,12,.84);padding:4vmin;cursor:zoom-out;}
  .lightbox.open{display:flex;}
  .lightbox img{max-width:96vw;max-height:92vh;border-radius:8px;box-shadow:0 30px 80px rgba(0,0,0,.5);}
  .lightbox-close{position:fixed;top:16px;right:24px;color:#f6f1e7;font-size:30px;background:none;border:0;cursor:pointer;line-height:1;opacity:.85;}

  /* preset strip */
  .presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:13px;}
  .pcard{border:.5px solid var(--border);border-radius:11px;overflow:hidden;background:var(--surface-container);}
  .pcard .bar{display:flex;height:38px;}
  .pcard .bar span{flex:1;}
  .pcard .nm{padding:8px 11px;font-size:12.5px;color:#3d2a12;}

  /* export spotlight */
  .export{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;}
  pre.code{margin:0;background:#26201a;color:#e8dcc4;border-radius:12px;padding:16px 18px;font-family:var(--mono);font-size:12.5px;line-height:1.6;overflow:auto;}
  pre.code .c1{color:#c8b48a;}
  pre.code .c2{color:#9fd4b8;}
  .sample{border-radius:12px;padding:18px;}
  .util{margin-top:16px;font-size:13.5px;color:var(--text-label);}
  .util code{font-family:var(--mono);background:var(--surface-container-2);padding:1px 6px;border-radius:5px;}

  /* lists */
  .stack{display:grid;gap:18px;max-width:640px;}
  .item{display:flex;gap:14px;}
  .item .k{flex:0 0 auto;font-family:var(--mono);font-size:12px;color:var(--accent);width:104px;padding-top:3px;}
  .item .d{font-size:14.5px;color:#3d2a12;}
  .item .d b{color:var(--text);font-weight:500;}
  ul.plain{list-style:none;padding:0;margin:0;display:grid;gap:10px;max-width:560px;}
  ul.plain li{font-size:15px;color:#3d2a12;padding-left:22px;position:relative;}
  ul.plain li::before{content:"·";position:absolute;left:6px;color:var(--accent);font-weight:700;}

  /* footer */
  footer{padding:54px 0 60px;text-align:center;}
  footer .small{font-size:13px;color:var(--text-recessive);margin:18px 0 0;}
  .isnt{margin-top:22px;font-size:14px;color:var(--text-label);max-width:560px;}

  @media (max-width:620px){
    .export{grid-template-columns:1fr;}
    .item{flex-direction:column;gap:3px;}
    .item .k{width:auto;}
  }
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto;}
    .btn{transition:none;}
  }
