:root{--plan-ink:#20344f;--plan-muted:#566a80;--plan-blue:#2864cf;--plan-sky:#e6f2ff;--plan-line:#d8e5f4;font-family:'Avenir Next','PingFang SC',system-ui,sans-serif;color:var(--plan-ink);background:#fff;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(var(--plan-sky) 0 80px,#fff 80px)}a{color:inherit;text-underline-offset:4px}button,select{font:inherit}
.plans-nav,main,body>footer{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.plans-nav{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:80px;border-bottom:1px solid var(--plan-line);position:relative;isolation:isolate}

.plans-brand{display:inline-flex;align-items:center;gap:10px;flex:none;font-size:31px;font-weight:800;letter-spacing:-1.1px;text-decoration:none}
.plans-brand:before{content:'';width:39px;height:44px;flex:none;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45 49'%3E%3Crect x='2' y='16' width='23' height='27' rx='2' fill='%2394dce1' fill-opacity='.5' stroke='%2332b7c9' stroke-width='2.5' transform='rotate(-10 13 30)'/%3E%3Crect x='19' y='14' width='24' height='28' rx='2' fill='%23f6adc2' fill-opacity='.5' stroke='%23ed8299' stroke-width='2.5' transform='rotate(9 30 28)'/%3E%3Crect x='13' y='4' width='18' height='18' rx='1.5' fill='%23f9dd89' fill-opacity='.6' stroke='%23eeb94f' stroke-width='2.5' transform='rotate(45 22 13)'/%3E%3C/svg%3E")}
.plans-nav nav{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px 24px;font-size:13px}
.plans-nav nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-weight:550;color:var(--plan-muted)}
.plans-nav nav a:hover{color:var(--plan-blue)}
.plans-intro{max-width:760px;margin:30px 0 28px}
.plans-intro h1{font-size:clamp(28px,3.2vw,40px);line-height:1.2;letter-spacing:-1px;margin:0 0 10px;font-weight:800;text-wrap:balance}
.plans-intro p{font-size:15px;line-height:1.7;margin:0;color:var(--plan-muted);max-width:690px}
.section-heading{margin:0 0 16px}
.section-heading h2{font-size:21px;line-height:1.35;margin:0 0 6px}
.section-heading p{font-size:13px;line-height:1.65;color:var(--plan-muted);margin:0;max-width:800px}
.photo-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:36px;align-items:stretch}
.small-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.plan-card{min-width:0;padding:0;text-align:left;background:#fff;border:1px solid var(--plan-line);border-radius:20px;overflow:hidden;color:inherit;font:inherit;cursor:pointer;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s;text-decoration:none}
.plan-card:hover{border-color:#91b6ec;box-shadow:0 8px 24px #2864cf0d}
.plan-card:focus-visible,a:focus-visible{outline:3px solid var(--plan-blue);outline-offset:4px}
.plan-art{display:grid;place-items:center;background:#f4f8fe;min-width:0;overflow:hidden}
.plan-art img{display:block;width:100%;height:200px;object-fit:contain;padding:10px}
.photo-plans .plan-art img{height:220px;aspect-ratio:auto}
.plan-card-copy{display:flex;flex-direction:column;gap:7px;padding:18px 20px;flex:1;min-width:0}
.plan-card-copy strong{font-size:21px;line-height:1.3;font-weight:750;overflow-wrap:break-word}
.plan-material-tag{font-size:11px;line-height:1.5;color:#78531c;align-self:flex-start;background:#fff4d5;border-radius:6px;padding:3px 7px}
.plan-details{font-size:12px;line-height:1.5;color:var(--plan-blue);font-weight:650}
.plan-description{font-size:13px;line-height:1.65;color:var(--plan-muted)}
.plan-open{display:block;align-self:flex-start;margin-top:auto;padding-top:8px;color:var(--plan-blue);font-size:13px;line-height:1.5;font-weight:700}
.small-plans .plan-card-copy{padding:18px 20px}.small-plans .plan-card-copy strong{font-size:20px}
.small-plans .plan-material-tag{color:#326257;background:#ecf7ef}
.plans-shop{margin:40px 0 32px;padding:24px 28px;background:#f2f7ff;border:1px solid var(--plan-line);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.plans-shop h2{font-size:21px;margin:0 0 8px}.plans-shop p{max-width:680px;line-height:1.7;color:var(--plan-muted);font-size:13px;margin:0}
.primary-link{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;text-decoration:none;background:var(--plan-blue);color:#fff;padding:11px 18px;border-radius:12px;font-weight:650;font-size:13px;line-height:1.5}
body>footer{border-top:1px solid var(--plan-line);padding:24px 0 30px;font-size:12px;color:var(--plan-muted);display:flex;justify-content:space-between;gap:24px}body>footer p{margin:0;line-height:1.7;max-width:650px}.plans-error{color:#b0422c}
@media(min-width:741px) and (max-width:1000px){.plans-nav,main,body>footer{width:calc(100% - 48px)}.photo-plans .plan-art img{height:200px}.plan-card-copy,.small-plans .plan-card-copy{padding:16px}.plan-card-copy strong,.small-plans .plan-card-copy strong{font-size:19px}}
@media(max-width:740px){
 .plans-nav,main,body>footer{width:calc(100% - 32px)}
 body{background:linear-gradient(var(--plan-sky) 0 88px,#fff 88px)}
 .plans-nav{min-height:88px;flex-wrap:wrap;gap:0 12px;padding:7px 0}
 .plans-brand{font-size:28px;gap:7px}.plans-brand:before{width:31px;height:36px}
 .plans-nav nav{width:100%;justify-content:space-between;gap:0 15px;font-size:12px}.plans-nav nav a{min-height:36px}
 .plans-intro{margin:24px 0}.plans-intro h1{font-size:28px;letter-spacing:-.6px;margin-bottom:9px}.plans-intro p{font-size:14px;line-height:1.65}
 .section-heading{margin-bottom:14px}.section-heading h2{font-size:20px}.section-heading p{font-size:12px;line-height:1.6}
 .photo-plans,.small-plans{grid-template-columns:1fr;gap:14px}.photo-plans{margin-bottom:28px}
 .plan-card{display:grid;grid-template-columns:36% minmax(0,1fr);border-radius:16px}
 .plan-art{height:100%;min-height:165px}.plan-art img,.photo-plans .plan-art img,.small-plans .plan-art img{height:100%;min-height:165px;max-height:220px;aspect-ratio:auto;padding:3px}
 .plan-card-copy,.small-plans .plan-card-copy{padding:14px 13px;gap:6px}.plan-card-copy strong,.small-plans .plan-card-copy strong{font-size:17px;line-height:1.3}
 .plan-material-tag{font-size:10px;padding:2px 5px}.plan-details{font-size:11px}.plan-description{font-size:12px;line-height:1.55}.plan-open{font-size:12px;padding-top:5px}
 .plans-shop{display:block;padding:20px;margin:30px 0 24px}.plans-shop h2{font-size:20px}.plans-shop .primary-link{margin-top:16px}
 body>footer{display:block;padding:22px 0}body>footer p{margin-top:12px}
}
@media(max-width:380px){.plans-nav nav{width:100%;justify-content:space-between}.plans-intro h1{font-size:26px}.plan-card{grid-template-columns:33% minmax(0,1fr)}.plan-card-copy,.small-plans .plan-card-copy{padding:12px}.plan-card-copy strong,.small-plans .plan-card-copy strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.plan-card{transition:none}}
