*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:#f3f4f2;color:#092c49;font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;font-weight:600}.page{max-width:1080px;margin:auto;background:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;gap:20px}.brand{font-weight:900;font-size:19px;white-space:nowrap}nav{display:flex;gap:24px;font-size:12px}.menu{background:none;border:0;color:#15394c;font-size:24px}#mobile-nav{padding:16px;background:#e8f6f5}#mobile-nav a{display:block;padding:10px}section{padding:24px 42px}h1,h2,h3,p,figure{margin:0}h2{font-size:27px;letter-spacing:.02em;text-align:center;display:flex;justify-content:center;align-items:center;gap:13px;line-height:1.5;margin-bottom:17px;font-weight:900}h2 i{width:14px;height:20px;display:inline-block;background:linear-gradient(25deg,transparent 42%,#f9ac36 45%,#f9ac36 52%,transparent 55%)}h2 i:last-child{transform:scaleX(-1)}h3{font-size:20px}p{line-height:1.8}.center{text-align:center}.fine{font-size:12px;color:#61696e;margin-top:10px;font-weight:500}.photo{position:relative;overflow:hidden;isolation:isolate}.photo img{position:absolute;display:block;height:auto}.hero{height:470px;position:relative;overflow:hidden;padding:48px 42px}.hero-photo{position:absolute!important;right:0;top:0;width:57%;height:100%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fff,transparent 27%)}.hero-copy{position:relative;z-index:2;width:49%}.hero h1{font-size:43px;line-height:1.35;font-weight:900;letter-spacing:-.035em}.hero em{font-style:normal;background:linear-gradient(transparent 78%,#ffd68b 78%,#ffd68b 94%,transparent 94%)}.hero-copy p{font-size:16px;margin:18px 0}.ad{position:absolute;top:4px;left:30px;font-size:10px;color:#777;z-index:3;background:#f7f5ef;padding:2px 8px;border-radius:5px}.cta{display:flex;justify-content:center;align-items:center;gap:20px;width:fit-content;max-width:100%;min-width:330px;margin:12px auto 0;padding:14px 25px;background:linear-gradient(135deg,#2cbeb5,#009f9d);border:1px solid #08a6a3;border-radius:100px;color:white;font-weight:800;font-size:15px;box-shadow:0 3px 5px #084b4822;transition:transform .2s,box-shadow .2s}.cta:hover{transform:translateY(-2px);box-shadow:0 5px 12px #084b4833}.cta span{font-size:23px;line-height:1}.cta.outline{background:#fff;color:#088783}.hero .cta{width:100%;min-width:0}.review{margin:12px 12px 0;padding:24px 30px 25px;border-radius:24px;background:#fffdfa;box-shadow:0 3px 6px #0002;border:1px solid #f3eee6}.badge{font-size:13px;background:#10a9a4;color:white;border-radius:20px;padding:5px 14px;white-space:nowrap}.notice{background:#f7f2e9;border-radius:30px;font-size:12px;text-align:center;width:fit-content;padding:4px 28px;margin:12px auto 19px;color:#55616b}.three,.two,.four{display:grid;gap:26px}.three{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:1fr 1fr}.four{grid-template-columns:repeat(4,1fr)}figure{min-width:0}figcaption{text-align:center;font-size:16px;font-weight:800;padding:9px 4px}.review-grid figure{border-radius:14px;overflow:hidden;background:#fbf3df}.number{display:inline-flex;justify-content:center;align-items:center;background:#119c9b;color:white;width:25px;height:25px;border-radius:50%;font-size:13px;margin-right:7px}.memo{margin-top:28px;gap:30px}.memo>div{background:#fbf7ee;border:1px solid #d8d0c3;border-radius:15px;position:relative;text-align:center;box-shadow:2px 3px 0 #ddd5c9;padding:28px 10px 21px}.memo h3{font-size:17px;background:#d6f5ed;border-radius:24px;position:absolute;top:-13px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:5px 22px}.memo>div:last-child h3{background:#dceffc}.memo p{font-size:14px}.warm{background:#faf8f3;margin-top:12px}.choice{padding:0 40px}.choice figure{overflow:hidden;border:5px solid white;border-radius:12px;background:#fbf4e1}.purchase{font-size:14px;margin:20px 0 0}.sizes .photo{border-radius:12px}.sizes figcaption{border:1px solid #14a7a2;border-radius:30px;width:fit-content;min-width:120px;margin:9px auto 0;padding:3px 12px}.table-wrap{overflow:auto;border:1px solid #cad5d8;border-radius:7px}table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5}th,td{border-right:1px solid #d2dedf;border-bottom:1px solid #d2dedf;padding:12px 16px;text-align:left}thead th{text-align:center;background:#d8edf0}thead th:nth-child(2){background:#cceee8}thead th:last-child{background:#f3e8cf}tbody th{width:28%}tbody td{width:36%;color:#313c43}.blue{background:#e3f5fc}.timeline figure{text-align:center;background:#f3fbfd;border-radius:15px;padding:3px 22px 9px}.timeline .photo{width:85%;margin:auto}.service{align-items:center;gap:30px}.service>.photo{border-radius:13px}.ticks{list-style:none;padding:0;font-size:15px;line-height:2.1}.ticks li:before{content:'✓';background:#109b96;color:#fff;border-radius:50%;padding:0 3px;margin-right:9px}.service .cta{min-width:0;width:100%;font-size:14px;padding:11px}details{border:1px solid #d5d8d6;border-radius:7px;margin:7px 0;background:#fffefa}summary{cursor:pointer;list-style:none;padding:10px 18px;font-size:14px;position:relative;padding-right:40px}summary::-webkit-details-marker{display:none}summary:after{content:'⌄';position:absolute;right:18px;top:8px}details[open] summary:after{content:'−'}details p{padding:10px 18px 18px;color:#485865;font-size:14px;font-weight:500}.flow figure{background:#fbfaf7;border-radius:10px}.flow .photo{width:55%;margin:0 auto 12px}.flow figcaption{font-size:14px}.articles{gap:22px}.article{overflow:hidden;margin:0;background:white;box-shadow:0 3px 4px #0001}.article summary{padding:0}.article summary:after{display:none}.article strong{display:block;font-size:14px;padding:12px}.article strong span{float:right;color:#149d96}.closing{background:#062f50;color:white;text-align:center;padding:28px 30px}.closing h2{margin-bottom:4px;font-size:32px}.closing p{font-size:16px}.closing .cta{margin-top:15px}footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding:20px 25px}footer .brand{font-size:16px}footer button{border:0;background:transparent;color:#548a8d;font-size:11px}footer small{font-size:10px;color:#687178}dialog{border:1px solid #d5e3df;border-radius:18px;max-width:500px;width:90%;padding:35px;color:#143a50}dialog::backdrop{background:#05243d88}dialog p{line-height:1.8;font-size:14px}.close{position:absolute;right:10px;top:8px;background:none;border:0;font-size:25px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #f0b045;outline-offset:3px}
@media(max-width:650px){header{height:45px;padding:0 15px}.brand{font-size:15px}nav{display:none}section{padding:23px 18px}h2{font-size:21px;gap:7px;margin-bottom:15px}h2 i{width:9px;flex-shrink:0}.hero{height:430px;padding:31px 19px 0}.hero-photo{width:76%;height:300px;top:0;right:-15%;opacity:.9}.hero-photo:after{background:linear-gradient(90deg,#fff 0%,#ffffff77 28%,transparent 60%)}.hero-copy{width:100%}.hero h1{font-size:30px;width:86%;line-height:1.45;text-shadow:0 1px 8px #fff}.hero-copy p{font-size:13px;margin:19px 0 24px;text-shadow:0 1px 4px #fff}.hero .cta{width:100%;font-size:13px;padding:12px 15px}.ad{left:18px;font-size:9px}.review{margin:0 9px;padding:19px 12px 20px;border-radius:17px}.review h2{font-size:21px;flex-wrap:wrap;gap:4px}.badge{font-size:10px;padding:4px 8px}.review h3.center{font-size:13px}.notice{font-size:10px;padding:3px 9px;margin:9px auto 15px}.three,.two,.four{gap:9px}.review-grid figcaption{font-size:10px;padding:7px 2px}.number{width:19px;height:19px;font-size:10px;margin-right:3px}.memo{margin-top:25px;gap:12px}.memo h3{font-size:12px;padding:5px 12px}.memo p{font-size:11px}.memo>div{padding:23px 5px 13px}.choice{padding:0;gap:8px}.choice figure{border-width:3px}.choice figcaption{font-size:11px;padding:9px 2px}.purchase{font-size:11px;margin-top:13px}.sizes figcaption{font-size:12px;min-width:0;padding:2px 12px}.fine{font-size:10px}table{font-size:11px}th,td{padding:8px 6px}tbody th{width:28%}.cta{font-size:13px;min-width:0;padding:12px 20px}.timeline figure{padding:2px 7px 8px;border-radius:10px}.timeline figcaption{font-size:12px}.timeline .photo{width:100%}.service{gap:12px}.ticks{font-size:10px;line-height:1.9}.ticks li:before{margin-right:3px}.service .cta{font-size:10px;padding:8px 6px;gap:3px}.service>.photo{aspect-ratio:1.2!important}.service>.photo img{top:-1650%!important}.flow figcaption{font-size:10px;padding:8px 1px}.flow .photo{width:75%}.articles{gap:10px}.article strong{font-size:11px;padding:9px 7px}.closing h2{font-size:24px}.closing p{font-size:12px}summary{font-size:12px;padding:10px 12px;padding-right:30px}footer{justify-content:center;text-align:center;padding:19px;gap:10px}footer small{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cta{transition:none}}
@media(max-width:650px){.service>.photo{aspect-ratio:297/88!important}.service>.photo img{top:-1689.772727%!important}}
.hero-photo{height:auto;aspect-ratio:370/307}@media(max-width:650px){.hero-photo{height:auto;aspect-ratio:370/307}}

/* Independent high-resolution photography. Never enlarge a crop of a UI screenshot. */
.photo img{position:absolute;width:100%;max-width:100%;height:100%;inset:0;object-fit:cover}
.hero-photo{width:68%;height:100%;aspect-ratio:auto;right:0}
.hero-photo img{object-position:65% center}
.hero-photo:after{background:linear-gradient(90deg,#fff 0%,#ffffffb8 15%,transparent 45%)}
.sizes .photo{aspect-ratio:3/2!important}
.timeline figure{padding:4px 8px 8px}
.timeline .photo,.flow .photo{width:100%;aspect-ratio:3/2!important;border-radius:9px}
.flow .photo{margin:0 auto 8px;width:90%}
.service>.photo{aspect-ratio:3/2!important}
.service>.photo img{top:0!important}
.articles .photo{aspect-ratio:2.4/1!important}
@media(max-width:650px){
 .hero-photo{width:85%;height:260px;aspect-ratio:auto;right:-10%}
 .hero-photo img{object-position:68% center}
 .hero-photo:after{background:linear-gradient(90deg,#fff 0%,#ffffffa8 15%,transparent 43%)}
 .service>.photo{aspect-ratio:3/2!important}
 .service>.photo img{top:0!important}
 .choice .photo{aspect-ratio:1.2!important}
 .timeline figure{padding:4px}
 .hero h1{font-size:29px;text-shadow:0 1px 8px #fff,0 1px 4px #fff}
}

/* Affiliate CTA: clear icon, readable label, footer disclosure. */
.cta .cta-icon{width:23px;height:23px;flex:0 0 23px;display:block}.cta .cta-label{font-size:inherit;line-height:1.5}.ad-disclosure{display:block;flex:0 0 100%;width:100%;text-align:center;padding-top:12px;border-top:1px solid #e8edec;color:#687178;font-size:11px}@media(max-width:650px){.cta:has(.cta-icon){gap:9px}.cta .cta-icon{width:20px;height:20px;flex-basis:20px}.service .cta:has(.cta-icon){gap:4px}.service .cta .cta-icon{width:16px;height:16px;flex-basis:16px}}
