:root{color-scheme:dark;--bg:#070707;--panel:#0b0b0b;--line:#2a2a2a;--line2:#3a3a3a;--text:#f5f5f3;--muted:#8d8d8a;--soft:#c9c9c6;--white:#f3f3f0;--black:#070707}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;line-height:1.7}a{color:inherit}.header{border-bottom:1px solid #1d1d1d;background:#070707f2;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.header-inner{max-width:1120px;margin:auto;padding:24px 34px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand-lockup{display:flex;align-items:center;gap:12px;min-width:0}.brand-logo{display:block;width:183px;height:auto;flex:0 0 auto}.mark{font-size:28px;line-height:1}.brand{font-size:24px;font-weight:800;letter-spacing:.25em}.divider{color:#555}.descriptor{font-size:12px;letter-spacing:.1em;color:#8d8d8a;font-weight:700;white-space:nowrap}.header-cta,.cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800}.header-cta{background:var(--white);color:var(--black);padding:14px 22px;min-width:170px}.section{max-width:1120px;margin:auto;padding:92px 34px;border-bottom:1px solid #242424}.hero{padding-top:116px;padding-bottom:110px}.eyebrow,.section-kicker,.label{font-size:13px;letter-spacing:.28em;font-weight:800;color:#8d8d8a}.hero h1{font-size:clamp(48px,8vw,92px);line-height:1.08;letter-spacing:-.045em;margin:30px 0 34px;font-weight:850}.lead{font-size:clamp(18px,2.4vw,30px);line-height:1.9;color:#c9c9c6;max-width:930px;font-weight:650}.actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:56px}.cta{min-height:76px;border:1px solid #444;padding:18px 26px;font-size:18px}.primary{background:var(--white);color:var(--black);border-color:var(--white)}.secondary{background:transparent;color:var(--text)}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding-top:0;padding-bottom:0}.three article{padding:62px 34px;border-right:1px solid #242424}.three article:first-child{padding-left:0}.three article:last-child{border-right:0;padding-right:0}.three h2{font-size:22px;line-height:1.6;margin:18px 0 12px}.three p,.flow p,.plan p,.split p,.body-copy,.faq p,.final-cta p{color:#9b9b98}.section-title{font-size:clamp(30px,4vw,52px);line-height:1.2;margin:18px 0 46px;letter-spacing:-.03em}.flow-list{list-style:none;padding:0;margin:0;border-top:1px solid #2a2a2a}.flow-list li{display:grid;grid-template-columns:70px 180px 1fr;gap:24px;align-items:start;padding:28px 0;border-bottom:1px solid #222}.flow-list span{color:#6f6f6c;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.flow-list b{font-size:18px}.flow-list p{margin:0}.plans{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #303030;border-left:1px solid #303030}.plan{min-height:440px;padding:44px 42px;border-right:1px solid #303030;border-bottom:1px solid #303030;display:flex;flex-direction:column}.plan-name{font-size:20px;font-weight:850;letter-spacing:.2em}.plan-sub{margin-top:12px;color:#858582;font-size:16px;font-weight:700}.price{font-size:clamp(52px,7vw,82px);line-height:1;margin:62px 0 36px;letter-spacing:-.04em}.price span{font-size:18px;margin-left:8px;color:#888}.plan p{font-size:17px;line-height:1.9}.level{margin-top:auto;display:inline-flex;align-self:flex-start;border:1px solid #555;padding:14px 18px;letter-spacing:.16em;font-weight:800;font-size:13px}.note{font-size:13px;color:#737370;margin-top:20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:0;padding-top:0;padding-bottom:0}.split article{padding:72px 44px;border-right:1px solid #242424}.split article:first-child{padding-left:0}.split article:last-child{border-right:0;padding-right:0}.faq details{border-top:1px solid #292929;padding:24px 0}.faq details:last-child{border-bottom:1px solid #292929}.faq summary{cursor:pointer;font-weight:800;font-size:18px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'＋';float:right;color:#777}.faq details[open] summary:after{content:'−'}.faq p{max-width:900px;margin:18px 0 0}.final-cta{padding-top:96px;padding-bottom:110px}.final-cta .cta{margin-top:34px;width:100%}.footer{max-width:1120px;margin:auto;padding:40px 34px 70px;display:flex;justify-content:space-between;gap:24px;color:#6f6f6c;font-size:12px}.footer-links{display:flex;gap:22px;flex-wrap:wrap}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}@media(max-width:780px){.header-inner{padding:18px 20px}.brand-lockup{gap:8px}.brand-logo{width:clamp(116px,36vw,154px)}.descriptor{display:inline;font-size:clamp(7px,2vw,9px);letter-spacing:.025em;white-space:nowrap}.brand{font-size:20px;letter-spacing:.18em}.mark{font-size:22px}.section{padding:70px 20px}.hero{padding-top:88px}.hero h1{font-size:52px}.lead{font-size:19px}.actions{grid-template-columns:1fr;margin-top:44px}.cta{min-height:64px}.three{grid-template-columns:1fr;padding:0 20px}.three article,.three article:first-child,.three article:last-child{padding:42px 0;border-right:0;border-bottom:1px solid #222}.three article:last-child{border-bottom:0}.flow-list li{grid-template-columns:46px 1fr;gap:14px}.flow-list p{grid-column:2}.plans{grid-template-columns:1fr}.plan{min-height:390px;padding:34px 28px}.price{margin:46px 0 28px}.split{grid-template-columns:1fr;padding:0 20px}.split article,.split article:first-child,.split article:last-child{padding:54px 0;border-right:0;border-bottom:1px solid #222}.split article:last-child{border-bottom:0}.footer{padding:34px 20px 58px;flex-direction:column}.footer-links{flex-direction:column;gap:10px}}

/* TRES LP typography refinement 2026-10-18: presentation only; structure and layout unchanged */
body{
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Helvetica Neue","Yu Gothic",Meiryo,sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1.85;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.descriptor{font-weight:600;letter-spacing:.075em;color:#a3a3a0}
.eyebrow,.section-kicker,.label{
  font-size:12px;
  font-weight:650;
  line-height:1.6;
  letter-spacing:.21em;
  color:#a7a7a4;
}
.hero h1{
  font-size:clamp(48px,6.6vw,78px);
  font-weight:780;
  line-height:1.24;
  letter-spacing:-.035em;
}
.lead{
  font-size:clamp(18px,2vw,23px);
  font-weight:500;
  line-height:1.95;
  letter-spacing:.015em;
  color:#d0d0cd;
}
.section-title{
  font-size:clamp(31px,3.6vw,46px);
  font-weight:760;
  line-height:1.4;
  letter-spacing:-.02em;
}
.three h2{
  font-size:20px;
  font-weight:720;
  line-height:1.65;
  letter-spacing:-.012em;
}
.three p,.flow p,.plan p,.split p,.body-copy,.faq p,.final-cta p{
  font-size:16px;
  font-weight:400;
  line-height:1.95;
  letter-spacing:.008em;
  color:#bcbcb8;
}
.flow-list b{font-size:17px;font-weight:700;line-height:1.65}
.flow-list span{font-size:12px;letter-spacing:.09em;color:#a0a09c}
.plan-name{font-size:19px;font-weight:770;letter-spacing:.12em;line-height:1.55}
.plan-sub{font-size:15px;font-weight:550;line-height:1.6;color:#b0b0ac}
.price{
  font-size:clamp(55px,6.4vw,76px);
  font-weight:650;
  line-height:1.15;
  letter-spacing:-.045em;
  font-variant-numeric:tabular-nums lining-nums;
  margin-top:56px;
  margin-bottom:30px;
}
.price span{font-size:16px;font-weight:500;letter-spacing:0;color:#b5b5b1}
.plan p{font-size:16px;line-height:1.95}
.level{
  font-size:12px;
  font-weight:700;
  line-height:1.5;
  letter-spacing:.12em;
}
.note{font-size:14px;line-height:1.9;color:#aaa9a5}
.faq summary{
  font-size:17px;
  font-weight:720;
  line-height:1.6;
  letter-spacing:.005em;
}
.cta,.header-cta{
  font-size:17px;
  font-weight:750;
  line-height:1.45;
  letter-spacing:.012em;
}
.footer{font-size:13px;line-height:1.8;color:#a1a19d}
@media(max-width:780px){
  .descriptor{font-size:clamp(8px,2vw,9px);letter-spacing:.03em}
  .hero h1{
    font-size:clamp(34px,10vw,44px);
    line-height:1.29;
    letter-spacing:-.035em;
    margin-top:28px;
    margin-bottom:28px;
  }
  .lead{
    font-size:16px;
    line-height:1.95;
    font-weight:450;
    letter-spacing:.005em;
  }
  .eyebrow,.section-kicker,.label{font-size:11px;letter-spacing:.18em}
  .section-title{
    font-size:clamp(27px,7.2vw,33px);
    line-height:1.45;
    margin-bottom:34px;
  }
  .three h2{font-size:18px;line-height:1.65}
  .three p,.flow p,.plan p,.split p,.body-copy,.faq p,.final-cta p{
    font-size:15.5px;
    line-height:1.95;
    letter-spacing:0;
  }
  .flow-list b{font-size:16px}
  .flow-list span{font-size:11px}
  .plan-name{font-size:18px;letter-spacing:.11em}
  .plan-sub{font-size:14.5px}
  .price{
    font-size:clamp(51px,12vw,62px);
    line-height:1.15;
    margin-top:42px;
    margin-bottom:25px;
  }
  .price span{font-size:15px}
  .plan p{font-size:15.5px}
  .level{font-size:11.5px}
  .note{font-size:13.5px;line-height:1.85}
  .faq summary{font-size:16px;line-height:1.7}
  .cta,.header-cta{font-size:16px}
  .footer{font-size:12.5px}
}
