/* OMERVIA v40 — post-mansion premium polish inspired by approved visual direction.
   Scope is intentionally limited to post-story sections. Hero + mansion story untouched. */
:root{--v40-emerald:#55d9b6;--v40-emerald-soft:#82e7c9;--v40-ink:#071919;--v40-cream:#f5efe4;--v40-amber:#f2a84b}
#ready,#proof,#trust,#portfolio,#trial,.v31-closing{position:relative;isolation:isolate}
#ready::after,#portfolio::after,#trial::after{content:"";position:absolute;pointer-events:none;inset:auto;z-index:-1;border-radius:50%;filter:blur(2px);opacity:.5}
#ready::after{width:430px;height:430px;right:-180px;top:80px;background:radial-gradient(circle,rgba(85,217,182,.10),transparent 68%)}
#portfolio::after{width:360px;height:360px;left:-150px;bottom:-130px;background:radial-gradient(circle,rgba(45,125,105,.08),transparent 68%)}
#trial::after{width:420px;height:420px;right:-180px;top:-120px;background:radial-gradient(circle,rgba(242,168,75,.08),transparent 68%)}

/* HOW — turn flat four columns into a real product flow */
#ready{background:
  linear-gradient(rgba(16,63,53,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(16,63,53,.025) 1px,transparent 1px),#f5efe4;background-size:72px 72px}
#ready .shell{position:relative}
#ready .v31-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);column-gap:clamp(50px,8vw,130px);max-width:none;align-items:end;margin-bottom:64px}
#ready .v31-heading .eyebrow{grid-column:1/-1}
#ready .v31-heading h2{max-width:11ch}
#ready .v31-heading>p:last-child{margin:0 0 8px;max-width:46ch}
#ready .v31-flow{border:0;gap:14px;grid-template-columns:1fr 28px 1fr 28px 1fr 28px 1fr;align-items:center;position:relative}
#ready .v31-flow::before{content:"";position:absolute;left:4%;right:4%;top:50%;height:1px;background:linear-gradient(90deg,rgba(58,169,142,.08),rgba(58,169,142,.45),rgba(58,169,142,.08));transform:scaleX(var(--v40-flow,0));transform-origin:left;transition:transform .2s linear;z-index:0}
#ready .v31-flow article{position:relative;z-index:1;min-height:330px;padding:26px 24px 24px;border:1px solid rgba(7,25,25,.12);border-radius:22px;background:rgba(255,252,246,.74);box-shadow:0 18px 48px rgba(8,39,34,.05);backdrop-filter:blur(8px);overflow:hidden}
#ready .v31-flow article::before{content:"";display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(45,125,105,.25);border-radius:13px;margin:24px 0 18px;color:#286a5d;font:600 18px/1 ui-monospace,monospace;background:rgba(85,217,182,.06)}
#ready .v31-flow article:nth-of-type(1)::before{content:"⌂"}#ready .v31-flow article:nth-of-type(2)::before{content:"◌"}#ready .v31-flow article:nth-of-type(3)::before{content:"◎"}#ready .v31-flow article:nth-of-type(4)::before{content:"▧"}
#ready .v31-flow article::after{content:"";position:absolute;height:3px;left:22px;right:22px;bottom:0;border-radius:6px;background:linear-gradient(90deg,#55d9b6,transparent);transform:scaleX(var(--v40-cardline,0));transform-origin:left}
#ready .v31-flow article:nth-of-type(2){transform:translateY(18px)}#ready .v31-flow article:nth-of-type(3){transform:translateY(-12px)}#ready .v31-flow article:nth-of-type(4){transform:translateY(10px)}
#ready .v31-flow article>span{margin-top:0}#ready .v31-flow>i{position:relative;z-index:2;width:28px;height:28px;border-radius:50%;background:#f5efe4;border:1px solid rgba(58,169,142,.18);font-size:15px}
#ready .v31-boundary{margin-top:38px}

/* PROOF — richer asymmetry, card depth, photographic edge */
#proof{overflow:hidden;background:linear-gradient(115deg,#0a2422 0%,#09211f 62%,#071b1a 100%)}
#proof::after{content:"";position:absolute;right:-1px;top:0;width:min(18vw,290px);height:100%;background:linear-gradient(90deg,#0a2422 0%,rgba(10,36,34,.18) 35%,rgba(10,36,34,.02) 100%),url('/assets/story/v43/living-angle-1440.webp') center/cover no-repeat;opacity:.35;mix-blend-mode:screen;pointer-events:none}
#proof .v31-split{position:relative;z-index:1;grid-template-columns:.72fr 1.28fr}
#proof .v31-proof-cards{gap:12px;border:0}
#proof .v31-proof-cards article{border:1px solid rgba(130,231,201,.16);border-radius:18px;min-height:215px;background:linear-gradient(145deg,rgba(13,48,44,.90),rgba(6,30,28,.74));box-shadow:0 18px 45px rgba(0,0,0,.13);position:relative;overflow:hidden}
#proof .v31-proof-cards article::before{content:"";position:absolute;right:18px;top:18px;width:34px;height:34px;border-radius:11px;border:1px solid rgba(130,231,201,.15);background:rgba(130,231,201,.04)}
#proof .v31-proof-cards article::after{content:"";position:absolute;left:28px;bottom:0;width:46px;height:2px;background:#55d9b6;transform:scaleX(var(--v40-proof-line,0));transform-origin:left}
#proof .v31-proof-cards article:nth-child(2),#proof .v31-proof-cards article:nth-child(4){transform:translateY(16px)}
#proof .v31-proof-cards h3{margin-top:54px}

/* TRUST — individual premium cards instead of one flat table */
#trust{background:radial-gradient(circle at 50% -10%,rgba(85,217,182,.08),transparent 32%),#071d1c}
#trust .v31-heading{max-width:none;display:grid;grid-template-columns:1.1fr .9fr;column-gap:90px;align-items:end}
#trust .v31-heading h2{max-width:14ch}
#trust .v31-trust-grid{border:0;gap:12px}
#trust .v31-trust-grid article{border:1px solid rgba(130,231,201,.14);border-radius:18px;min-height:300px;background:linear-gradient(160deg,rgba(10,42,39,.72),rgba(5,25,24,.55));box-shadow:inset 0 1px rgba(255,255,255,.02);position:relative;overflow:hidden}
#trust .v31-trust-grid article::after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,rgba(85,217,182,.045),transparent 36%);opacity:var(--v40-trust-glow,0);pointer-events:none}
#trust .v31-trust-grid h3{margin-top:46px}
#trust .v31-trust-links{margin-top:34px}

/* PORTFOLIO — three meaningful journey cards with actual property thumbnails */
#portfolio{background:linear-gradient(180deg,#f5efe4,#f1eadf)}
#portfolio .v31-portfolio-inner{grid-template-columns:.82fr 1.18fr;gap:64px}
#portfolio .v31-land-expand{grid-template-columns:1fr 34px 1fr 34px 1fr;gap:12px;align-items:center}
#portfolio .v31-land-expand span{position:relative;display:flex;align-items:flex-end;justify-content:flex-start;text-align:left;min-height:240px;padding:150px 18px 18px;border-radius:22px;overflow:hidden;background:#f8f2e8;border-color:rgba(7,25,25,.13);box-shadow:0 18px 50px rgba(7,25,25,.05)}
#portfolio .v31-land-expand span::before{content:"";position:absolute;left:12px;right:12px;top:12px;height:126px;border-radius:15px;background-size:cover;background-position:center;filter:saturate(.88) contrast(1.02);transform:scale(var(--v40-thumb-scale,1.04));transition:transform .8s cubic-bezier(.2,.72,.2,1)}
#portfolio .v31-land-expand span:nth-of-type(1)::before{background-image:url('/assets/story/v43/exterior-far-1440.webp')}
#portfolio .v31-land-expand span:nth-of-type(2)::before{background-image:url('/assets/story/v43/pool-reveal-1440.webp')}
#portfolio .v31-land-expand span:nth-of-type(3)::before{background-image:url('/assets/story/v43/living-front-1440.webp')}
#portfolio .v31-land-expand span::after{position:absolute;left:18px;top:151px;font:700 9px/1 ui-monospace,monospace;letter-spacing:.1em;color:#8a4b12}
#portfolio .v31-land-expand span:nth-of-type(1)::after{content:"01"}#portfolio .v31-land-expand span:nth-of-type(2)::after{content:"02"}#portfolio .v31-land-expand span:nth-of-type(3)::after{content:"03"}
#portfolio .v31-land-expand i{width:34px;height:34px;border:1px solid rgba(58,169,142,.20);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.35)}

/* TRIAL — stronger conversion object */
#trial{background:linear-gradient(135deg,#f1eadf 0%,#f6f0e6 100%)}
#trial .trial-layout{align-items:center;gap:clamp(52px,7vw,108px)}
#trial .trial-copy{position:relative}
#trial .trial-copy::after{content:"SAME PROPERTY · SMARTER STAYS";display:block;margin-top:34px;color:rgba(40,106,93,.42);font:500 11px/1.4 ui-monospace,monospace;letter-spacing:.13em;transform:rotate(-2deg);transform-origin:left}
#trial .trial-form{border:1px solid rgba(7,25,25,.09);border-radius:26px!important;box-shadow:0 30px 90px rgba(7,25,25,.10),inset 0 1px rgba(255,255,255,.9);background:rgba(255,255,255,.90);backdrop-filter:blur(12px)}
#trial .trial-form input,#trial .trial-form select{background:rgba(248,250,248,.74);transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}
#trial .trial-form input:focus,#trial .trial-form select:focus{border-color:rgba(58,169,142,.55)!important;box-shadow:0 0 0 4px rgba(85,217,182,.09)!important;background:#fff}
#trial .form-submit{box-shadow:0 12px 30px rgba(242,168,75,.20)}

/* Closing — more intentional finish */
.v31-closing{background:radial-gradient(circle at 78% 60%,rgba(85,217,182,.10),transparent 32%),linear-gradient(180deg,#061616,#03100f)}
.v31-closing::after{content:"BETTER STAYS AHEAD";position:absolute;right:7vw;bottom:38px;color:rgba(130,231,201,.58);font:700 9px/1.5 ui-monospace,monospace;letter-spacing:.16em;writing-mode:vertical-rl}

@media (prefers-reduced-motion:no-preference){
  html.motion-v40 #ready .v31-flow article{transform:translate3d(0,var(--v40-card-y,0),0) rotateX(var(--v40-card-rx,0deg));transition:transform .22s linear,box-shadow .35s ease,border-color .35s ease}
  html.motion-v40 #ready .v31-flow article:nth-of-type(1){--v40-base-y:0px}html.motion-v40 #ready .v31-flow article:nth-of-type(2){--v40-base-y:18px}html.motion-v40 #ready .v31-flow article:nth-of-type(3){--v40-base-y:-12px}html.motion-v40 #ready .v31-flow article:nth-of-type(4){--v40-base-y:10px}
  html.motion-v40 #portfolio .v31-land-expand span{transition:transform .6s cubic-bezier(.2,.72,.2,1),box-shadow .4s ease}
  html.motion-v40 #portfolio .v31-land-expand span:hover{transform:translateY(-7px);box-shadow:0 25px 70px rgba(7,25,25,.10)}
  html.motion-v40 #portfolio .v31-land-expand span:hover::before{transform:scale(1)}
}

@media(max-width:1100px){#ready .v31-heading{grid-template-columns:1fr;gap:22px}#ready .v31-heading>p:last-child{max-width:62ch}#ready .v31-flow{grid-template-columns:1fr 1fr;gap:14px}#ready .v31-flow>i{display:none}#proof::after{opacity:.18;width:24vw}#portfolio .v31-portfolio-inner{grid-template-columns:1fr;gap:46px}}
@media(max-width:900px){#ready .v31-flow article,#ready .v31-flow article:nth-of-type(2),#ready .v31-flow article:nth-of-type(3),#ready .v31-flow article:nth-of-type(4){transform:none;min-height:280px}#proof::after{display:none}#trust .v31-heading{grid-template-columns:1fr}#portfolio .v31-land-expand{grid-template-columns:1fr;max-width:none}#portfolio .v31-land-expand i{transform:rotate(90deg);justify-self:center}#portfolio .v31-land-expand span{min-height:230px}#trial .trial-copy::after{display:none}}
@media(max-width:600px){#ready .v31-flow{grid-template-columns:1fr}#ready .v31-flow article{min-height:auto;padding:24px 20px 26px}#ready .v31-flow article::before{margin-top:18px}#trust .v31-trust-grid{gap:10px}#portfolio .v31-land-expand span{padding-top:142px}.v31-closing::after{display:none}}
@media(prefers-reduced-motion:reduce){#ready .v31-flow::before,#ready .v31-flow article::after,#proof .v31-proof-cards article::after{transform:scaleX(1)!important}.v31-closing::after{display:none}}
/* OMERVIA v50 — low-height desktop resilience + final canonical-domain visual gate.
   Scope: hero only. Mansion story and post-story remain untouched. */
@media (min-width:781px) and (max-height:560px){
  .clarity-portal-v22 .clarity-shell-v22{
    padding:18px 0 34px!important;
    grid-template-rows:auto minmax(0,1fr)!important;
  }
  .clarity-portal-v22 .hero-v22-brand{
    gap:9px!important;
    font-size:.68rem!important;
    letter-spacing:.19em!important;
  }
  .clarity-portal-v22 .hero-v22-brand .brand-mark{
    width:22px!important;height:22px!important;flex-basis:22px!important;
  }
  .clarity-portal-v22 .hero-v22-grid{
    min-height:0!important;
    align-items:center!important;
    gap:0!important;
  }
  .clarity-portal-v22 .hero-v22-copy{
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .clarity-portal-v22 .hero-v22-kicker{
    margin:0 0 6px!important;
    font-size:.47rem!important;
    line-height:1.25!important;
    letter-spacing:.13em!important;
  }
  .clarity-portal-v22 .hero-v22-title{
    max-width:11.5ch!important;
    font-size:clamp(2.35rem,8.8vh,3.05rem)!important;
    line-height:.89!important;
  }
  .clarity-portal-v22 .hero-v22-lede{
    max-width:48ch!important;
    margin-top:8px!important;
    font-size:.72rem!important;
    line-height:1.32!important;
  }
  .clarity-portal-v22 .hero-v22-clarifier{display:none!important}
  .clarity-portal-v22 .hero-v22-benefits{display:none!important}
  .clarity-portal-v22 .hero-v22-product{
    min-height:310px!important;
    height:min(72vh,330px)!important;
    margin-left:-22px!important;
  }
  .clarity-portal-v24 .hero-device-photo{height:100%!important;bottom:-2%!important}
  .clarity-portal-v22 .hero-context-card{top:3%!important;transform:scale(.86);transform-origin:100% 0}
  .clarity-portal-v22 .hero-engine-node{top:42%!important;transform:scale(.86);transform-origin:100% 50%}
  .clarity-portal-v22 .hero-host-card{bottom:3%!important;transform:scale(.86);transform-origin:100% 100%}
  .clarity-portal-v22 .clarity-scroll{
    bottom:4px!important;
    min-height:32px!important;
    font-size:.45rem!important;
    gap:8px!important;
  }
  .clarity-portal-v22 .clarity-scroll i{width:14px!important;height:24px!important}
}

@media (min-width:781px) and (max-height:460px){
  .clarity-portal-v22 .clarity-shell-v22{padding:12px 0 26px!important}
  .clarity-portal-v22 .hero-v22-brand{font-size:.61rem!important}
  .clarity-portal-v22 .hero-v22-brand .brand-mark{width:19px!important;height:19px!important;flex-basis:19px!important}
  .clarity-portal-v22 .hero-v22-kicker{font-size:.42rem!important;margin-bottom:4px!important}
  .clarity-portal-v22 .hero-v22-title{font-size:clamp(2.05rem,8.5vh,2.55rem)!important;line-height:.88!important}
  .clarity-portal-v22 .hero-v22-lede{margin-top:6px!important;font-size:.66rem!important;line-height:1.26!important}
  .clarity-portal-v22 .hero-v22-product{min-height:270px!important;height:min(70vh,290px)!important}
  .clarity-portal-v22 .hero-context-list{display:none!important}
  .clarity-portal-v22 .hero-context-card,
  .clarity-portal-v22 .hero-engine-node,
  .clarity-portal-v22 .hero-host-card{transform:scale(.78)}
  .clarity-portal-v22 .clarity-scroll span{display:none!important}
}

@media (prefers-reduced-motion:reduce) and (min-width:781px) and (max-height:560px){
  .clarity-portal-v22 .hero-context-card,
  .clarity-portal-v22 .hero-engine-node,
  .clarity-portal-v22 .hero-host-card{transition:none!important}
}
