/* Real UI fragments — original screenshots, precisely framed, September 2026. */
.os-home .ef-card {margin:0;background:#fff;border:1px solid rgba(18,36,74,.09);border-radius:22px;overflow:hidden;box-shadow:0 20px 60px -24px rgba(17,34,72,.25);min-width:0;}
.os-home .ef-card figcaption {display:flex;align-items:center;gap:9px;justify-content:space-between;padding:19px 22px;font-size:14px;line-height:1.35;font-weight:650;color:#182342;}
.os-home .ef-card figcaption small {margin-left:auto;color:#78849a;font-size:11px;font-weight:500;}
.os-home .ef-dark {background:#111b38;border-color:#243050;}
.os-home .ef-dark figcaption {color:#d7e0f5;border-top:1px solid #25314b;font-weight:500;}
.os-home .ef-viewport {position:relative;overflow:hidden;width:100%;isolation:isolate;}
.os-home .ef-viewport img {position:absolute;max-width:none!important;height:auto!important;display:block;object-fit:initial!important;object-position:initial!important;transform:none!important;}
.os-home .ef-dot {width:7px;height:7px;flex:none;border-radius:50%;background:#fd0050;}
.os-home .ef-hero {height:510px;min-height:0;isolation:isolate;}
.os-home .ef-hero::before {content:"";position:absolute;inset:10% -4% -3%;background:radial-gradient(ellipse at 65% 50%,#e9eefb 0%,#f2f5fb 40%,transparent 70%);z-index:-1;}
.os-home .ef-hero > figure {position:absolute;transform:none;}
.os-home .ef-hero-chart {top:15px;right:0;width:94%;z-index:1;}
.os-home .ef-hero-chart figcaption {justify-content:flex-start;}
.os-home .ef-hero-calendar {left:0;top:265px;width:43%;padding:15px 12px 0;z-index:2;}
.os-home .ef-hero-calendar figcaption {padding:12px 9px 17px;font-size:12px;}
.os-home .ef-hero-target {right:0;top:265px;width:52%;padding:8px 8px 0;z-index:3;}
.os-home .ef-hero-target figcaption {padding:13px 12px;font-size:12px;}
.os-home .ef-core-logo {display:block;width:min(210px,80%);height:64px;object-fit:contain;margin:0 auto 18px;}
.os-home .os-core[data-step] {min-height:190px;}
.os-home .os-canvas.ef-motion .os-node[data-step] {transition:opacity .65s ease,transform .8s cubic-bezier(.2,.7,.2,1);}
.os-home .os-canvas.ef-motion .os-node[data-step]:not(.is-on) {opacity:0;transform:translateY(22px) scale(.97);}
.os-home .os-eco-lines line {transition:opacity .7s ease;}
.os-home .ef-scenes {margin-top:65px;display:grid;gap:100px;text-align:left;}
.os-home .ef-scene {display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:60px;}
.os-home .ef-scene-copy {max-width:360px;}
.os-home .ef-index {font-size:11px;font-weight:700;letter-spacing:.15em;color:#7c89a2;}
.os-home .ef-scene-copy h3 {font-size:clamp(27px,2.7vw,38px);letter-spacing:-.035em;line-height:1.12;margin:18px 0;color:#0b1638;}
.os-home .ef-scene-copy p {font-size:16px;line-height:1.75;color:#71809a;margin:0 0 20px;}
.os-home .ef-text-link {font-size:14px;font-weight:650;color:#122044;text-decoration:none;border-bottom:1px solid #d6deec;padding-bottom:5px;}
.os-home .ef-scene-art {position:relative;min-width:0;min-height:420px;border-radius:28px;background:radial-gradient(ellipse at center,#eaf0fb,rgba(246,248,252,.2) 72%);}
.os-home .ef-tape-grid {position:absolute;left:0;top:15px;width:90%;}
.os-home .ef-tape-detail {position:absolute;right:0;bottom:0;width:40%;border-radius:16px;box-shadow:0 25px 65px -15px #17234366;}
.os-home .ef-scene-reverse {grid-template-columns:1.3fr .7fr;}
.os-home .ef-scene-reverse .ef-scene-copy {grid-column:2;grid-row:1;justify-self:end;}
.os-home .ef-scene-reverse .ef-scene-art {grid-column:1;grid-row:1;}
.os-home .ef-pace-calendar {position:absolute;left:1%;top:0;width:57%;padding:22px;}
.os-home .ef-pace-metrics {position:absolute;right:0;bottom:10px;width:67%;padding:6px 12px 17px;}
.os-home .ef-mobile-widgets {display:grid;grid-template-columns:1fr 1.22fr 1fr;gap:24px;align-items:center;width:min(1100px,100%);margin:55px auto 45px;text-align:left;}
.os-home .ef-mobile-widgets .ef-card {padding:10px 10px 0;box-shadow:0 24px 60px -28px #12244866;}
.os-home .ef-mobile-widgets figcaption {font-size:13px;padding:17px 12px;}
.os-home .ef-mobile-target {transform:translateY(-15px);}
.os-home .os-booking-pms > .ef-viewport {max-width:300px;margin:16px auto 0;border-radius:12px;}
@media(min-width:1600px){.os-home .ef-hero {height:550px;}.os-home .ef-hero-calendar,.os-home .ef-hero-target {top:295px;}}
@media(max-width:1050px){.os-home .ef-hero {height:440px;}.os-home .ef-hero-calendar,.os-home .ef-hero-target {top:235px;}.os-home .ef-scene {gap:30px;}.os-home .ef-scene-art {min-height:355px;}}
@media(max-width:800px){
 .os-home .ef-hero {width:min(580px,100%);height:510px;min-height:0;margin:15px auto 0;}
 .os-home .ef-hero-calendar,.os-home .ef-hero-target {top:270px;}
 .os-home .ef-scenes {gap:65px;margin-top:40px;}
 .os-home .ef-scene,.os-home .ef-scene-reverse {grid-template-columns:1fr;gap:24px;}
 .os-home .ef-scene-copy,.os-home .ef-scene-reverse .ef-scene-copy {grid-column:1;grid-row:auto;max-width:520px;justify-self:start;}
 .os-home .ef-scene-reverse .ef-scene-art {grid-column:1;grid-row:auto;}
 .os-home .ef-scene-art {min-height:440px;}
 .os-home .ef-mobile-widgets {gap:14px;grid-template-columns:1fr 1fr;}
 .os-home .ef-mobile-target {transform:none;}
 .os-home .ef-mobile-forecast {grid-column:1/-1;width:55%;justify-self:center;}
}
@media(max-width:480px){
 .os-home .ef-hero {height:375px;}
 .os-home .ef-hero-chart {width:100%;top:0;}
 .os-home .ef-hero-chart figcaption {padding:15px;font-size:12px;}
 .os-home .ef-hero-calendar,.os-home .ef-hero-target {top:185px;}
 .os-home .ef-hero-calendar {width:44%;padding:10px 6px 0;}
 .os-home .ef-hero-target {width:52%;padding:5px 5px 0;}
 .os-home .ef-hero-calendar figcaption,.os-home .ef-hero-target figcaption {font-size:10px;padding:10px 5px;}
 .os-home .ef-card {border-radius:15px;}
 .os-home .ef-scene-art {min-height:310px;}
 .os-home .ef-tape-grid {width:100%;}
 .os-home .ef-tape-grid figcaption {font-size:12px;padding:14px;}
 .os-home .ef-tape-detail {width:49%;}
 .os-home .ef-pace-calendar {width:67%;padding:10px;}
 .os-home .ef-pace-metrics {width:80%;padding:0 8px 10px;bottom:0;}
 .os-home .ef-pace-metrics figcaption {font-size:12px;padding:12px 6px;}
 .os-home .ef-mobile-widgets {grid-template-columns:1fr;width:min(330px,100%);gap:22px;}
 .os-home .ef-mobile-forecast {grid-column:auto;width:100%;}
 .os-home .ef-mobile-widgets .ef-mobile-target {grid-row:1;}
}
@media(prefers-reduced-motion:reduce){.os-home .os-canvas.ef-motion .os-node[data-step]{transition:none;transform:none;opacity:1;}}
/* Keep legacy template container padding and figure widths out of these layouts. */
.os-home .ef-scenes,.os-home .ef-scene,.os-home .ef-scene-art,.os-home .ef-mobile-widgets {padding:0;}
.os-home .ef-scenes {width:100%;max-width:1200px;margin-left:auto;margin-right:auto;}
.os-home .ef-scene {width:100%;max-width:none;}
.os-home .ef-scene-art {width:100%;max-width:none;}
.os-home .ef-mobile-widgets > .ef-card {width:100%;}
.os-home .os-team > .os-actions {justify-content:center;}
@media(max-width:800px) and (min-width:481px){.os-home .ef-mobile-widgets > .ef-mobile-forecast {width:55%;}}
