
:root{
  --ink:#2C4141;
  --washi:#F7F4EE;
  --washi-2:#FBF8F1;
  --sage:#A7B8A8;
  --sand:#E7DECF;
  --grey:#71706D;
  --line:rgba(44,65,65,.14);
  --exam:#EFD5C1;
  --reset:#C8D3C1;
  --future:#CBC1D9;
  --shadow:0 24px 70px rgba(44,65,65,.12);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--washi);
  color:var(--ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.55;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
img{max-width:100%;display:block}
.container{width:min(1120px, calc(100% - 40px));margin-inline:auto}
.narrow{width:min(820px, calc(100% - 40px));margin-inline:auto}
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(247,244,238,.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(44,65,65,.08);
}
.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.18em;color:var(--ink);font-size:16px}
.brand img{width:40px;height:40px;object-fit:contain;background:transparent}
.brand small{display:block;font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--grey);margin-top:-2px}
.nav-links{display:flex;align-items:center;gap:26px;font-weight:700;font-size:15px;color:rgba(44,65,65,.83)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:999px;border:1px solid var(--ink);font-weight:800;white-space:nowrap;box-shadow:none;transition:.18s ease}
.btn.primary{background:var(--ink);color:var(--washi);box-shadow:0 12px 32px rgba(44,65,65,.18)}
.btn.secondary{background:transparent;color:var(--ink)}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.badge{display:inline-flex;align-items:center;justify-content:center;padding:7px 18px;border-radius:999px;background:var(--sage);color:var(--ink);font-weight:900;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.badge.exam{background:var(--exam)}.badge.reset{background:var(--reset)}.badge.future{background:var(--future)}
h1,h2,h3{margin:0;font-family: Georgia, "Times New Roman", serif;color:var(--ink);line-height:.96;letter-spacing:-.025em}
h1{font-size:clamp(46px, 7vw, 88px)}
h2{font-size:clamp(34px, 5vw, 58px)}
h3{font-size:clamp(24px, 3vw, 34px)}
p{margin:0;color:rgba(44,65,65,.82);font-size:18px}
.lead{font-size:clamp(19px,2.2vw,24px);line-height:1.42;color:rgba(44,65,65,.82)}
.muted{color:var(--grey)}
.section{padding:90px 0}
.section.tight{padding:60px 0}
.hero{padding:76px 0 70px;background:radial-gradient(circle at 75% 20%, rgba(167,184,168,.22), transparent 28%),linear-gradient(180deg, #fbf8f1 0%, var(--washi) 100%)}
.hero-grid{display:grid;grid-template-columns:1.02fr .82fr;gap:64px;align-items:center}
.hero-copy .badge{margin-bottom:22px;min-width:380px;max-width:100%;}
.hero-copy h1{margin-bottom:24px;max-width:780px}
.hero-copy .lead{max-width:690px;margin-bottom:28px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 26px}
.hero-note{font-size:14px;color:var(--grey);max-width:620px}
.hero-product{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}
.hero-product::before{content:"";position:absolute;width:430px;height:430px;border-radius:50%;background:rgba(231,222,207,.42);filter:blur(.2px)}
.hero-product .box{position:relative;width:min(390px,90%);border-radius:28px;box-shadow:var(--shadow)}
.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px;max-width:930px}
.stat-card{background:rgba(255,255,255,.54);border:1px solid rgba(44,65,65,.08);border-radius:18px;padding:18px 18px;min-height:116px}
.stat-card strong{display:block;font-size:30px;font-family:Georgia,"Times New Roman",serif;line-height:1;color:var(--ink);margin-bottom:8px}
.stat-card span{font-size:14px;line-height:1.35;color:rgba(44,65,65,.76)}
.problem{padding:76px 0;background:rgba(255,255,255,.35);border-top:1px solid rgba(44,65,65,.07);border-bottom:1px solid rgba(44,65,65,.07)}
.problem-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.problem h2{margin-bottom:18px}.problem p{max-width:620px}
.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.kpi{border:1px solid rgba(44,65,65,.12);border-radius:20px;padding:22px;background:var(--washi-2)}
.kpi b{display:block;font-size:33px;line-height:1;color:var(--ink);font-family:Georgia,"Times New Roman",serif;margin-bottom:10px}
.kpi span{display:block;color:rgba(44,65,65,.74);font-size:15px;line-height:1.35}
.kpi small{display:block;margin-top:12px;font-size:11px;color:var(--grey)}
.mode-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
.mode{border:1px solid rgba(44,65,65,.11);border-radius:22px;padding:24px;background:rgba(255,255,255,.43)}
.mode .pill{display:inline-flex;border-radius:999px;padding:6px 13px;font-size:12px;font-weight:900;letter-spacing:.14em;margin-bottom:14px;background:var(--sage)}
.mode.exam .pill{background:var(--exam)}.mode.reset .pill{background:var(--reset)}.mode.future .pill{background:var(--future)}
.mode p{font-size:15px;line-height:1.45}
.examples{background:linear-gradient(180deg,var(--washi) 0%, #faf8f2 100%)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:38px}
.section-head p{max-width:520px}
.examples-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.example-card{background:rgba(255,255,255,.62);border:1px solid rgba(44,65,65,.10);border-radius:28px;padding:20px;box-shadow:0 20px 60px rgba(44,65,65,.08)}
.example-card img{border-radius:18px;box-shadow:0 16px 42px rgba(44,65,65,.10);margin-bottom:16px}
.example-card h3{font-family:Inter, sans-serif;font-size:21px;letter-spacing:-.01em;line-height:1.1;margin-bottom:9px}
.example-card p{font-size:15px;line-height:1.45}
.method-teaser{background:#fbf8f1}
.split{display:grid;grid-template-columns:.82fr 1.18fr;gap:52px;align-items:start}
.card-panel{background:rgba(255,255,255,.56);border:1px solid rgba(44,65,65,.10);border-radius:26px;padding:28px}
.card-panel h3{font-family:Inter,sans-serif;font-size:24px;line-height:1.12;margin-bottom:14px}.card-panel p{font-size:16px}.card-panel+.card-panel{margin-top:16px}
.order-band{padding:76px 0;background:var(--ink);color:var(--washi)}
.order-band h2,.order-band p{color:var(--washi)}.order-band p{opacity:.82}.order-band .btn.primary{background:var(--washi);color:var(--ink);border-color:var(--washi)}.order-band .btn.secondary{color:var(--washi);border-color:rgba(247,244,238,.55)}
.footer{padding:34px 0;background:#f3eee6;border-top:1px solid rgba(44,65,65,.09)}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--grey);font-size:14px}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.legal{padding:80px 0 100px}.legal h1{font-size:clamp(42px,6vw,70px);margin-bottom:16px}.legal h2{font-family:Inter,sans-serif;font-size:24px;letter-spacing:0;line-height:1.2;margin:46px 0 14px}.legal p,.legal li{font-size:17px;line-height:1.7;color:rgba(44,65,65,.80)}.legal p+p{margin-top:16px}.legal ul{margin:12px 0 0;padding-left:20px}.placeholder{background:#fff9ea;border:1px solid rgba(199,137,25,.22);border-radius:18px;padding:18px;margin:26px 0;color:#77603b!important}
.page-hero{padding:96px 0 72px;background:radial-gradient(circle at 78% 22%, rgba(167,184,168,.18), transparent 30%)}
.page-hero .badge{margin-bottom:20px}.page-hero h1{max-width:850px;margin-bottom:30px}.page-hero .lead{max-width:780px}.page-hero .subline{display:block;margin-top:26px;color:var(--grey);font-size:16px}
.story-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:52px;align-items:start}.quote-card{background:rgba(255,255,255,.55);border:1px solid rgba(44,65,65,.10);border-radius:28px;padding:30px;position:sticky;top:120px}.quote-card p{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.2;color:var(--ink)}.quote-card small{display:block;margin-top:16px;color:var(--grey)}
.body-copy h2{margin:54px 0 18px}.body-copy p{margin-bottom:20px}.body-copy strong{color:var(--ink)}
.method-blocks{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:38px}.method-block{background:rgba(255,255,255,.56);border:1px solid rgba(44,65,65,.10);border-radius:22px;padding:24px}.method-block h3{font-family:Inter,sans-serif;font-size:22px;line-height:1.15;margin-bottom:12px}.method-block p{font-size:16px}.references{margin-top:42px}.references li{margin-bottom:15px;color:rgba(44,65,65,.78);font-size:15px;line-height:1.55}.references a{text-decoration:underline;text-underline-offset:3px}
.order-layout{display:grid;grid-template-columns:1fr .8fr;gap:52px;align-items:start}.order-box{background:rgba(255,255,255,.60);border:1px solid rgba(44,65,65,.10);border-radius:28px;padding:30px;box-shadow:0 20px 60px rgba(44,65,65,.08)}.price{font-family:Georgia,"Times New Roman",serif;font-size:56px;line-height:1;color:var(--ink);margin:18px 0 8px}.order-box ul{padding-left:20px;color:rgba(44,65,65,.80);line-height:1.75}.mailbox{margin-top:22px;background:#fff;border:1px solid rgba(44,65,65,.10);border-radius:18px;padding:18px}.mailbox code{font-size:16px;color:var(--ink)}
.hidden-note{border:1px dashed rgba(44,65,65,.25);background:rgba(255,255,255,.5);padding:20px;border-radius:18px;margin-top:30px;color:var(--grey)}
.card-detail .detail-hero{padding:64px 0;background:linear-gradient(180deg,#fbf8f1,var(--washi));border-bottom:1px solid rgba(44,65,65,.08)}.detail-grid{display:grid;grid-template-columns:.95fr .9fr;gap:44px;align-items:start}.detail-card-imgs{display:grid;grid-template-columns:1fr 1fr;gap:14px}.detail-card-imgs img{border-radius:18px;box-shadow:0 18px 50px rgba(44,65,65,.10)}.detail-content{padding:54px 0}.do-list{counter-reset:item;list-style:none;padding:0;margin:20px 0 0}.do-list li{position:relative;padding-left:44px;margin-bottom:16px;font-size:18px;color:rgba(44,65,65,.82)}.do-list li::before{counter-increment:item;content:counter(item);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;background:var(--sage);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--ink);font-size:13px}.science-card{background:rgba(255,255,255,.58);border:1px solid rgba(44,65,65,.10);border-radius:26px;padding:28px;margin-top:28px}.science-card h3{font-family:Inter,sans-serif;font-size:23px;line-height:1.2;margin-bottom:12px}.science-card p{font-size:16px}.source-list{font-size:14px;line-height:1.55;color:var(--grey);padding-left:18px}.source-list li{margin-bottom:10px}.back-product{display:inline-flex;gap:8px;align-items:center;font-weight:800;color:var(--grey);font-size:14px;margin-bottom:22px}
@media(max-width:900px){
  .nav{height:auto;padding:18px 0;align-items:flex-start}.nav-links{gap:14px;font-size:14px;flex-wrap:wrap;justify-content:flex-end}.nav-links a:not(.btn){display:none}.brand img{width:34px;height:34px}.hero-grid,.problem-grid,.split,.story-grid,.order-layout,.detail-grid{grid-template-columns:1fr}.hero{padding:48px 0}.hero-copy .badge{min-width:0;width:100%;max-width:420px}.hero-product{min-height:auto}.hero-product::before{width:280px;height:280px}.hero-product .box{width:min(300px,80%)}.stats-strip,.kpi-grid,.mode-row,.examples-grid,.method-blocks{grid-template-columns:1fr}.section{padding:64px 0}.section-head{display:block}.section-head p{margin-top:16px}.detail-card-imgs{grid-template-columns:1fr 1fr}.footer-inner{display:block}.footer-links{margin-top:12px}.page-hero{padding:70px 0 48px}h1{font-size:clamp(44px,13vw,72px)}.order-band .cta-row{margin-bottom:0}
}
@media(max-width:560px){.container,.narrow{width:min(100% - 28px, 1120px)}.detail-card-imgs{grid-template-columns:1fr}.btn{width:100%}.stats-strip{margin-top:22px}.hero-copy .lead{font-size:18px}.stat-card strong{font-size:28px}.brand span{display:none}.nav-links .btn{width:auto;padding:10px 15px}.section{padding:52px 0}.problem{padding:52px 0}}
