/* Shared story theme for informational and setup pages; forms keep their base rules. */
:root{--k:#28372d;--t:#354337;--m:#646c5b;--w:#fffaf1;--s:#f8f1e4;--l:#ddd1b9;--yd:#865119;--yt:#fff0b2;--r:12px}
body.story-page{background:linear-gradient(#f9e4cf 0,#f6dfc2 420px,#f7f1e5 840px);min-height:100vh}
.story-page a{color:#705023;text-underline-offset:3px}
.story-page .site-head{background:rgba(255,250,241,.92);border-bottom:1px solid #b39a7026}
.story-page .site-head .wrap{max-width:1200px}
.story-page .brand{color:var(--k)}
.story-page .nav a{color:var(--k)}
.story-page .nav a:hover{background:#ead8bc}
.story-page .nav a[aria-current]{background:#ffd400}
.story-page main>.wrap{max-width:1120px}
.skip-link{position:fixed;z-index:100;left:16px;top:8px;padding:10px 18px;background:#fffaf1;border:2px solid #28372d;border-radius:12px;transform:translateY(-180%)}
.skip-link:focus{transform:none}
.service-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:18px;margin:26px 0 32px;min-height:310px;background:linear-gradient(115deg,#fae7d0,#f6d3ab);border:1px solid #c29e6433}
.service-copy{position:relative;z-index:1;max-width:61%;padding:30px 36px 36px}
.service-back{font-size:14px;font-weight:650;text-decoration:none}
.service-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:750;margin:26px 0 10px;color:#6e532e}
.service-title{font-size:clamp(30px,4vw,46px);font-weight:800;letter-spacing:-.045em;line-height:1.06;margin:0 0 14px;text-wrap:balance;color:var(--k)}
.service-lead{font-size:16px;line-height:1.5;margin:0;max-width:29em}
.service-scene{position:absolute;inset:0 0 0 auto;width:49%;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 28%)}
.service-town{position:absolute;width:100%;max-width:none;height:100%;right:0;bottom:0;object-fit:cover;object-position:center bottom}
.service-poldi{position:absolute;right:8%;bottom:-12px;height:87%;width:auto;filter:drop-shadow(0 10px 9px #5f43242b)}
.story-page .legal,.story-page .tool,.story-page .setup{position:relative;max-width:900px;margin:0 auto;padding:clamp(24px,4vw,48px);background:#fffaf5;border:1px solid #ded2bb;border-radius:8px;box-shadow:0 18px 48px -34px #57472c55}
.story-page .legal::before,.story-page .tool::before,.story-page .setup::before{content:"";position:absolute;inset:0 0 auto;width:auto;height:7px;border-radius:7px 7px 0 0;background:repeating-linear-gradient(-45deg,#ffd400 0 14px,#28372d 14px 22px,#fffaf5 22px 30px,#28372d 30px 38px);z-index:0}
.story-page .legal h1,.story-page .tool-intro h1{margin-top:6px;font-size:clamp(32px,5vw,48px)}
.story-page .legal h2{line-height:1.25;margin-top:34px;padding-top:20px;border-top:1px solid #e5dbc9}
.story-page .legal h3{line-height:1.4}
.story-page .legal p{line-height:1.75}
.story-page .btn-ink{color:#fffaf1;background:var(--k)}
.story-page .btn-line{color:var(--k)}
.story-page .note,.story-page .setup-note{background:#eaf0df;color:#354337;border:1px solid #c9d4b8;border-radius:10px}
.story-page .note b{color:var(--k)}
.story-page .note .ico,.story-page .setup-note .ico{color:#526941}
.story-page .setup{gap:28px;grid-template-columns:100px minmax(0,1fr)}
.story-page .setup .app{width:100px;transform:rotate(-3deg)}
.story-page .setup h1{font-size:clamp(30px,4vw,46px);line-height:1.08}
.story-page .setup .env{display:none}
.story-page .setup-steps{margin:48px auto 0;max-width:900px}
.story-page .setup-note{max-width:900px;margin:28px auto 0}
.story-page .site-foot{margin-top:64px;background:linear-gradient(#eee0ca,#d4bfa2);color:#475140;padding-top:0}
.story-page .site-foot::before{height:1px;background:#c8b397}
.story-page .site-foot .brand,.story-page .site-foot a{color:var(--k)}
.story-page .site-foot .brand span{color:var(--yd)}
.story-page .site-foot a:hover{text-decoration:underline}
.story-page .site-foot .copy{border-color:#bda98c;color:#52604b}
.story-page :is(input,textarea,button,a):focus-visible{outline:3px solid #526941;outline-offset:3px}
@media(max-width:720px){
  html{scroll-padding-top:150px}
  .story-page .site-head .wrap{height:auto;min-height:68px;flex-wrap:wrap;padding-block:12px;gap:8px}
  .story-page .nav{width:100%;flex-wrap:wrap;gap:3px}
  .story-page .nav .opt{display:block}
  .story-page .nav a{font-size:13px;padding:7px 9px}
  .service-hero{min-height:360px;margin-top:18px}
  .service-copy{max-width:100%;padding:24px 22px 165px}
  .service-eyebrow{margin-top:18px}
  .service-title{font-size:30px;max-width:16em}
  .service-lead{font-size:15px}
  .service-scene{top:auto;height:170px;width:100%;mask-image:linear-gradient(to bottom,transparent,#000 25%)}
  .service-town{right:0;height:260px;bottom:-50px;mask-image:linear-gradient(to right,transparent,#000 25%)}
  .service-poldi{height:160px;right:14%;bottom:-8px}
  .story-page .legal,.story-page .tool,.story-page .setup{padding:26px 20px}
  .story-page .setup{grid-template-columns:1fr}
  .story-page .setup .app{width:72px}
  .story-page .site-foot .wrap{gap:24px}
}
@media print{
  body.story-page{background:#fff}
  .story-page .site-head,.story-page .site-foot,.service-hero,.skip-link{display:none}
  .story-page .legal,.story-page .tool,.story-page .setup{box-shadow:none;border:0;padding:0}
  .story-page .legal::before,.story-page .tool::before,.story-page .setup::before{display:none}
}
