.shop-page main { background:radial-gradient(ellipse at 80% 0,#10365255,transparent 40%); }
.shop-page main h1,.shop-page main h2,.shop-page main h3 { font-family:var(--display); }
.shop-page main h2 { font-size:clamp(26px,3vw,38px); }
.shop-page main p { margin-top:18px; }
.shop-hero { display:grid; grid-template-columns:1fr 1.15fr; gap:40px; align-items:center; padding-block:55px; }
.shop-hero h1 { font-size:clamp(38px,4.6vw,66px); line-height:1.04; }
.shop-hero h1 span { color:var(--cyan); }
.shop-hero-copy>p:not(.eyebrow) { max-width:580px; }
.shop-actions { display:flex; flex-wrap:wrap; align-items:center; gap:25px; margin-top:30px; font-size:12px; }
.shop-actions .button { font-size:12px; }
.shop-visual { margin:0; border:1px solid #285574; border-radius:5px; box-shadow:0 0 45px #008cff14; overflow:hidden; }
.shop-visual img { display:block; width:100%; height:auto; object-fit:cover; }
.shop-inquiry { display:grid; grid-template-columns:.7fr 1.3fr; gap:65px; padding-block:30px 60px; }
.shop-inquiry a:not(.button),.shop-faq a { color:var(--cyan); }
.shop-inquiry>div { padding-top:25px; }
.shop-inquiry .contact-page-form { padding-top:25px; }
.shop-inquiry .form-status:empty { margin:0; }
.shop-future { padding-block:60px; border-block:1px solid #263b4c; background:linear-gradient(130deg,#0d2030,#08111c); }
.shop-feature-heading { max-width:780px; }
.shop-features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:35px; }
.shop-features article { padding:25px 0; border-top:2px solid #3bafe1; }
.shop-number { display:block; font:14px var(--mono); color:var(--cyan); margin-bottom:22px; }
.shop-features h3 { font-size:23px; line-height:1.25; }
.shop-construction { display:grid; grid-template-columns:.7fr 1.3fr; gap:65px; border-top:1px solid #30465a; margin-top:32px; padding-top:35px; align-items:start; }
.shop-construction p { margin-top:0!important; }
.shop-bottom { padding-block:60px 85px; }
.shop-faq h2 { margin-bottom:25px; }
.shop-faq details { border-bottom:1px solid #30485d; padding-block:20px; }
.shop-faq summary { cursor:pointer; font-size:18px; color:#e0eaf4; }
.shop-faq summary::marker { color:var(--cyan); }
.shop-final { display:flex; align-items:center; gap:40px; border-top:1px solid #35516a; margin-top:55px; padding-top:35px; }
.shop-final .button { flex-shrink:0; font-size:12px; }
.shop-final h2 { font-size:26px!important; }
@media(max-width:900px) { .shop-hero,.shop-inquiry,.shop-construction { grid-template-columns:1fr; gap:30px; } .shop-visual { max-width:760px; } .shop-inquiry { padding-top:0; } .shop-final { flex-direction:column-reverse; align-items:flex-start; } .shop-features { gap:20px; } }
@media(max-width:600px) { .shop-hero { padding-block:35px; } .shop-features { grid-template-columns:1fr; gap:0; } .shop-future,.shop-bottom { padding-block:40px; } .shop-actions .button { width:100%; } .shop-final .button { padding-inline:14px; white-space:normal; } }
