/* A shared rounded card treatment, inspired by the supplied mobile reference. */
:root{--card-radius:22px;--card-border:#cbd3d8;--card-shadow:0 5px 20px #10283f05}
.package,.inquiry-panel{border-radius:var(--card-radius);border-color:var(--card-border);box-shadow:var(--card-shadow)}
.package{padding:28px}.package.featured{border-color:#476178;background:linear-gradient(145deg,#17344e,#10283f)}
.button,.package-link{border-radius:12px}
nav a.nav-contact{border-radius:999px;padding-inline:22px}
.services{background:#10283f}
.service{padding:26px;gap:22px;border:1px solid #adc4d335;border-radius:var(--card-radius);margin-top:14px;background:linear-gradient(130deg,#ffffff07,#ffffff02)}
.service p{color:#d0dce4}.service>span{padding-top:4px}
.process-four{gap:16px}
.process-four>div{border:1px solid var(--card-border);border-radius:var(--card-radius);background:#fff;padding:24px;box-shadow:var(--card-shadow)}
.process-four h3{font-size:21px}.process-four p{font-size:12px;line-height:1.8}
.studio-copy{background:#fafcfb;border:1px solid var(--card-border);border-radius:var(--card-radius);padding:28px}
.review-empty{border-radius:var(--card-radius);border-color:#b7ccdc50}
.gallery-frame{border-radius:18px;border:1px solid #10283f18}
.faq{background:#10283f;color:#f7f8fa;border-color:#10283f;align-items:start;gap:clamp(28px,5vw,68px)}
.faq-intro{max-width:360px;color:#c4d2de;margin-top:20px;font-size:13px;line-height:1.8}
.faq-list{min-width:0;display:flex;flex-direction:column;gap:12px}
.faq details{margin:0;border:1px solid #a4b7c238;border-radius:var(--card-radius);background:#183047;overflow:hidden;transition:border-color .2s,background .2s}
.faq details[open]{background:#1d374f;border-color:#b2c8d58c}
.faq summary{padding:23px 62px 23px 26px;font-size:15px;line-height:1.55;font-weight:800;min-height:78px;display:flex;align-items:center}
.faq summary::after{content:'+';right:24px;top:50%;transform:translateY(-50%);font-size:27px;font-weight:400;color:#c1d2df;line-height:1}
.faq details[open]>summary::after{content:'×';font-size:28px}
.faq summary:hover{background:#ffffff04}.faq summary:focus-visible{outline:2px solid #d6e5ed;outline-offset:-5px;border-radius:var(--card-radius)}
.faq details p{padding:0 26px 26px;font-size:14px;line-height:1.85;color:#d2dce4}
.faq-contact{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #a4b7c24d;border-radius:999px;min-height:60px;margin-top:8px;padding:16px 26px;background:#ffffff05;font-size:13px;font-weight:800}
.faq-contact:hover{background:#ffffff10;border-color:#c1d2df}.faq-contact>span{font-size:24px;line-height:1;font-weight:400}
.contact{background:#edf0f1}.contact .button{border-radius:999px;padding-inline:26px}
@media(max-width:1000px){.process-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 :root{--card-radius:20px}
 .service{padding:22px 20px;grid-template-columns:20px minmax(0,1fr);gap:10px 14px;margin-top:12px}
 .service h3{font-size:22px}.service p{font-size:13px;line-height:1.8}
 .process-four{grid-template-columns:1fr;gap:12px}.process-four>div{padding:22px}.process-four p{font-size:13px}
 .studio-copy{padding:23px}.package{padding:24px}.gallery-frame{border-radius:16px}
 .faq{gap:24px;padding-block:28px}.faq-intro{margin-top:16px;max-width:100%}
 .faq summary{padding:20px 52px 20px 20px;font-size:14px;min-height:74px}
 .faq summary::after{right:20px}.faq details p{padding:0 20px 22px;font-size:13px;line-height:1.85}
 .faq-contact{padding:16px 21px;font-size:12px;line-height:1.5;min-height:58px}.faq-list{gap:12px}
 .inquiry-panel{padding:23px}.review-empty{padding:20px}
}
