/* Editorial visual system — September 2026 */
:root{--paper:#efeee7;--white:#fffef9;--ink:#263e35;--sub:#566259;--green:#1b5141;--line:#d2d9ce;--mint:#e3eade;--gold:#866127}body{background:var(--paper);line-height:1.85}header{border-top:5px solid #244e3d;background:#fffef9}.header-inner{max-width:1260px;padding:17px 32px;gap:18px}.brand{font-size:24px;letter-spacing:.035em}.brand small{font-size:11px;letter-spacing:.09em}.mark{background:transparent;width:43px;height:43px}.mark img{display:block;width:43px;height:43px}header nav{gap:6px 21px}header nav a{font-size:13px;font-weight:700;position:relative}header nav a:last-child{background:#e9eddf;padding:11px 16px;border:1px solid #d4ddc9;border-radius:3px}.home{max-width:1260px;padding:26px 32px 0}.hero{position:relative;background:#214b3c;color:#fffdf1;padding:46px 45px;gap:42px;grid-template-columns:1.22fr 1fr;border-radius:6px;overflow:hidden;isolation:isolate}.hero:before{content:'';position:absolute;z-index:-1;width:700px;height:700px;border:1px solid #ffffff10;border-radius:50%;right:-210px;top:-300px;box-shadow:0 0 0 55px #ffffff04,0 0 0 110px #ffffff03,0 0 0 170px #ffffff02}.hero-copy{position:relative}.hero .eyebrow{color:#e3ce9e;font-size:13px;letter-spacing:.16em;border-left:3px solid #d8b474;padding-left:12px;margin-bottom:19px}.hero h1{font-size:clamp(32px,3.65vw,47px);line-height:1.6;margin:0 0 19px;font-weight:600;letter-spacing:.025em;text-shadow:0 1px 0 #0002}.hero .intro{color:#e0e8dd;font-size:16px;line-height:1.95;margin-bottom:21px}.hero .cta{background:#ecd3a2;border-color:#ecd3a2;color:#263d2f;margin-top:22px;box-shadow:0 4px 12px #0002;min-width:270px;padding:15px 23px}.hero .cta:hover{background:#f8e5bf}.hero .text-link{color:#e1e7db;font-size:13px}.memo{background:#f9f6ec;color:#263e35;transform:none;box-shadow:9px 9px 0 #0f2c2450;padding:0 28px 21px;border:1px solid #ddd7c8;border-radius:3px;position:relative}.memo:after{content:'';position:absolute;right:15px;top:8px;width:12px;height:36px;border:2px solid #99845a;border-radius:9px;transform:rotate(12deg)}.memo-label{background:#e4e9d8;margin:0 -28px 22px;padding:10px 28px;border-bottom:1px solid #c6d2bb;display:flex;justify-content:space-between;font-size:11px;font-weight:bold;letter-spacing:.1em}.memo-label span:last-child{margin-right:15px}.memo h2{font-size:26px;margin-bottom:15px}.memo ol{margin-bottom:0}.memo li{padding:14px 0;margin:0;gap:16px}.memo li>span{font-size:23px;color:#857245}.memo strong{font-size:15px}.memo small{font-size:12px}.memo p{font-size:12px;border-top:1px solid #cbd4c2;padding-top:12px}.trust-strip{padding:14px 23px;background:#e3e7db;border:0;border-radius:0 0 4px 4px;margin:0 12px;justify-content:center;gap:44px;font-size:12px}.section{padding:36px 0 39px;position:relative}.section-kicker{font-size:10px;font-weight:bold;color:#697561;letter-spacing:.18em;margin-bottom:6px}.section>.eyebrow{margin:0 0 6px;font-size:12px}.section>h2{font-size:28px;margin-bottom:17px}.grid{gap:19px;margin-top:19px}.route{border-radius:5px;padding:0 23px 19px;overflow:hidden;box-shadow:0 3px 8px #293e3410;border:1px solid #d4d8cc;transition:transform .15s,box-shadow .15s}.route-art{height:88px;margin:0 -23px 17px;background:#dfe8d9;display:flex;align-items:center;justify-content:space-between;padding:12px 23px;border-bottom:1px solid #d2ddc9;background-image:linear-gradient(125deg,transparent 60%,#ffffff35 60%)}.route-art svg{width:66px;height:66px;color:#42644a}.route-art .num{font-size:44px;line-height:1;color:#7c9278;font-style:italic}.route-2 .route-art{background-color:#eee2cc;border-color:#ded1b5}.route-2 .route-art svg{color:#896e3e}.route-2 .route-art .num{color:#a5916e}.route-3 .route-art{background-color:#dce5e4;border-color:#c5d2d0}.route-3 .route-art svg{color:#3c6661}.route-3 .route-art .num{color:#7a9691}.route h3{font-size:19px;margin:0 0 9px}.route p{font-size:14px;line-height:1.8;margin-bottom:18px}.route .arrow{border-top:1px solid #e0e4d9;padding-top:12px;width:100%;font-size:13px}.route:hover{transform:translateY(-3px);box-shadow:0 9px 20px #213b3218}.split{background:#e2e7db;grid-template-columns:1fr 1.1fr;gap:32px;padding:24px 29px 30px;margin-bottom:32px;border:1px solid #cdd7c5;border-radius:5px}.split .section-kicker{grid-column:1/-1;margin:0 0 -18px}.split h2{font-size:29px;margin-bottom:12px}.split .eyebrow{font-size:12px;margin-bottom:8px}.split p{font-size:15px}.split .cta{font-size:14px;padding:13px 19px;margin-top:18px}.reading{background:#fafbf5;border:1px solid #ced8c5;border-radius:3px;align-self:center}.reading a{padding:18px 39px 17px 22px}.reading a:last-child{border-bottom:0}.reading strong{font-size:15px}.reading small{font-size:11px;margin-bottom:3px}.reading span{right:17px;top:31px}.reading a:hover{background:#edf2e6}.article-layout{max-width:1200px;padding:26px 32px 45px;display:grid;grid-template-columns:minmax(0,800px) 265px;gap:24px;align-items:start}.article-body{background:#fffefb;border:1px solid #d8ddcf;box-shadow:0 4px 12px #233d3008;padding:27px 38px 35px;min-width:0;border-radius:4px}.crumb{font-size:11px;margin-bottom:23px}.article h1{font-size:34px;line-height:1.6;margin:12px 0 15px;letter-spacing:.015em}.article .lead{font-size:16px;line-height:1.9;border-bottom:1px solid #d9dece;padding-bottom:23px;margin-bottom:25px}.article h2{background:#e9edde;border:0;border-left:4px solid #416149;padding:12px 17px;font-size:22px;margin:30px -5px 17px;scroll-margin-top:25px}.article h3{font-size:18px;margin:24px 0 9px;padding-left:11px;border-left:2px solid #b29c64}.article p,.article li{font-size:16px}.article p{margin-bottom:16px}.article .eyebrow{font-size:12px}.article .note{border:1px solid #d7dfc8;border-left:3px solid #768961;background:#f1f4e8;padding:17px 19px;font-size:14px}.article .src{font-size:12px;padding:15px;background:#f5f5ee;border:1px solid #e0e3d8;line-height:1.85}.article .cta{font-size:15px;width:100%;text-align:center;margin:14px 0;padding:14px 19px;box-shadow:0 3px 6px #1d382514}.article table{font-size:14px;line-height:1.8}th,td{padding:13px 14px}th{background:#dfe7d5;color:#28482e}tr:nth-child(odd) td{background:#f7f8f0}.scroll{border-radius:3px;margin:18px 0}.article-sidebar{position:sticky;top:24px}.toc{background:#f7f8ef;border:1px solid #cbd5bd;border-top:4px solid #476549;padding:20px 18px;border-radius:3px}.toc>.eyebrow{font-size:12px;margin:0 0 12px}.toc nav{display:block}.toc nav a{display:flex;gap:9px;line-height:1.7;padding:11px 0;border-top:1px solid #dce2d2;font-size:12px}.toc nav a span{color:#8b7849;font-family:serif;flex:0 0 18px}.sidebar-note{border-top:1px solid #c8d4bc;margin-top:16px;padding-top:18px}.sidebar-note strong{font-family:'Yu Mincho',serif;font-size:17px}.sidebar-note p{font-size:12px;margin:7px 0 10px}.sidebar-note>a{font-size:12px;font-weight:bold}.article .panel{border-top:3px solid #94aa7d;background:#f5f7ef;padding:19px;margin:14px 0}.article .panel h3{border:0;padding:0;margin:4px 0 8px}.article .panel .num{font-size:24px}.calculator,.next{background:#edf0e1;border:1px solid #cbd5b9;border-top:4px solid #5f7950;padding:23px;margin-top:27px}.calculator h2,.next h2{background:transparent;border:0;padding:0;margin:0 0 15px}.calculator label{font-size:14px;padding:7px 0;border-bottom:1px solid #d7dec8;margin:0}.calculator input{background:#fffefb;border-color:#a8b99a;max-width:220px;min-height:44px}.calculator .total{display:flex;justify-content:space-between;align-items:center;gap:10px;border:0;padding:16px 0 0;margin-bottom:16px}.calculator .total output{font-size:29px;color:#244d32}.article details{background:#f7f8f1;border:1px solid #dde3d2;margin:10px 0;padding:14px 18px}.article summary{font-size:15px;min-height:28px}footer{padding:31px 32px;background:#213e32;border-top:5px solid #a8b896}.footer-inner{max-width:1196px}footer .brand{font-size:21px}footer nav{gap:4px 22px;margin:15px 0}footer nav a{font-size:12px}footer small{font-size:11px;line-height:1.8}footer p{font-size:12px;margin-bottom:10px}@media(min-width:1300px){.hero{padding-block:45px}}@media(max-width:1000px){.header-inner{padding:17px 24px}.hero{padding:32px;gap:26px}.hero h1{font-size:37px}.hero .intro{font-size:15px}.home{padding:20px 24px 0}.article-layout{grid-template-columns:minmax(0,1fr) 230px;padding:24px;gap:18px}.article-body{padding:25px}.article h1{font-size:30px}.toc{padding:17px 14px}.route h3{font-size:17px}.route p{font-size:13px}}@media(max-width:780px){.header-inner{flex-direction:column;align-items:flex-start;gap:7px}.hero{grid-template-columns:1fr;gap:27px}.hero h1{font-size:39px}.hero .intro{font-size:16px}.memo{margin:0;box-shadow:5px 5px 0 #0f2c2450}.memo li{padding:10px 0}.memo h2{font-size:23px}.article-layout{display:flex;flex-direction:column}.article-body{width:100%}.article-sidebar{position:static;width:100%;order:-1}.toc{padding:12px 16px}.toc nav{display:flex;flex-wrap:wrap;gap:0 16px}.toc nav a{font-size:12px;border-top:0;padding:5px 0}.toc>.eyebrow{margin-bottom:5px}.sidebar-note{display:none}.split{gap:24px}.split .section-kicker{margin-bottom:0}.trust-strip{gap:15px}}@media(max-width:620px){.home{padding:14px 14px 0}.header-inner{padding:12px 17px}.brand{font-size:21px}.brand small{font-size:10px}.mark,.mark img{width:37px;height:37px}header nav{gap:0 14px;width:100%}header nav a{font-size:12px;padding:9px 0}header nav a:last-child{background:transparent;border:0;padding:9px 0}.hero{padding:29px 23px 26px;display:grid;gap:23px}.hero h1{font-size:32px;line-height:1.6}.hero .intro{font-size:14px;line-height:1.9}.hero .cta{min-width:0;width:100%;font-size:15px}.hero .cta span{margin-left:15px}.hero .eyebrow{font-size:11px;margin-bottom:15px}.hero .text-link{font-size:12px}.memo{padding:0 20px 15px}.memo-label{margin:0 -20px 17px;padding:9px 20px}.memo h2{font-size:22px}.memo strong{font-size:14px}.memo small{font-size:11px}.memo p{font-size:11px}.trust-strip{padding:12px 10px;gap:5px 13px;font-size:10px;margin:0 6px;justify-content:center}.section{padding:27px 3px}.section>h2{font-size:23px}.grid{display:grid;grid-template-columns:1fr;gap:12px}.route{display:grid;grid-template-columns:66px 1fr;gap:0 17px;padding:17px;margin:0}.route-art{grid-row:1/4;height:76px;width:66px;margin:0;padding:5px;position:relative;display:block;border:0;border-radius:3px}.route-art svg{width:55px;height:55px}.route-art .num{font-size:15px;position:absolute;bottom:4px;right:7px}.route h3{font-size:17px;margin:0 0 5px}.route p{font-size:13px;margin-bottom:8px}.route .arrow{font-size:12px;padding-top:8px}.split{display:block;padding:23px;margin:0 0 23px}.split .section-kicker{margin-bottom:12px}.split h2{font-size:26px}.split p{font-size:14px}.reading{margin-top:22px}.reading a{padding:15px 30px 15px 16px}.reading strong{font-size:14px}.article-layout{padding:14px;gap:14px}.article-body{padding:20px 18px}.article h1{font-size:27px}.article .lead{font-size:15px}.article h2{font-size:20px;padding:11px 13px;margin:25px 0 14px}.article p,.article li{font-size:16px}.article .src{font-size:12px}.article .note{font-size:14px}.article .calculator,.article .next{padding:17px}.article .calculator h2,.article .next h2{margin-top:0;padding:0}.toc nav a{font-size:11px;min-height:32px;line-height:1.6}.toc{padding:12px 14px}.toc nav{gap:0 12px}.calculator label{font-size:13px}.calculator .total output{font-size:25px}footer{padding:26px 21px}.scroll table{min-width:480px}}@media(prefers-reduced-motion:reduce){.route{transition:none}}@media print{.article-sidebar,.route-art,.hero:before{display:none}.article-layout{display:block;padding:0}.article-body{box-shadow:none;border:0}.article h2{background:white;color:black}.hero{background:white;color:black}.hero .intro{color:black}}
