:root{--forest-deep:#0E4A24;--forest:#127339;--green:#1C9E3A;--green-600:#178A32;--light:#A4D8B0;--pale:#D8EEDD;--ink:#14261A;--paper:#FFFFFF;--paper-2:#F4F9F5;--muted:#5E7767;--line:#E1EDE4;--error:#8C1D18;--radius:10px;--maxw:1080px;--disp:"Zen Kaku Gothic New",system-ui,sans-serif;--body:"Noto Sans JP",system-ui,sans-serif;--mono:"Space Mono",ui-monospace,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--body);color:var(--ink);background:#F5F8F5;line-height:1.8;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--disp);line-height:1.28;margin:0;font-weight:900;letter-spacing:.01em}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}.ruler{height:14px;width:100%;background-image:repeating-linear-gradient(90deg,currentColor 0 1px,transparent 1px 14px),repeating-linear-gradient(90deg,currentColor 0 1.5px,transparent 1.5px 70px);background-position:0 bottom,0 bottom;background-repeat:repeat-x;background-size:14px 6px,70px 12px;opacity:.45}.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.24em;text-transform:uppercase}header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(14,74,36,.96);-webkit-backdrop-filter:saturate(140%) blur(6px);backdrop-filter:saturate(140%) blur(6px);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}.nav{align-items:center;justify-content:space-between;height:64px}.brand,.nav{display:flex}.brand{align-items:baseline;gap:2px;font-family:var(--disp);font-weight:900;font-size:20px;letter-spacing:.06em;color:#fff}.brand .star{color:var(--light);font-size:15px;transform:translateY(-1px)}.brand small{font-weight:500;font-size:11px;letter-spacing:.18em;color:var(--light);margin-left:8px}.menu{display:flex;gap:26px;align-items:center}.menu a{font-size:14px;color:var(--pale)}.menu a:hover{color:#fff}.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--body);font-weight:700;font-size:14px;padding:10px 20px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:.15s}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-600)}.btn-ghost{background:transparent;border-color:var(--light);color:var(--pale)}.btn-ghost:hover{border-color:#fff;color:#fff}.menu-btn{padding:8px 16px}.hero{background:linear-gradient(100deg,rgba(10,52,26,.95) 0,rgba(12,60,30,.82) 42%,rgba(14,74,36,.4) 100%),url(/img/hero.jpg) 100% /cover no-repeat,var(--forest-deep);color:#fff;position:relative;overflow:hidden}.hero .wrap{padding-top:76px;padding-bottom:86px;position:relative;z-index:2}.hero .eyebrow{color:var(--light)}.hero h1{font-size:clamp(30px,5.4vw,58px);margin:18px 0 0;letter-spacing:.02em}.hero h1 em{font-style:normal;color:var(--green)}.hero p.lead{max-width:620px;margin:22px 0 0;color:#DCEFE1;font-size:clamp(15px,1.7vw,17px)}.hero .cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-figure{position:absolute;right:-40px;bottom:-10px;z-index:1;width:min(46%,520px);opacity:.9;pointer-events:none}.hero-ruler{color:var(--light);position:absolute;left:0;right:0;bottom:0;z-index:2}.spec{display:flex;gap:30px;margin-top:40px;flex-wrap:wrap}.spec div{border-left:2px solid var(--green);padding-left:12px}.spec b{font-family:var(--disp);font-size:22px;display:block;color:#fff}.spec span{font-size:12px;color:var(--light);font-family:var(--mono);letter-spacing:.1em}section{padding:76px 0}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:38px;flex-wrap:wrap}.sec-head .eyebrow{color:var(--green)}.sec-head h2{font-size:clamp(24px,3.4vw,36px);margin-top:8px}.sec-head p{margin:6px 0 0;color:var(--muted);font-size:15px;max-width:520px}.alt{background:#FFFFFF}.band{position:relative;min-height:360px;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(rgba(8,40,20,.7),rgba(8,40,20,.8)),url(/img/drilling.jpg) 50% /cover no-repeat}.band .inner{color:#fff;padding:40px 24px}.band .eyebrow{color:#8FD39F}.band h2{color:#fff;font-size:clamp(24px,3.6vw,40px);margin-top:10px}.band p{color:#DCEFE1;margin:14px auto 0;max-width:540px;font-size:15px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px}.card{position:relative;background:#fff;border:1px solid var(--line);border-top:2px solid var(--green);border-radius:14px;padding:28px 24px;transition:.18s;box-shadow:0 1px 2px rgba(20,38,26,.04),0 12px 32px rgba(20,38,26,.05)}.card:hover{border-color:var(--green);transform:translateY(-4px);box-shadow:0 6px 14px rgba(20,38,26,.08),0 22px 46px rgba(20,38,26,.1)}.card .ic{width:46px;height:46px;border-radius:12px;background:var(--pale);color:var(--forest);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.card h3{font-size:19px;font-weight:700}.card p{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.75}.card .no{position:absolute;top:16px;right:18px;font-family:var(--mono);font-size:13px;color:var(--green);opacity:.6;letter-spacing:.1em}.price{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(20,38,26,.04),0 12px 32px rgba(20,38,26,.05)}.price-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line)}.price-row:last-child{border-bottom:0}.price-row .n{font-weight:700;font-size:16px}.price-row .d{color:var(--muted);font-size:13px;margin-top:2px}.price-row .v{font-size:15px;white-space:nowrap}.price-row .v,.tag{font-family:var(--mono);color:var(--forest)}.tag{font-size:11px;letter-spacing:.1em;background:var(--pale);padding:4px 10px;border-radius:100px}.price-note{text-align:center;color:var(--muted);font-size:13px;margin-top:18px}#pro{background:var(--forest-deep)}#pro h2{color:#fff}#pro .role{color:#8FD39F}#pro .pro p{color:#C7E4CF}#pro .pro-photo{background:#0A3A1C url(/img/portrait.jpg) top/cover no-repeat;border:1px solid rgba(255,255,255,.1)}#pro .titles{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}#pro .titles li{color:#DCEFE1}#pro .titles .lbl{color:#8FD39F}.pro{display:grid;grid-template-columns:280px 1fr;grid-gap:44px;gap:44px;align-items:center}.pro-photo{aspect-ratio:4/5;background:var(--forest-deep);border-radius:16px;position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;color:var(--light)}.pro-photo .ph{font-family:var(--mono);font-size:12px;letter-spacing:.12em;padding-bottom:18px;opacity:.7}.pro-photo .silo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:.85}.pro h2{font-size:clamp(24px,3.2vw,34px)}.pro .role{font-family:var(--mono);color:var(--green);font-size:13px;letter-spacing:.16em;text-transform:uppercase}.pro p{color:#3d5647;font-size:15px;margin:16px 0 0}.pro .links{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}.titles{list-style:none;padding:20px 22px;margin:20px 0 0;display:grid;grid-gap:9px;gap:9px;background:var(--paper-2);border:1px solid var(--line);border-radius:12px}.titles li{position:relative;padding-left:22px;font-size:14px;color:#2f4a3a}.titles li:before{content:"★";position:absolute;left:0;top:1px;color:var(--green);font-size:12px}.titles .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--green);text-transform:uppercase;margin-bottom:2px}.access{display:grid;grid-template-columns:1.3fr 1fr;grid-gap:30px;gap:30px;align-items:stretch}.map{background:#0E4A24;border:1px solid var(--line);border-radius:14px;min-height:280px;position:relative;overflow:hidden}.info dl{margin:0}.info dt{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-top:20px}.info dt:first-child{margin-top:0}.info dd{margin:4px 0 0;font-size:16px}.posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:18px;gap:18px}.post{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;transition:.18s;box-shadow:0 1px 2px rgba(20,38,26,.04),0 12px 32px rgba(20,38,26,.05)}.post:hover{border-color:var(--green);transform:translateY(-4px);box-shadow:0 6px 14px rgba(20,38,26,.08),0 22px 46px rgba(20,38,26,.1)}.post .thumb{aspect-ratio:16/9;background:var(--pale);color:var(--forest);display:flex;align-items:center;justify-content:center;overflow:hidden}.post .thumb img{width:100%;height:100%;object-fit:cover;display:block}.post .body{padding:18px 20px}.post .cat{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--green)}.post h3{font-size:16px;font-weight:700;margin-top:8px;line-height:1.55}.final{background:linear-gradient(rgba(10,58,28,.88),rgba(8,46,22,.93)),url(/img/racks.jpg) 50% /cover no-repeat,var(--forest-deep);color:#fff;text-align:center;position:relative;overflow:hidden}.final h2{font-size:clamp(26px,4vw,42px)}.final p{color:#DCEFE1;margin:16px auto 0;max-width:520px}.final .cta{gap:14px;margin-top:30px}.final .cta,.social{display:flex;justify-content:center;flex-wrap:wrap}.social{gap:12px;margin-top:34px}.social a{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--pale);border:1px solid rgba(255,255,255,.24);padding:9px 16px;border-radius:100px;transition:.15s}.social a:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.06)}.social svg{width:17px;height:17px}.final .ruler{color:var(--light);margin-bottom:56px}footer{background:#0A3A1C;color:var(--light)}.foot{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 0;flex-wrap:wrap;font-size:13px}.foot .fbrand{font-family:var(--disp);font-weight:900;color:#fff;letter-spacing:.06em}.foot a{color:var(--light)}.foot a:hover{color:#fff}.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}.reveal.in{opacity:1;transform:none}@media(max-width:820px){.menu{display:none}.pro{grid-template-columns:1fr}.pro-photo{max-width:300px}.access{grid-template-columns:1fr}.hero-figure{opacity:.28;width:70%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}@keyframes heroRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.hero .wrap>*{animation:heroRise .7s cubic-bezier(.22,.61,.36,1) both}.hero .wrap>:first-child{animation-delay:.05s}.hero .wrap>:nth-child(2){animation-delay:.16s}.hero .wrap>:nth-child(3){animation-delay:.28s}.hero .wrap>:nth-child(4){animation-delay:.4s}.hero .wrap>:nth-child(5){animation-delay:.52s}.hero .wrap>:nth-child(6){animation-delay:.62s}@media(prefers-reduced-motion:reduce){.hero .wrap>*{animation:none}}.cal-section{background:var(--paper-2)}.cal-legend{align-items:center;gap:16px;font-size:13px;color:var(--muted);margin:0 0 26px}.cal-legend,.cal-months{display:flex;flex-wrap:wrap;justify-content:center}.cal-months{align-items:flex-start;gap:clamp(20px,4vw,40px)}.cal-month{flex:1 1 300px;max-width:360px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:18px 18px 20px;box-shadow:0 1px 2px rgba(20,38,26,.04),0 12px 32px rgba(20,38,26,.05)}@media (max-width:1023px){.cal-month{flex:1 1 100%;max-width:420px}}.cal-month-head{font-family:var(--disp);font-size:15px;font-weight:700;color:var(--forest);margin:0 0 10px;text-align:center}.cal-grid,.cal-weekhead{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:5px;gap:5px}.cal-weekhead{margin-bottom:5px}.cal-wk{text-align:center;font-size:11px;font-family:var(--mono);color:var(--muted);padding:2px 0}.cal-wk--sun{color:#B4553F}.cal-wk--sat{color:#3F6FB4}.cal-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:9px;font-size:14px;line-height:1;border:1px solid transparent}.cal-day--empty{background:transparent;border:0}.cal-day--closed{background:transparent;color:#c2c7c4}.cal-day--open{background:#157a2c;border-color:#157a2c;color:#fff;font-weight:700}.cal-day--past{background:transparent;color:#d5d9d6;border-color:transparent}.cal-day--today{box-shadow:inset 0 0 0 2px #157a2c}.cal-num{display:block}.cal-legend-item{display:inline-flex;align-items:center;gap:6px}.cal-swatch{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid transparent}.cal-swatch--open{background:#157a2c;border-color:#157a2c}.cal-swatch--closed{background:transparent;border-color:#c2c7c4}.cal-fallback{text-align:center;font-size:15px;color:var(--muted);line-height:1.9;margin:0 auto;max-width:560px}.cal-cta-row{display:flex;justify-content:center;margin-top:34px}.cal-contact{margin:30px auto 0;max-width:560px;text-align:center;display:flex;flex-direction:column;gap:8px}.cal-contact-item{margin:0;font-size:15px;color:var(--ink);line-height:1.9}.cal-contact-label{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-right:10px}.cal-contact-link{color:var(--green-600);font-weight:700;text-decoration:none;border-bottom:1px solid transparent;transition:.15s;word-break:break-word}.cal-contact-link:hover{color:var(--forest);border-bottom-color:var(--green)}.cal-contact-note{color:var(--muted);font-size:13px;margin-left:8px}.foot-legal{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px 20px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:12px}.legal{max-width:760px;margin:0 auto}.legal p{margin:12px 0 0;font-size:15px;line-height:1.9}.legal h3{font-size:19px;font-weight:700;color:var(--forest);margin:36px 0 4px}.legal ul{margin:12px 0 0;padding-left:1.4em;font-size:15px;line-height:1.9}.legal li{margin:6px 0 0}.legal a{color:var(--green);font-weight:700}.legal .legal-date{margin-top:36px;color:var(--muted);font-size:14px}.legal-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(20,38,26,.04),0 12px 32px rgba(20,38,26,.05);margin-top:20px}.legal-table{width:100%;border-collapse:collapse}.legal-table td,.legal-table th{padding:16px 22px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:15px;line-height:1.85}.legal-table th{width:200px;font-weight:700;color:var(--forest);background:var(--paper-2)}.legal-table thead th{width:auto;font-size:13px;white-space:nowrap}.legal-table tr:last-child td,.legal-table tr:last-child th{border-bottom:0}.legal-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.legal-scroll .legal-table{min-width:560px}@media(max-width:640px){.legal-table--stack,.legal-table--stack tbody,.legal-table--stack td,.legal-table--stack th,.legal-table--stack tr{display:block;width:auto}.legal-table--stack th{padding:12px 18px 6px;border-bottom:0;font-size:13px}.legal-table--stack td{padding:0 18px 14px}.legal-table td,.legal-table th{padding-left:18px;padding-right:18px}}.so-note{max-width:760px;background:var(--paper-2);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:12px;padding:20px 22px}.so-terms{margin:0;padding:0;list-style:none}.so-terms li{margin:0;padding-left:1em;text-indent:-1em}.so-terms li,.so-terms-tail{font-size:15px;line-height:1.9}.so-terms-tail{margin:14px 0 0}.so-subhead{font-size:17px;font-weight:700;color:var(--forest);margin:40px 0 12px}.so-makers{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0;padding:0;list-style:none}.so-makers a{color:var(--green);font-weight:700;font-size:14px}.so-pending{margin:0;background:var(--paper-2);border:1px dashed var(--line);border-radius:10px;padding:12px 16px}.so-notes,.so-pending{font-size:14px;color:var(--muted)}.so-notes{margin:20px 0 0;padding-left:1.3em;line-height:1.75}.so-notes li{margin:6px 0 0}.so-notes--tight{margin:0}.so-notes a{color:var(--green);font-weight:700}.so-noscript{max-width:760px;margin:0;font-size:15px;line-height:1.9;background:var(--paper-2);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:12px;padding:20px 22px}.so-form{max-width:760px;margin-top:24px}.so-group{min-width:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;margin:0 0 20px}.so-group legend{font-family:var(--disp);font-weight:900;font-size:16px;color:var(--forest);padding:0 10px}.so-field{margin-top:18px}.so-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--ink);margin-bottom:6px}.so-badge{font-size:11px;font-weight:700;line-height:1.6;border-radius:4px;padding:2px 7px}.so-badge--req{background:var(--green);color:#fff}.so-badge--opt{background:var(--pale);color:var(--forest)}.so-input,.so-select,.so-textarea{width:100%;font-family:var(--body);font-size:16px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:11px 14px}.so-input:focus,.so-select:focus,.so-textarea:focus{border-color:var(--green);outline:2px solid var(--green);outline-offset:1px}.so-select--narrow{max-width:140px}.so-textarea{line-height:1.8;min-height:120px;resize:vertical}.so-help{color:var(--muted);line-height:1.7}.so-err,.so-help{margin:6px 0 0;font-size:13px}.so-err{font-weight:700;color:var(--error);background:var(--paper-2);border-left:3px solid var(--error);border-radius:6px;padding:6px 10px}.so-alert,.so-summary{background:var(--pale);border-left:1px solid var(--forest);border:1px solid var(--forest);border-left-width:4px;border-radius:12px;padding:16px 18px;margin-bottom:22px}.so-alert .so-alert-head,.so-summary .so-alert-head{margin:0;font-family:var(--disp);font-weight:900;font-size:16px;color:var(--forest-deep)}.so-alert p{line-height:1.8;color:var(--ink)}.so-alert p,.so-summary ul{margin:8px 0 0;font-size:14px}.so-summary ul{padding-left:1.3em;line-height:1.9}.so-summary a{color:var(--forest-deep);font-weight:700;text-decoration:underline}.so-alert--error,.so-summary{background:var(--paper-2);border-color:var(--error)}.so-alert--error .so-alert-head,.so-summary .so-alert-head{color:var(--error)}.so-input[aria-invalid=true],.so-select[aria-invalid=true],.so-textarea[aria-invalid=true]{border-color:var(--error)}.so-agree input[aria-invalid=true]{outline:2px solid var(--error);outline-offset:2px}.so-item{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:18px;margin-top:16px}.so-item-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.so-item-head h3{margin:0;font-family:var(--disp);font-weight:900;font-size:15px;color:var(--forest)}.so-item-add,.so-item-del{font-family:var(--body);font-size:13px;border-radius:8px;border:1px solid var(--line);background:#fff;cursor:pointer;transition:.15s}.so-item-del{padding:5px 12px;color:var(--muted)}.so-item-add,.so-item-del:hover{border-color:var(--green);color:var(--forest)}.so-item-add{margin-top:16px;padding:9px 18px;font-size:14px;font-weight:700}.so-item-add:hover{background:var(--pale)}.so-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.so-agree{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px}.so-agree input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--green);flex:none}.so-agree label{flex:1 1;font-size:14px;line-height:1.8}.so-agree a{color:var(--green);font-weight:700}.so-agree .so-err{flex-basis:100%}.so-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.so-actions .btn:disabled{opacity:.6;cursor:not-allowed}.so-btn-outline{background:#fff;border-color:var(--green);color:var(--forest)}.so-btn-outline:hover{background:var(--pale)}.so-done{max-width:760px;background:#fff;border:1px solid var(--line);border-top:2px solid var(--green);border-radius:14px;padding:28px 24px;box-shadow:0 1px 2px rgba(20,38,26,.04),0 12px 32px rgba(20,38,26,.05)}.so-done h3{font-size:22px;color:var(--forest-deep)}.so-done p{margin:12px 0 0;font-size:15px;line-height:1.9}.so-receipt{display:inline-block;font-family:var(--mono);font-size:18px;font-weight:700;color:var(--forest);background:var(--paper-2);border-radius:10px;padding:12px 16px}@media(max-width:640px){.so-group{padding:18px 16px}.so-item{padding:14px}.so-select--narrow{max-width:100%}.so-actions .btn{width:100%;justify-content:center}.so-noscript,.so-note{padding:16px 18px}}.theme-shop{background:var(--paper)}.theme-shop .alt{background:color-mix(in srgb,var(--pale) 30%,var(--paper))}.theme-shop .sec-head .eyebrow{color:var(--forest)}.theme-shop .sec-head h2{color:var(--forest-deep)}.theme-shop .btn-primary{background:var(--forest)}.theme-shop .btn-primary:hover{background:var(--forest-deep)}.theme-shop .card{border:1px solid var(--line);box-shadow:none}.theme-shop .card:hover{border-color:var(--light);transform:none;box-shadow:none}.theme-shop .card .no{color:var(--forest)}.theme-shop .page-band{background:var(--pale);padding:26px 0 22px}.theme-shop .page-band h1{font-size:clamp(24px,3vw,32px);color:var(--forest-deep)}.theme-shop .page-band-lead{margin:6px 0 0;font-size:15px;line-height:1.7;color:var(--ink)}.theme-shop .page-band-note{margin:8px 0 0;font-size:12.5px;line-height:1.7;color:var(--ink)}@media(max-width:599px){.theme-shop .page-band{padding:14px 0 12px}.theme-shop .page-band h1{font-size:22px}.theme-shop .page-band-lead{margin-top:4px;font-size:14px;line-height:1.6}.theme-shop .page-band-note{margin-top:6px;font-size:12px;line-height:1.6}}.cat-section{padding:12px 0 64px}.cat-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0}.cat-tabs a{padding:8px 18px;border:1px solid var(--line);border-radius:100px;background:#fff;color:var(--forest);font-size:14px;font-weight:700}.cat-tabs a[aria-current=true]{background:var(--forest);border-color:var(--forest);color:#fff}.cat-group{margin-top:16px;scroll-margin-top:80px}.cat-group>h2{font-size:20px;color:var(--forest-deep)}.cat-group-sub{margin:4px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}.cat-group .cards{margin-top:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.cat-card{display:flex;flex-direction:column;padding:14px 14px 16px}.cat-card img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:8px;background:var(--pale)}.card .cat-brand{margin-top:12px;font-size:13px;line-height:1.5}.cat-card h3{margin:2px 0 0;font-family:var(--body);font-size:16px;font-weight:700;line-height:1.5}.card .cat-release{margin-top:2px;font-size:13px;line-height:1.5}.card .cat-spec{margin-top:4px;font-size:13px;line-height:1.5}.card .cat-price{margin-top:8px;color:var(--forest);font-weight:700;font-size:15px}.card .cat-price span{white-space:nowrap}.cat-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 14px}.cat-card .btn{margin-top:auto;justify-content:center;text-align:center;padding:10px 12px;font-size:13px}.cat-btn-short,.cat-card[hidden]{display:none}.cat-more{display:flex;justify-content:center;margin-top:18px}.cat-pending{margin-top:16px;max-width:620px;padding:16px 20px;border-radius:12px;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--green)}.cat-pending-title{margin:0;font-family:var(--disp);font-weight:900;font-size:17px;color:var(--forest-deep)}.cat-pending-body{margin:6px 0 0;font-size:14px;color:var(--ink)}.cat-pending-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}@media(max-width:959px){.cat-group .cards{grid-template-columns:repeat(3,minmax(0,1fr))}.cat-btn-long{display:none}.cat-btn-short{display:inline}}@media(max-width:599px){.cat-section{padding:12px 0 48px}.cat-tabs{gap:6px}.cat-tabs a{padding:6px 14px;font-size:13px}.cat-group{margin-top:16px}.cat-group>h2{font-size:18px}.cat-group-sub{font-size:12px}.cat-group .cards{margin-top:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cat-card{padding:10px 10px 12px}.card .cat-brand{margin-top:8px;font-size:12px}.cat-card h3{font-size:14px}.card .cat-release,.card .cat-spec{font-size:12px}.card .cat-spec{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card .cat-price{font-size:13px}.cat-card .tag{font-size:10px;letter-spacing:.02em;padding:3px 8px}.cat-card .btn{padding:10px 6px}}.so-page :is(#request-form,#terms,#flow){scroll-margin-top:80px}.theme-shop .so-band-flow{margin:6px 0 0;font-size:14px;line-height:1.7;color:var(--ink)}.so-nowrap{white-space:nowrap}.theme-shop .so-band-flow-link{display:inline-block;margin-left:12px;font-size:13px;font-weight:700;color:var(--forest);text-decoration:underline;text-underline-offset:3px}.so-confirm{margin-top:20px;background:color-mix(in srgb,var(--pale) 30%,var(--paper));border:1px solid var(--line);border-radius:12px;padding:22px 24px}.so-confirm h3{font-size:18px;color:var(--forest-deep)}.so-confirm h4{margin:18px 0 0;font-size:15px;font-weight:700;line-height:1.5;color:var(--forest)}.so-confirm .so-notes{margin:8px 0 0;color:var(--ink);font-size:14px;line-height:1.8}.so-confirm .so-notes li{margin:4px 0 0}.so-confirm .so-notes a{color:var(--forest);text-decoration:underline}.so-confirm .so-terms-body{margin-top:8px}.so-confirm .so-terms li,.so-confirm .so-terms-tail{font-size:14px;line-height:1.8}.so-confirm .so-terms li+li{margin-top:4px}.so-confirm .so-terms-tail{margin-top:10px}.so-confirm-links{display:flex;flex-wrap:wrap;gap:6px 24px;margin-top:14px}.so-confirm-links a{font-size:14px;font-weight:700;color:var(--forest)}.so-steps{list-style:none;margin:0;padding:0;max-width:calc(40em + 56px)}.so-steps li{display:grid;grid-template-columns:44px minmax(0,1fr);grid-gap:12px;gap:12px;padding:18px 0;border-top:1px solid var(--line)}.so-steps li:last-child{border-bottom:1px solid var(--line)}.so-step-no{font-family:var(--mono);font-size:15px;font-weight:700;line-height:1.6;color:var(--forest)}.so-steps h3{font-size:17px;color:var(--forest-deep)}.so-steps p{margin:6px 0 0;font-size:15px;line-height:1.9;color:var(--ink)}.so-card-list{margin:12px 0 0;padding-left:1.2em;font-size:14px;line-height:1.8;color:var(--ink)}.so-card-list li+li{margin-top:6px}.theme-shop .so-badge--req{background:var(--forest)}.theme-shop .so-input:focus,.theme-shop .so-select:focus,.theme-shop .so-textarea:focus{border-color:var(--forest);outline-color:var(--forest)}.theme-shop .so-agree input{accent-color:var(--forest)}.theme-shop .so-agree a,.theme-shop .so-notes a{color:var(--forest)}.theme-shop .so-item-add,.theme-shop .so-item-del:hover{border-color:var(--forest)}.theme-shop .so-done{margin-top:24px;border-top:1px solid var(--line);box-shadow:none}.so-group legend{display:flex;align-items:center;gap:8px}.so-select--mid{max-width:240px}fieldset.so-radios{border:0;padding:0;margin:18px 0 0;min-width:0}fieldset.so-radios legend.so-label{padding:0;font-family:var(--body);font-weight:700;font-size:14px;color:var(--ink)}.so-choices{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.so-choice{display:inline-flex;align-items:center;gap:8px;cursor:pointer;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:10px 16px;font-size:15px;font-weight:700;color:var(--ink)}.so-choice:has(input:checked){border-color:var(--forest);background:var(--pale)}.so-choice input{width:18px;height:18px;margin:0;accent-color:var(--forest);flex:none}.so-choice input:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.so-choice:has(input[aria-invalid=true]){border-color:var(--error)}.so-help-list{padding-left:1.2em}.so-help-list li+li{margin-top:2px}.so-info{margin:14px 0 0;font-size:14px;line-height:1.7;color:var(--ink);background:var(--pale);border-left:3px solid var(--forest);border-radius:8px;padding:10px 14px}.so-form>.so-info{margin:0 0 20px}@media(max-width:599px){.so-select--mid{max-width:100%}.so-confirm{padding:16px}.so-steps li{grid-template-columns:32px minmax(0,1fr);gap:8px}}.theme-shop.showcase{background:var(--pale);padding:56px 0}.showcase .sec-head{margin-bottom:24px}.showcase .sec-head p{max-width:none;color:var(--ink)}.showcase .cards{grid-template-columns:repeat(4,minmax(0,1fr))}.showcase .cat-card:hover h3{text-decoration:underline;text-underline-offset:3px}.showcase .btn:focus-visible,.showcase .cat-card:focus-visible{outline:2px solid var(--forest-deep);outline-offset:2px}.showcase-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;margin-top:24px}.showcase-cats{display:flex;flex-wrap:wrap;gap:8px}.showcase-cats .btn{padding:8px 18px;border-radius:100px;background:var(--paper);border-color:var(--forest);color:var(--forest)}.showcase-cats .btn:hover{background:var(--forest-deep);border-color:var(--forest-deep);color:#fff}.showcase-note{margin:16px 0 0;font-size:12.5px;line-height:1.7;color:var(--ink)}@media(max-width:599px){.theme-shop.showcase{padding:40px 0}.showcase .sec-head{margin-bottom:18px}.showcase .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.showcase-actions{flex-direction:column;align-items:stretch;margin-top:18px}.showcase-cats{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-gap:6px;gap:6px}.showcase-cats .btn{padding:8px 4px;font-size:13px}.showcase-actions .btn-primary,.showcase-cats .btn{justify-content:center}.showcase-note{font-size:12px}}