:root{--ink:#172724;--muted:#64736e;--paper:#f5f2ea;--surface:#fffdf8;--line:#d7ddd6;--pine:#16483f;--pine-2:#235f53;--coral:#e76f51;--mint:#e8f3ec;--gold:#a16c16;--danger:#ad5146;--radius:20px;--shadow:0 18px 45px #182b2517}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 93% 5%,#f8dfce 0,transparent 22rem),var(--paper);color:var(--ink);margin:0;font-family:Inter,Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif;line-height:1.55}button,input,select{font:inherit}button{cursor:pointer}.shell{width:min(100% - 40px,1160px);margin:auto}.header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f2eae6;border-bottom:1px solid #e4e3dc;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:22px;height:68px;display:flex}.brand{color:var(--ink);letter-spacing:-.04em;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:18px;font-weight:800;display:flex}.brand-mark{background:var(--pine);color:#fff;border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.header nav{align-items:center;gap:5px;display:flex}.header nav button{color:var(--muted);background:0 0;border:0;border-radius:9px;padding:8px 11px;font-weight:700}.header nav button:hover,.header nav button.active{color:var(--pine);background:#e8eee9}.header nav .compare-nav{background:var(--pine);color:#fff}.eyebrow,.section-kicker{letter-spacing:.14em;color:var(--coral);margin:0 0 12px;font-size:12px;font-weight:800}.home-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:64px;min-height:600px;padding:70px 0;display:grid}.hero-copy h1{letter-spacing:-.07em;margin:0 0 24px;font-size:clamp(42px,5vw,76px);line-height:1.05}.hero-copy>p:last-child{color:var(--muted);font-size:18px}.first-question{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #eee8dc;padding:34px}.question-kicker{color:var(--pine);margin:0;font-size:13px;font-weight:800}.first-question h2{letter-spacing:-.04em;margin:10px 0 20px;font-size:27px}.night-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.night-grid button,.choice{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:16px;font-weight:800;display:flex}.night-grid button:hover{border-color:var(--pine);background:#f1f7f3}.fine,.source-note,.model{color:var(--muted);font-size:12px}.home-flow{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:150px repeat(3,1fr);gap:28px;margin-bottom:26px;padding:40px 0;display:grid}.home-flow>p{margin:0}.home-flow div{padding-left:35px;position:relative}.home-flow span{color:var(--coral);font-size:12px;font-weight:800;position:absolute;left:0}.home-flow strong{font-size:17px}.home-flow p{color:var(--muted);margin:5px 0;font-size:14px}.checker-callout{justify-content:space-between;align-items:center;padding:26px 0 58px;display:flex}.checker-callout>div{gap:14px;display:flex}.checker-callout p{color:var(--muted);margin:0}.checker-callout b{color:var(--ink)}.text-button{color:var(--pine);background:0 0;border:0;align-items:center;gap:7px;font-weight:800;display:inline-flex}.diagnosis{max-width:820px;padding:42px 0 84px}.diagnosis-top{grid-template-columns:1fr 2fr 1fr;align-items:center;gap:18px;display:grid}.diagnosis-top>span{text-align:right;color:var(--muted);letter-spacing:.1em;font-size:12px;font-weight:800}.back-button,.quiet-button{color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;padding:9px 0;font-weight:800;display:inline-flex}.progress{background:#e0e3dc;border-radius:999px;height:5px;margin-top:7px;overflow:hidden}.progress i{background:var(--coral);border-radius:999px;height:100%;display:block}.context-chips,.result-chips{flex-wrap:wrap;gap:7px;margin:22px 0;display:flex}.context-chips span,.result-chips span{color:var(--pine);background:#e9efe9;border-radius:99px;padding:5px 9px;font-size:13px;font-weight:700}.question-panel{padding:32px 0 20px}.question-panel h1,.results h1,.browse h1,.checker h1,.compare h1{letter-spacing:-.06em;margin:0 0 12px;font-size:clamp(31px,4vw,48px);line-height:1.18}.question-panel>p,.checker>p,.result-intro>p{color:var(--muted);margin:0 0 30px}.choice-section{margin:30px 0}.field-label{margin:0 0 10px;font-size:14px;font-weight:800}.choice-row{flex-wrap:wrap;gap:9px;display:flex}.choice{flex:1;min-width:130px}.choice.selected,.toggle-card.selected{border-color:var(--pine);background:var(--mint);color:var(--pine)}.selection-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.toggle-card{border:1px solid var(--line);background:var(--surface);text-align:left;min-height:75px;color:var(--ink);border-radius:13px;flex-direction:column;gap:3px;padding:14px;font-weight:800;display:flex;position:relative}.toggle-card svg{position:absolute;top:11px;right:11px}.toggle-card small{color:var(--muted);font-weight:500}.explain-block{background:#e9efe9;border-radius:14px;gap:14px;padding:18px;display:flex}.explain-block p{color:var(--muted);margin:5px 0;font-size:13px}.problem-list{grid-template-columns:1fr 1fr;gap:10px;display:grid}.must-row{flex-wrap:wrap;gap:8px;display:flex}.must-row>span{color:var(--muted);font-size:14px}.must{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:9px;align-items:center;gap:4px;padding:9px 10px;font-size:13px;display:inline-flex}.must.active{border-color:var(--coral);color:#9c4231;background:#fff1ec}.diagnosis-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:22px;display:flex}.primary-button{background:var(--pine);color:#fff;border:0;border-radius:11px;align-items:center;gap:8px;padding:13px 18px;font-weight:800;display:inline-flex}.primary-button:hover{background:var(--pine-2)}.results{padding:58px 0 90px}.result-intro{border-left:5px solid var(--coral);max-width:780px;padding-left:25px}.result-intro strong{color:var(--pine)}.result-columns{grid-template-columns:.8fr 1.2fr;gap:46px;margin:45px 0;display:grid}.capacity-breakdown h2,.airline-summary h2{margin:0 0 14px;font-size:20px}.capacity-breakdown>div{border-bottom:1px dashed var(--line);justify-content:space-between;padding:10px 0;font-size:14px;display:flex}.capacity-breakdown b{color:var(--pine)}.airline-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:5px;padding:14px 0;display:grid}.airline-row span{align-items:center;gap:7px;display:flex}.airline-row small{color:var(--muted);margin-left:auto;font-size:11px}.airline-row strong{font-size:14px}.airline-row p{color:var(--muted);grid-column:1/-1;margin:0;font-size:13px}.safe{color:#137353}.tight{color:var(--gold)}.fail{color:var(--danger)}.unknown{color:var(--muted)}.recommendation-heading{justify-content:space-between;align-items:end;margin:48px 0 16px;display:flex}.recommendation-heading h2{letter-spacing:-.05em;margin:0;font-size:31px}.recommendation-list{gap:18px;display:grid}.product-card{background:var(--surface);border:1px solid #e4e1d8;border-radius:16px;overflow:hidden}.product-top{justify-content:space-between;padding:13px 16px;display:flex}.role{letter-spacing:.1em;color:var(--coral);font-size:11px;font-weight:800}.compare-toggle{color:var(--pine);background:0 0;border:0;font-size:13px;font-weight:800}.compare-toggle.active{color:var(--coral)}.product-body{grid-template-columns:170px 1fr;gap:25px;padding:0 22px 23px;display:grid}.suitcase-visual{height:195px;color:var(--case);background:linear-gradient(145deg,#f0eee8,#e3e6df);border-radius:13px;place-items:center;display:grid;position:relative}.suitcase-visual:before{content:"";opacity:.75;border:4px solid;border-radius:18px 18px 22px 22px;width:77px;height:108px}.suitcase-visual svg{position:absolute}.brand-name{color:var(--muted);margin:2px 0;font-size:12px;font-weight:800}.product-copy h3{letter-spacing:-.04em;margin:0;font-size:25px}.specs{margin:7px 0 12px;font-weight:800}.specs i{background:var(--muted);vertical-align:middle;border-radius:50%;width:4px;height:4px;margin:0 8px;display:inline-block}.match-good,.match-caution{align-items:center;gap:5px;margin:7px 0;font-size:14px;display:flex}.match-good{color:#187555}.match-caution{color:var(--gold)}.merchant-actions{gap:9px;margin-top:14px;display:flex}.merchant-actions a{border:1px solid var(--line);border-radius:9px;align-items:center;gap:5px;padding:9px 11px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.merchant-actions .rakuten{color:#9a4130;background:#fff6f2;border-color:#e8b5a9}.compare-tray{background:var(--ink);color:#fff;box-shadow:var(--shadow);border:0;border-radius:99px;align-items:center;gap:8px;margin:24px auto 0;padding:13px 18px;font-weight:800;display:flex;position:sticky;bottom:18px;left:50%}.affiliate-disclosure{color:var(--muted);margin-top:30px;font-size:12px}.empty-result{text-align:center;border:1px dashed var(--line);background:var(--surface);border-radius:15px;padding:42px}.empty-result h2{font-size:22px}.empty-result p{color:var(--muted);max-width:580px;margin:0 auto 18px}.browse,.checker,.compare{padding:56px 0 82px}.filter-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:8px;margin-top:32px;padding:14px 0;display:flex;overflow:auto}.filter-line button{white-space:nowrap;color:var(--muted);background:0 0;border:0;border-radius:99px;padding:8px 10px;font-weight:700}.filter-line button.active{background:var(--mint);color:var(--pine)}.browse-count{color:var(--muted);font-size:13px}.browse-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.browse-grid .product-body{grid-template-columns:120px 1fr;gap:16px;padding:0 15px 16px}.browse-grid .suitcase-visual{height:155px}.browse-grid .product-copy h3{font-size:20px}.checker-layout{grid-template-columns:.8fr 1.2fr;gap:40px;margin-top:35px;display:grid}.checker form{grid-template-columns:1fr 1fr;gap:10px;display:grid}.checker label{grid-template-columns:1fr auto;gap:4px;font-size:13px;font-weight:800;display:grid}.checker input,.checker select{border:1px solid var(--line);background:#fff;border-radius:9px;grid-column:1/-1;width:100%;padding:11px}.checker label span{color:var(--muted);grid-area:2/2;align-self:center;padding-right:10px;font-size:12px}.checker form select,.checker form button{grid-column:1/-1}.checker-result,.checker-placeholder{border-radius:17px;min-height:330px;padding:28px}.checker-placeholder{color:var(--muted);text-align:center;background:#e9efe9;place-content:center;display:grid}.checker-result{background:var(--mint);border:1px solid #bedac9}.checker-result.fail{background:#fff0ed;border-color:#edc7c1}.checker-result h2{margin:5px 0;font-size:34px}.checker-result dl{border-top:1px solid #c9ddd0;margin:20px 0}.checker-result dl div{border-bottom:1px solid #c9ddd0;justify-content:space-between;padding:10px 0;display:flex}.checker-result dt{color:var(--muted);font-size:13px}.checker-result dd{margin:0;font-weight:800}.checker-result small{color:var(--muted)}.compare-table{border:1px solid var(--line);border-radius:16px;margin-top:32px;overflow:hidden}.compare-head,.compare-row{grid-template-columns:180px repeat(3,1fr);display:grid}.compare-head{background:#e9efe9}.compare-head>span,.compare-head>div,.compare-row>*{border-right:1px solid var(--line);padding:15px}.compare-head>div{flex-direction:column;gap:3px;display:flex;position:relative}.compare-head button{background:0 0;border:0;position:absolute;top:8px;right:8px}.compare-head strong{font-size:17px}.compare-row{border-top:1px solid var(--line)}.compare-row>b{background:#faf9f5}.compare-row span{font-weight:700}.compare-merchant{flex-wrap:wrap;gap:10px;margin-top:15px;display:flex}.compare-merchant a{border:1px solid var(--line);border-radius:9px;padding:10px;font-size:13px;font-weight:800;text-decoration:none}.footer-inner{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:28px 0;font-size:13px;display:flex}.footer-inner strong{color:var(--ink)}.footer-inner p{margin:3px 0}.footer-inner div:last-child{gap:15px;display:flex}.footer-inner a{color:inherit}@media (max-width:720px){.shell{width:min(100% - 28px,1160px)}.header-inner{height:58px}.brand{font-size:16px}.brand-mark{width:31px;height:31px}.header nav button{display:none}.header nav .compare-nav{padding:7px 9px;font-size:12px;display:block}.home-hero{min-height:auto;padding:45px 0 34px;display:block}.hero-copy h1{font-size:45px}.hero-copy>p:last-child{font-size:16px}.first-question{margin-top:35px;padding:23px}.first-question h2{font-size:23px}.home-flow{margin-bottom:8px;padding:27px 0;display:block}.home-flow>p{margin-bottom:18px}.home-flow div{padding:12px 0 12px 35px}.checker-callout{flex-direction:column;align-items:start;gap:15px;padding-bottom:40px}.diagnosis{padding:25px 0 76px}.diagnosis-top{grid-template-columns:1fr 1fr}.diagnosis-top>span{display:none}.selection-grid{grid-template-columns:1fr 1fr}.problem-list{grid-template-columns:1fr}.question-panel{padding-top:25px}.choice-row{grid-template-columns:1fr 1fr;display:grid}.choice{min-width:0}.diagnosis-footer{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f2eaf0;padding:13px 0;position:sticky;bottom:0}.results{padding:36px 0 64px}.result-intro{padding-left:17px}.result-columns{margin:32px 0;display:block}.airline-summary{margin-top:31px}.recommendation-heading{align-items:start}.recommendation-heading h2{font-size:27px}.recommendation-heading .text-button{text-align:right;font-size:12px}.product-body,.browse-grid .product-body{grid-template-columns:95px 1fr;gap:14px;padding:0 14px 16px}.suitcase-visual,.browse-grid .suitcase-visual{height:125px}.suitcase-visual:before{border-width:3px;width:54px;height:76px}.suitcase-visual svg{width:37px}.product-copy h3,.browse-grid .product-copy h3{font-size:19px;line-height:1.2}.specs{font-size:13px}.match-good,.match-caution{font-size:12px}.merchant-actions{flex-direction:column;gap:6px}.merchant-actions a{padding:7px 9px;font-size:12px}.browse,.checker,.compare{padding:35px 0 65px}.browse-grid{grid-template-columns:1fr}.checker-layout{display:block}.checker form{margin-bottom:20px}.compare-table{overflow:auto}.compare-head,.compare-row{grid-template-columns:116px repeat(3,150px);min-width:566px}.compare-table{margin-right:-14px}.footer-inner{display:block}.footer-inner div:last-child{flex-wrap:wrap;margin-top:13px}.checker h1,.compare h1,.browse h1{font-size:35px}}
.recommendation-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.product-card{border-color:var(--line);box-shadow:none;border-radius:20px}.product-top{padding:18px 18px 0}.role{color:var(--pine);letter-spacing:.1em}.suitcase-placeholder{background:linear-gradient(135deg,#e9e5da,#fbf9f2);border-radius:14px;place-items:center;margin:16px 18px;display:grid}.suitcase-placeholder--card{height:156px}.suitcase-placeholder--detail{border-radius:26px;height:460px;margin:0}.suitcase-placeholder__case{background:#faf8f1;border:3px solid #3c4744;border-radius:16px;width:76px;height:102px;position:relative;box-shadow:0 12px 20px #0000000f}.suitcase-placeholder__handle{border:3px solid #3c4744;border-bottom:0;border-radius:10px 10px 0 0;width:34px;height:25px;position:absolute;top:-29px;left:50%;transform:translate(-50%)}.suitcase-placeholder__divider{border-top:2px solid #b8bdb7;position:absolute;top:44px;left:9px;right:9px}.suitcase-placeholder__wheel{background:#3c4744;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-9px}.suitcase-placeholder__wheel--left{left:12px}.suitcase-placeholder__wheel--right{right:12px}.suitcase-placeholder--detail .suitcase-placeholder__case{transform:scale(1.92)}.product-body{padding:0 18px 18px;display:block}.product-copy h3{font-size:20px}.match-list{border-top:1px solid var(--line);gap:7px;margin:14px 0;padding-top:12px;display:grid}.match-list p{justify-content:space-between;align-items:baseline;gap:10px;margin:0;font-size:12px;display:flex}.match-list p span{color:var(--muted)}.match-list p b{text-align:right;font-weight:800}.card-actions{gap:8px;margin-top:15px;display:grid}.card-actions a,.merchant,.detail-merchant a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:11px 12px;font-size:13px;font-weight:800;text-decoration:none;display:flex}.card-actions .rakuten,.detail-merchant a:last-child{border-color:var(--line);color:var(--ink);background:#fff}.product-detail{padding:54px 0 90px}.product-hero-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:44px;margin-top:24px;display:grid}.product-detail h1{letter-spacing:-.06em;margin:8px 0;font-size:clamp(34px,4vw,52px);line-height:1.1}.detail-specs{font-size:20px;font-weight:800}.source-line{color:var(--muted);font-size:13px}.detail-merchant{gap:8px;margin-top:24px;display:grid}.detail-stack{gap:24px;margin-top:48px;display:grid}.detail-stack section{border-top:1px solid var(--line);padding-top:22px}.detail-stack h2{margin:0 0 9px;font-size:21px}.detail-stack p{color:var(--muted);max-width:68ch}.detail-data{grid-template-columns:repeat(2,1fr);gap:0 24px;display:grid}.detail-data div{border-bottom:1px solid var(--line);justify-content:space-between;padding:10px 0;display:flex}.detail-data dt{color:var(--muted)}.detail-data dd{text-align:right;margin:0;font-weight:800}@media (max-width:900px){.recommendation-list{grid-template-columns:1fr 1fr}.product-hero-grid{grid-template-columns:1fr}.suitcase-placeholder--detail{height:300px}.suitcase-placeholder--detail .suitcase-placeholder__case{transform:scale(1.3)}}@media (max-width:720px){.recommendation-list{grid-template-columns:1fr}.suitcase-placeholder--card{height:128px;margin:14px}.product-body{padding:0 14px 16px}.product-detail{padding:34px 0 64px}.detail-data{grid-template-columns:1fr}.suitcase-placeholder--detail{height:260px}.suitcase-placeholder--detail .suitcase-placeholder__case{transform:scale(1)}.card-actions a,.merchant{font-size:12px}}.merchant-info{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;padding-top:7px;display:grid!important}.merchant-info a{color:var(--pine);white-space:nowrap;align-items:center;gap:3px;font-weight:800;text-decoration:none;display:inline-flex}.merchant-info small{color:var(--muted);text-align:right;grid-column:2/-1;font-size:11px}.detail-offer{margin:18px 0 14px}.detail-offer .merchant-info{font-size:14px}.suitcase-placeholder--card .suitcase-placeholder__case{transform:scale(.9)}.feature-row{justify-content:space-between;align-items:flex-start;gap:10px;font-size:12px;display:flex}.feature-row>span{color:var(--muted);padding-top:5px}.feature-chips{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.feature-chip{color:var(--pine);background:#f4f7f3;border:1px solid #dce4dc;border-radius:999px;align-items:center;padding:4px 8px;font-size:11px;font-weight:800;line-height:1.25;display:inline-flex}.detail-data .feature-chips{max-width:72%}.catalog-picker{grid-column:1/-1;gap:7px;margin-bottom:4px;display:grid}.catalog-picker label{font-size:13px;font-weight:800;display:block}.catalog-picker select{border:1px solid var(--line);background:#fff;border-radius:9px;width:100%;padding:11px}.checker-cta{justify-content:center;width:100%;margin-top:20px}.suitcase-placeholder img{object-fit:contain;mix-blend-mode:multiply;width:auto;max-width:88%;height:auto;max-height:88%;display:block}
