/* Static photo previews; replace screen media with supplied videos later. */
.media-phone{--phone-width:260px;width:var(--phone-width);max-width:100%;margin:0 auto;position:relative;isolation:isolate}
.media-phone::before{content:"";position:absolute;inset:15% -15% 8%;border-radius:50%;background:#ffe3e3;filter:blur(48px);opacity:.6;z-index:-1;pointer-events:none}
.phone-device{position:relative;background:#080808;padding:8px;border:2px solid #666;border-radius:42px;box-shadow:0 24px 48px #00000016,0 4px 12px #00000012}
.phone-device::before,.phone-device::after{content:"";position:absolute;background:#666;border-radius:2px;width:3px;left:-4px;top:80px;height:38px}
.phone-device::after{left:auto;right:-4px;top:115px;height:52px}
.phone-screen{position:relative;aspect-ratio:9/18.4;overflow:hidden;border-radius:32px;background:#fff}
.phone-screen>img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--phone-position,50% 35%);position:absolute;inset:0}
.phone-topbar{position:absolute;left:0;right:0;top:0;height:44px;background:linear-gradient(#fff9,transparent);display:flex;align-items:flex-start;justify-content:space-between;padding:12px 17px;color:#000;font:700 10px/1 sans-serif;z-index:1;pointer-events:none}
.phone-island{position:absolute;top:9px;left:50%;translate:-50% 0;width:72px;height:20px;border-radius:999px;background:#080808}
.phone-status{letter-spacing:1px;font-size:10px}
.phone-caption{position:absolute;bottom:29px;left:12px;right:12px;background:#fffffff2;padding:16px;border:1px solid #fff;border-radius:20px;box-shadow:0 4px 20px #00000008}
.phone-caption>span{display:block;color:#666;font-size:10px;line-height:1.6;margin-bottom:5px}
.phone-caption>strong{display:block;color:#000;font-size:19px;line-height:1.35;font-weight:700;letter-spacing:-.035em}
.phone-home{position:absolute;bottom:9px;left:50%;translate:-50% 0;background:#000;width:76px;height:4px;border-radius:999px}
.media-phone>figcaption{text-align:center;font-size:11px;color:#666;line-height:1.6;margin:14px -8px 0}
.control-section .control-panel.phone-control{grid-template-columns:280px minmax(0,1fr);gap:32px 56px;align-items:start}
.phone-control>.media-phone{grid-column:1;grid-row:1/3;align-self:center}
.phone-control>.control-intro{grid-column:2;display:block}
.phone-control .control-intro h2{font-size:clamp(30px,3vw,42px)}
.phone-control .control-intro>p:not(.eyebrow){max-width:620px;margin-top:20px}
.phone-control .control-intro>.button{margin-top:24px}
.phone-control>.control-grid{grid-column:2;grid-template-columns:1fr 1fr;gap:12px}
.phone-control .control-card{padding:20px}
.phone-control .control-card .icon-circle{margin-bottom:16px}
.phone-control .control-card h3{font-size:19px;margin-bottom:10px}
.phone-control .control-card p{font-size:13px}
.phone-reviews-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:72px;align-items:center}
.phone-reviews-layout>.reviews-grid{grid-template-columns:1fr;gap:20px}
.phone-reviews-layout .review-card{padding:28px;gap:18px}
.phone-reviews-layout .review-card blockquote{font-size:24px}
.consultation-promo .consultation-panel.phone-consultation{grid-template-columns:240px minmax(0,1fr) minmax(280px,.95fr);gap:24px 32px;padding:40px;align-items:start}
.phone-consultation>.media-phone{--phone-width:230px;grid-column:1;grid-row:1/3;align-self:center}
.consultation-promo .phone-consultation>.consultation-copy{grid-column:2;grid-row:1}
.consultation-promo .phone-consultation>.consultation-copy h2{font-size:36px}
.consultation-promo .phone-consultation>.consultation-copy h2 br{display:none}
.consultation-promo .phone-consultation>.consultation-card{grid-column:3;grid-row:1/3;padding:26px}
.consultation-promo .phone-consultation>.consultation-card>.button{font-size:12px;padding-inline:12px;gap:8px}
.consultation-promo .phone-consultation>.consultation-benefits{grid-column:2;grid-row:2;gap:18px}
@media(hover:hover) and (pointer:fine){.phone-device{transition:transform 600ms cubic-bezier(.22,1,.36,1),box-shadow 300ms}.media-phone:hover .phone-device{transform:translateY(-4px);box-shadow:0 28px 52px #0000001b,0 4px 12px #00000012}}
@media(max-width:1199px){.control-section .control-panel.phone-control{padding:36px;gap:28px 32px;grid-template-columns:250px minmax(0,1fr)}.phone-control>.media-phone{--phone-width:230px}.phone-control .control-card{padding:18px}.phone-reviews-layout{grid-template-columns:minmax(0,1fr) 280px;gap:40px}.consultation-promo .consultation-panel.phone-consultation{grid-template-columns:250px minmax(0,1fr);padding:36px;gap:28px 36px}.consultation-promo .phone-consultation>.consultation-card{grid-column:1/-1;grid-row:3}.consultation-promo .phone-consultation>.consultation-card>.button{width:auto;font-size:14px;padding-inline:24px}.consultation-promo .phone-consultation>.consultation-copy h2{font-size:36px}}
@media(min-width:768px) and (max-width:1000px){.phone-control>.control-grid{grid-column:1/-1}.phone-control>.media-phone{grid-row:1}.phone-control .control-intro>.eyebrow{font-size:10px}.phone-control .control-intro>.quiet-caption{margin-top:20px}.phone-control .control-card p{font-size:14px}}
@media(max-width:767px){.media-phone{--phone-width:240px}.phone-device{border-radius:38px}.phone-screen{border-radius:28px}.media-phone::before{inset:15% -8% 8%}.control-section .control-panel.phone-control{grid-template-columns:minmax(0,1fr);padding:28px 20px;gap:28px}.phone-control>.control-intro{grid-column:1;grid-row:1}.phone-control>.media-phone{--phone-width:240px;grid-column:1;grid-row:2}.phone-control>.control-grid{grid-column:1;grid-row:3;grid-template-columns:1fr}.phone-control .control-intro h2{font-size:31px}.phone-control .control-card{padding:24px}.phone-control .control-card h3{font-size:23px}.phone-control .control-card p{font-size:16px}.phone-control .control-intro .eyebrow{font-size:10px}.phone-reviews-layout{grid-template-columns:minmax(0,1fr);gap:32px}.phone-reviews-layout>.media-phone{grid-column:1;grid-row:1}.phone-reviews-layout>.reviews-grid{grid-column:1;grid-row:2}.phone-reviews-layout .review-card{padding:24px}.consultation-promo .consultation-panel.phone-consultation{grid-template-columns:minmax(0,1fr);padding:28px 20px;gap:28px}.consultation-promo .phone-consultation>.consultation-copy{grid-column:1;grid-row:1}.consultation-promo .phone-consultation>.consultation-copy h2{font-size:34px}.phone-consultation>.media-phone{--phone-width:240px;grid-column:1;grid-row:2}.consultation-promo .phone-consultation>.consultation-card{grid-column:1;grid-row:3;padding:24px 20px}.consultation-promo .phone-consultation>.consultation-card>.button{width:100%;font-size:12px;padding-inline:12px}.consultation-promo .phone-consultation>.consultation-benefits{grid-column:1;grid-row:4}.phone-consultation .consultation-price{font-size:56px}}
@media(prefers-reduced-motion:reduce){.phone-device{transition:none!important;transform:none!important}}

@media(min-width:1000px) and (max-width:1199px){.consultation-promo .consultation-panel.phone-consultation{grid-template-columns:180px minmax(0,1fr) 280px;gap:24px;padding:32px}.phone-consultation>.media-phone{--phone-width:180px}.consultation-promo .phone-consultation>.consultation-copy h2{font-size:30px}.consultation-promo .phone-consultation>.consultation-copy>p:not(.eyebrow){font-size:15px;line-height:1.7}.consultation-promo .phone-consultation>.consultation-card{grid-column:3;grid-row:1/3;padding:22px}.consultation-promo .phone-consultation>.consultation-card>.button{width:100%;font-size:12px;padding-inline:12px}.consultation-promo .phone-consultation>.consultation-benefits strong{font-size:15px}.consultation-promo .phone-consultation>.consultation-benefits li span{font-size:12px}}

/* Child introduction: phone and text above, control tiles across the bottom. */
@media(min-width:768px){
 .control-section .control-panel.phone-control{grid-template-columns:240px minmax(0,1fr);padding:32px;gap:24px 48px}
 .phone-control>.media-phone{--phone-width:220px;grid-column:1;grid-row:1;align-self:start}
 .phone-control>.control-intro{grid-column:2;grid-row:1;align-self:center}
 .phone-control .control-intro>.eyebrow{margin-bottom:16px}
 .phone-control .control-intro>p:not(.eyebrow){margin-top:16px}
 .phone-control .control-intro>.button{margin-top:20px}
 .phone-control .control-intro>.quiet-caption{margin-top:20px}
 .phone-control>.control-grid{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
 .phone-control .control-card{padding:20px}
 .phone-control .control-card h3{font-size:18px}
 .phone-control .control-card h3 br{display:none}
 .phone-control .control-card p{font-size:13px;line-height:1.7}
}
@media(min-width:768px) and (max-width:999px){
 .control-section .control-panel.phone-control{gap:24px 32px;padding:28px;grid-template-columns:220px minmax(0,1fr)}
 .phone-control>.control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .phone-control .control-intro h2{font-size:31px}
 .phone-control .control-card p{font-size:14px}
}

@media(min-width:1000px) and (max-width:1199px){.phone-control .control-card{padding:16px}.phone-control .control-card h3{font-size:16px;line-height:1.4}}
