/* A separate courtyard variant. No existing home design is replaced. */
.courtyard-home{display:none}
html[data-experience=courtyard] .courtyard-home{display:block}
html[data-experience=courtyard] :is(.warm-opening,.warm-front,.warm-person){display:none}
.courtyard-story{position:relative;background:#244337;width:var(--courtyard-width,100%);margin:0 calc((100% - var(--courtyard-width,100%))/2);color:#fff9ec;height:auto}
.courtyard-story.has-motion{height:300svh}
.courtyard-stage{position:relative;height:100svh;min-height:680px;max-height:1080px;overflow:hidden;isolation:isolate;background:#244337}
.courtyard-story.has-motion .courtyard-stage{position:sticky;top:0}
.courtyard-scene{position:absolute;inset:0;overflow:hidden;contain:strict}
.courtyard-poster,.courtyard-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.courtyard-canvas{opacity:0;pointer-events:none}
.courtyard-stage.is-ready .courtyard-canvas{opacity:1}
.courtyard-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#142e24f5, #142e2477 21%,transparent 48%),linear-gradient(180deg,#1433237a,transparent 20%)}
.courtyard-top{position:absolute;top:28px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:start;gap:20px;z-index:2}
.courtyard-label{font-size:20px;font-weight:700;letter-spacing:.22em;text-shadow:0 2px 15px #203c22}
.courtyard-label small{display:block;font:8px/2 Arial,sans-serif;letter-spacing:.28em;margin-top:5px;color:#fff6df}
.courtyard-top>div{display:flex;gap:8px;align-items:center}
.courtyard-skip,.courtyard-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border:1px solid #e5d6ba88;border-radius:24px;background:#213e32ed;color:#fff9ec;font:12px/1.4 Arial,sans-serif;text-decoration:none;cursor:pointer}
.courtyard-toggle[hidden],.courtyard-status[hidden]{display:none}
.courtyard-toggle:disabled{cursor:default}
.courtyard-copy{position:absolute;left:5%;bottom:146px;max-width:500px;width:43%;padding:22px 24px;margin-left:-24px;border-radius:14px;background:linear-gradient(90deg,#15372ded,#15372dcb 80%,#15372d00)}
.courtyard-copy .eyebrow{font-size:10px;color:#e4c89a;letter-spacing:.17em}
.courtyard-copy :is(h1,.home-title){font-family:Georgia,serif;font-size:clamp(36px,3.6vw,58px)!important;line-height:1.03!important;font-weight:400;color:#fff9ec;margin:14px 0 16px;letter-spacing:-1.2px}
.courtyard-copy em{font-weight:400;color:#e7c99a}
.courtyard-copy>p{font-size:14px;line-height:1.65;max-width:365px;color:#f2e8d4;margin:0}
.courtyard-person{position:absolute;right:5%;bottom:170px;display:flex;gap:12px;align-items:center;background:#fff8ed;color:#254438;padding:14px 18px;border-radius:9px;text-decoration:none;box-shadow:0 8px 26px #172b2240}
.courtyard-person img{width:48px;height:60px;object-fit:cover;border-radius:3px}.courtyard-person small{font-size:8px;letter-spacing:.16em;color:#876a44}.courtyard-person strong{display:block;font:23px/1.4 Georgia,serif}.courtyard-person>span>span{display:block;font-size:9px;color:#665c50}
.courtyard-footer{position:absolute;left:5%;right:5%;bottom:34px}
.courtyard-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:relative;gap:12px;max-width:900px;border-bottom:1px solid #fff4df55}
.courtyard-steps button{border:0;background:none;min-width:0;min-height:60px;padding:10px 0 16px;text-align:left;cursor:pointer;color:#d5ddcf;font:14px Arial,sans-serif}
.courtyard-steps small{display:block;font-size:8px;letter-spacing:.15em;color:#d5b789;margin-bottom:8px}.courtyard-steps button[aria-pressed=true]{color:#fff2c9;font-weight:700}
.courtyard-steps i{position:absolute;height:2px;bottom:-1px;left:0;width:100%;background:#f1d59d;transform:scaleX(.02);transform-origin:left}
.courtyard-footer>p{display:flex;gap:18px;justify-content:space-between;align-items:center;font-size:10px;color:#e1e4d3;margin:16px 0 0}.courtyard-footer>p small{font-size:9px;color:#c2cbbb}
.courtyard-status{position:absolute;top:105px;left:5%;font-size:11px;padding:8px 13px;background:#254438e8;border-radius:20px;max-width:85%;color:#fff9ec;z-index:2}
.courtyard-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:30px 0;border-bottom:1px solid #ddcdb5;gap:30px}.courtyard-actions a{color:#26493d;text-decoration:none;padding:10px 20px 10px 0;border-right:1px solid #ddcdb5}.courtyard-actions a:last-child{border:0}.courtyard-actions small{font-size:9px;letter-spacing:.15em;color:#886a47}.courtyard-actions strong{display:flex;justify-content:space-between;gap:10px;font:clamp(20px,2vw,28px)/1.3 Georgia,serif;margin-top:8px}.courtyard-actions strong span{color:#ad462e}
.courtyard-home :is(a,button):focus-visible{outline:3px solid #da9c43;outline-offset:4px}
@media(max-width:760px){
 .courtyard-story.has-motion{height:260svh}.courtyard-stage{height:100svh;min-height:720px;max-height:none}
 .courtyard-scene{top:70px;bottom:auto;height:43svh;min-height:280px;max-height:410px}
 .courtyard-shade{background:linear-gradient(180deg,#244337 0,#244337 60px,transparent 90px,transparent 38%,#24433700 50%,#244337 65%)}
 .courtyard-top{top:16px;left:5%;right:5%;align-items:center;gap:8px}.courtyard-label{font-size:14px;letter-spacing:.17em}.courtyard-label small{font-size:6px;letter-spacing:.16em}
 .courtyard-top>div{gap:5px}.courtyard-skip,.courtyard-toggle{font-size:9px;min-height:36px;padding:8px 10px}.courtyard-skip{background:#f7ecd6;color:#28483e}
 .courtyard-copy{top:calc(70px + clamp(280px,43svh,410px));left:5%;bottom:auto;width:90%;max-width:none;background:#244337;padding:20px 0 8px;margin:0;border-radius:0}
 .courtyard-copy :is(h1,.home-title){font-size:32px!important;margin:10px 0;letter-spacing:-.5px;line-height:1.07!important}.courtyard-copy .eyebrow{font-size:8px}.courtyard-copy>p{font-size:12px;line-height:1.6;max-width:340px}
 .courtyard-person{left:5%;right:5%;bottom:140px;box-shadow:none;background:transparent;border-top:1px solid #e5d6ba44;border-radius:0;padding:12px 0 0;color:#f9efda;gap:10px}.courtyard-person img{width:32px;height:40px}.courtyard-person strong{font-size:18px}.courtyard-person small{font-size:7px;color:#e0c59d}.courtyard-person>span>span{font-size:8px;color:#e1ddcf}
 .courtyard-footer{bottom:32px;left:5%;right:5%}.courtyard-steps{gap:4px}.courtyard-steps button{font-size:11px;min-height:50px;padding:7px 0 13px}.courtyard-steps small{font-size:7px;margin-bottom:6px}.courtyard-footer>p{display:block;font-size:9px;margin-top:12px}.courtyard-footer>p small{display:block;font-size:8px;margin-top:5px}
 .courtyard-status{top:82px;font-size:10px}.courtyard-actions{grid-template-columns:1fr;gap:0;padding:20px 0}.courtyard-actions a{border-right:0;border-bottom:1px solid #ddcdb5;padding:18px 0}.courtyard-actions strong{font-size:25px}.courtyard-home .cinema-personal{padding-top:32px}
}
@media(max-width:760px) and (max-height:780px){.courtyard-scene{height:280px}.courtyard-copy{top:350px}.courtyard-copy :is(h1,.home-title){font-size:29px!important}.courtyard-copy>p{font-size:11px}.courtyard-story.has-motion .courtyard-stage{top:calc(100svh - 720px)}}
@media(max-width:360px){.courtyard-label{font-size:11px}.courtyard-label small{font-size:5px}.courtyard-skip,.courtyard-toggle{padding:7px 8px;font-size:8px}.courtyard-steps button{font-size:10px}}
@media(prefers-reduced-motion:reduce){.courtyard-story.has-motion{height:auto}.courtyard-story.has-motion .courtyard-stage{position:relative;top:auto}.courtyard-canvas{display:none}}

html[data-experience=courtyard] .courtyard-copy em{color:#e7c99a}

/* Short stage labels keep all five mobile controls separate and tappable. */
.courtyard-step-short{display:none}
@media(max-width:760px){.courtyard-step-full{display:none}.courtyard-step-short{display:block}.courtyard-steps button{font-size:10px}}

/* During landscaping the story card moves away from the lawn. */
@media(min-width:761px){.courtyard-stage:is([data-phase="3"],[data-phase="4"]) .courtyard-copy{top:116px;bottom:auto;max-width:420px}.courtyard-stage:is([data-phase="3"],[data-phase="4"]) .courtyard-shade{background:linear-gradient(0deg,#142e24f5,#142e2477 14%,transparent 30%),linear-gradient(180deg,#1433237a,transparent 20%)}}
.courtyard-steps button:disabled{cursor:default}

/* Keep the paving work unobscured on desktop. */
@media(min-width:761px){.courtyard-stage[data-phase="3"] .courtyard-person{top:116px;bottom:auto}.courtyard-stage[data-phase="3"] .courtyard-shade{background:linear-gradient(0deg,#142e24ef, #142e2455 10%,transparent 20%),linear-gradient(180deg,#1433237a,transparent 18%)}}

/* Keep the path unobstructed while the craftsman works. */
@media(min-width:761px){.courtyard-stage[data-phase='3'] .courtyard-footer{right:auto;width:43%;max-width:540px}.courtyard-stage[data-phase='3'] .courtyard-footer>p{display:block}.courtyard-stage[data-phase='3'] .courtyard-footer>p small{display:block;margin-top:5px}.courtyard-stage[data-phase='3'] .courtyard-steps{gap:8px}.courtyard-stage[data-phase='3'] .courtyard-steps button{font-size:12px}}
