/* Interior pages — SUPŌN editorial design system */
body.interior-page{
  --accent:#00684f;--accent-ink:#005541;--accent-soft:#eef5f1;
  --paper:#fbfaf6;--surface:#fff;--ink:#151b18;--muted:#626965;
  --line:#dedbd2;--radius:8px;--maxw:1060px;
  overflow-x:hidden;background:var(--paper);color:var(--ink);
  font-family:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic","Noto Sans JP",sans-serif;
  letter-spacing:.012em;
}
body.interior-page>.sitenav{position:relative;z-index:10;border-bottom:1px solid rgba(222,219,210,.75);background:rgba(255,255,253,.97)}
body.interior-page>.sitenav .wrap{box-sizing:border-box;width:min(1060px,calc(100% - 64px));max-width:none;min-height:78px;padding:15px 0;gap:38px}
body.interior-page>.sitenav .logo img{height:43px}
body.interior-page>.sitenav a.nav{position:relative;padding:4px 0;color:#1c2621;font-size:.86rem;font-weight:700;letter-spacing:.05em}
body.interior-page>.sitenav a.nav:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--accent);transition:right .2s ease}
body.interior-page>.sitenav a.nav:hover:after{right:0}
body.interior-page>main.wrap{width:min(1060px,calc(100% - 64px));max-width:none;padding:0}
body.interior-page h1,body.interior-page h2,body.interior-page h3{font-family:"Zen Old Mincho","Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;color:#004c3d;letter-spacing:.045em}
body.interior-page .eyebrow{margin-bottom:15px;color:var(--accent);font-size:.7rem;font-weight:800;letter-spacing:.14em}

body.interior-page .hero{position:relative;padding:78px 0 64px}
body.interior-page .visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.interior-page .hero h1{max-width:820px;margin:0 0 20px;font-size:clamp(2.15rem,5.1vw,3.65rem);font-weight:700;line-height:1.28}
body.interior-page .hero h1 .save{color:var(--accent)}
body.interior-page .hero .lead{max-width:660px;margin-bottom:30px;color:#555e59;font-size:1rem;line-height:1.95}
body.interior-page .actions{gap:12px}
body.interior-page .btn{box-sizing:border-box;min-height:52px;padding:0 25px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;letter-spacing:.035em;transition:transform .2s ease,box-shadow .2s ease}
body.interior-page .btn:hover{transform:translateY(-2px)}
body.interior-page .btn-primary{border-color:var(--accent);background:linear-gradient(135deg,var(--accent),#008b68);box-shadow:0 12px 24px rgba(0,104,79,.15)}
body.interior-page .btn-ghost{border-color:var(--accent);background:transparent;color:var(--accent)}
body.interior-page .promise,body.interior-page .cta-stance{color:#6c736f}

body.interior-page .mock{margin-top:46px;padding:24px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 18px 40px rgba(34,48,41,.07)}
body.interior-page .product-keyvisual{max-width:980px;margin:46px 0 0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 18px 40px rgba(34,48,41,.07)}
body.interior-page .hero .product-keyvisual{margin-top:0}
body.interior-page .product-keyvisual img{display:block;width:100%;height:auto}
body.interior-page .mock .field,body.interior-page .research-demo-screen{border-radius:6px;background:#f8f7f2}
body.interior-page .restore-chip{border-radius:5px}
body.interior-page .restore-chip .go,body.interior-page .research-add,body.interior-page .research-pdf-button{border-radius:3px;background:var(--accent)}

body.interior-page section{padding:58px 0;border-top:1px solid var(--line)}
body.interior-page section h2{margin:0 0 22px;font-size:clamp(1.55rem,3vw,2.05rem);font-weight:700;line-height:1.48}
body.interior-page section h3{font-weight:700}
body.interior-page section>p{max-width:760px;color:#4f5853;line-height:1.95}
body.interior-page .pains{gap:11px;max-width:780px}
body.interior-page .pains li{padding-left:23px;line-height:1.85}
body.interior-page .pains li:before{left:2px;top:.8em;width:8px;height:2px;background:var(--accent)}

body.interior-page .features{gap:18px}
body.interior-page .card{padding:25px 23px;border:1px solid var(--line);border-radius:6px;background:#fff}
body.interior-page .card .n{display:block;color:var(--accent);font-size:.7rem;font-weight:800}
body.interior-page .card h3{margin:11px 0 8px;font-size:1.03rem}
body.interior-page .card p{color:#626965;line-height:1.8}

body.interior-page .band{margin:26px 0;padding:44px 38px;border:1px solid var(--line);border-radius:6px;background:#fff}
body.interior-page .band+.band{margin-top:18px}
body.interior-page .charter.band{border-top:4px solid var(--accent);background:#fff}
body.interior-page .charter.band .card{border-color:var(--line);background:var(--paper)}
body.interior-page .charter.band .tradeoff{border-left:3px solid var(--accent);background:transparent}
body.interior-page .excluded li{padding:15px 18px 15px 42px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
body.interior-page .excluded li:last-child{border-bottom:0}

body.interior-page .trial{margin-bottom:24px;padding:19px 22px;border-radius:4px;background:var(--accent);color:#fff;line-height:1.8}
body.interior-page .trial b{color:#fff}
body.interior-page table.plans{width:100%;overflow:hidden;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:6px;background:#fff}
body.interior-page table.plans th{padding:15px 12px;border-color:#277c66;background:var(--accent);color:#fff;font-size:.82rem}
body.interior-page table.plans td{padding:14px 12px;border-color:#e6e3dc}
body.interior-page table.plans tr:nth-child(even) td{background:#faf9f5}
body.interior-page table.plans .pro{color:var(--accent);font-weight:700}
body.interior-page .plan-note{color:#6b726e;font-size:.84rem;line-height:1.8}

body.interior-page .profeat{padding:30px 0;border-bottom:1px solid var(--line)}
body.interior-page .profeat:last-child{border-bottom:0}
body.interior-page .profeat h3{font-size:1.2rem}
body.interior-page .ui-banner,body.interior-page .ui-card{border-radius:6px;box-shadow:none}
body.interior-page .ui-primary{border-radius:3px;background:var(--accent)}

body.interior-page .cta-again{padding:46px 34px;border:0;border-radius:6px;background:var(--accent);color:#fff}
body.interior-page .cta-again h2,body.interior-page .cta-again p,body.interior-page .cta-again .cta-stance,body.interior-page .cta-again .upgrade h3,body.interior-page .cta-again .upgrade p,body.interior-page .cta-again b,body.interior-page .cta-again strong{color:#fff}
body.interior-page .cta-again .btn-primary{border-color:#fff;background:#fff;color:var(--accent);box-shadow:none}
body.interior-page .cta-again .upgrade{border-top-color:rgba(255,255,255,.35)}

body.interior-page details{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
body.interior-page details:first-of-type{border-top:1px solid var(--line)}
body.interior-page summary{padding:18px 2px;color:#26332d;font-weight:700}
body.interior-page details p{padding:0 2px 20px;color:#5e6662}

body.interior-page .plist{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.interior-page .plist a.pcard{height:100%;padding:27px;border-radius:6px;background:#fff;transition:transform .2s ease,border-color .2s ease}
body.interior-page .plist a.pcard:hover{transform:translateY(-3px);border-color:var(--accent)}
body.interior-page .plist h3{color:var(--accent);font-size:1.3rem}

body.interior-page .prose,body.interior-page .legal{max-width:820px;margin:0 auto;padding-top:72px;padding-bottom:72px}
body.interior-page .prose h1,body.interior-page .legal h1{margin:0 0 18px;font-size:clamp(2rem,4vw,3rem)}
body.interior-page .prose h3{margin:42px 0 12px;padding-top:2px;color:var(--accent);font-size:1.15rem}
body.interior-page .prose p{color:#4f5853;line-height:2}
body.interior-page .updated{color:#808681;font-size:.78rem}
body.interior-page .legal dl{display:grid;grid-template-columns:190px minmax(0,1fr);margin-top:34px;border-top:2px solid var(--accent)}
body.interior-page .legal dt,body.interior-page .legal dd{margin:0;padding:17px 14px;border-bottom:1px solid var(--line)}
body.interior-page .legal dt{color:var(--accent);font-weight:700}
body.interior-page .legal dd{color:#4f5853}

body.interior-page>footer{display:grid;grid-template-columns:1fr 2fr auto;width:min(1060px,calc(100% - 64px));margin:0 auto;padding:44px 0 50px;align-items:center;gap:28px;border-top:1px solid var(--line);text-align:left}
body.interior-page>footer p{margin:0}
body.interior-page>footer .footer-logo{display:block;width:150px;height:auto;margin:0}
body.interior-page>footer .fbrand,body.interior-page>footer .freading{display:none}
body.interior-page>footer p:nth-child(2){text-align:center}
body.interior-page>footer p:last-child{text-align:right}

body.interior-page .btn:focus-visible,body.interior-page a:focus-visible,body.interior-page summary:focus-visible{outline:3px solid #7bc4a6;outline-offset:4px}

@media(max-width:760px){
  body.interior-page>.sitenav .wrap{width:calc(100% - 32px);min-height:68px;padding:11px 0;justify-content:center;gap:2px 18px}
  body.interior-page>.sitenav .logo{width:100%;margin:0;justify-content:center}
  body.interior-page>.sitenav .logo img{height:34px}
  body.interior-page>.sitenav a.nav{padding:7px 0;font-size:.76rem}
  body.interior-page>main.wrap,body.interior-page>footer{width:calc(100% - 40px)}
  body.interior-page .hero{padding:61px 0 50px}
  body.interior-page .product-keyvisual{margin-top:34px}
  body.interior-page .hero h1{font-size:clamp(2rem,10vw,2.75rem)}
  body.interior-page .hero .lead{font-size:.94rem}
  body.interior-page .actions{display:grid;grid-template-columns:1fr}
  body.interior-page .btn{width:100%}
  body.interior-page .mock{margin-top:34px;padding:16px}
  body.interior-page section{padding:47px 0}
  body.interior-page .features,body.interior-page .plist{grid-template-columns:1fr}
  body.interior-page .band{margin:18px 0;padding:32px 20px}
  body.interior-page table.plans{display:block;overflow-x:auto;white-space:nowrap}
  body.interior-page .cta-again{padding:36px 22px}
  body.interior-page .legal dl{grid-template-columns:1fr}
  body.interior-page .legal dt{padding-bottom:4px;border-bottom:0}
  body.interior-page .legal dd{padding-top:4px}
  body.interior-page>footer{grid-template-columns:1fr;padding:38px 0 45px;text-align:center}
  body.interior-page>footer .footer-logo{margin:0 auto}
  body.interior-page>footer p:nth-child(2),body.interior-page>footer p:last-child{text-align:center}
}

@media(prefers-reduced-motion:reduce){body.interior-page .btn,body.interior-page .pcard{transition:none}body.interior-page .btn:hover,body.interior-page .pcard:hover{transform:none}}
