/* A shared garden scene behind readable, translucent content panels. */
body{background:#eee6d9;isolation:isolate}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(#f7f3ed26,#f7f3ed65),url('assets/campaign/garden-gathering-full.webp') center/cover no-repeat}
header{background:rgba(247,243,237,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid #fff9}
.announcement{background:rgba(40,52,70,.95)}
main{background:transparent}
.ensemble-hero{position:relative;isolation:isolate;display:grid;grid-template-rows:105px minmax(0,1fr)100px;height:calc(100svh - 140px);min-height:590px;max-height:1100px;overflow:hidden;backdrop-filter:blur(36px);-webkit-backdrop-filter:blur(36px);background:linear-gradient(180deg,#f7f3edeb 0%,#f7f3ed42 35%,#f7f3ed42 75%,#f7f3edf2 100%)}
.ensemble-masthead{position:relative;z-index:2;text-align:center;align-self:center;padding:8px 15px 0;pointer-events:none}
.ensemble-kicker{font-size:9px;letter-spacing:3px;color:#65574d}
.ensemble-masthead h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(62px,6.7vw,108px);font-weight:400;letter-spacing:-5px;line-height:.94;margin:6px 0 0;color:#283446;text-shadow:0 2px 18px #fff9}
.ensemble-scene{min-height:0;position:relative;z-index:1;display:flex;justify-content:center;align-items:center;padding:10px 3% 0}
.ensemble-photo{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 30px #59482e22);border:0;border-radius:0}
.ensemble-welcome{position:relative;z-index:2;text-align:center;align-self:center;padding:8px 20px 12px}
.ensemble-welcome>p{font-family:Georgia,'Times New Roman',serif;font-size:21px;line-height:1.3;color:#364339;margin:0 0 12px}
.ensemble-actions{display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap}
.ensemble-actions .btn{min-height:44px;padding:10px 23px;font-size:14px;display:inline-flex;gap:24px;align-items:center}
.ensemble-scroll,.ensemble-enlarge{background:transparent;border:0;border-bottom:1px solid #95826370;color:#283446;padding:10px 0;min-height:44px;font-size:13px;border-radius:0;display:inline-flex;gap:12px;align-items:center;cursor:pointer}
.ensemble-enlarge{font-size:11px;border-color:transparent;color:#5b514c}
.ensemble-scroll:hover,.ensemble-enlarge:hover{color:#a34560;border-color:currentColor}
.ensemble-pages{width:calc(100% - 6vw);max-width:1600px;margin:26px auto 54px;display:flex;flex-direction:column;gap:28px;scroll-margin-top:115px}
.ensemble-pages>.section{background:rgba(250,247,241,.90);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid #fff9;border-radius:14px;box-shadow:0 12px 36px #2834460c;overflow:hidden;padding-left:4%;padding-right:4%}
.ensemble-pages>.mood-studio{background:rgba(222,232,236,.91)}
.ensemble-pages>.mood-studio[data-mood="1"]{background:rgba(234,237,222,.91)}
.ensemble-pages>.mood-studio[data-mood="2"],.ensemble-pages>.dress-note{background:rgba(243,226,231,.91)}
.ensemble-pages>.wonder-ribbon{background:rgba(40,52,70,.91);border-radius:8px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
main>.page,main>.styling-studio,main>.studio-inquiry{width:calc(100% - 6vw);max-width:1500px;min-height:55vh;margin:28px auto 52px;background:rgba(250,247,241,.94);border:1px solid #fff9;border-radius:14px;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:0 14px 50px #28344612}
.collection{background:#f2e0e4cc}.collection:nth-child(2){background:#e4eeebcc}
.card-photo{background:#e9e3de99}
footer{background:rgba(35,47,62,.96);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-top-color:#b6a17a99}
.ensemble-hero .wonder-particles{z-index:2;opacity:.75}
.ensemble-actions :focus-visible{outline:2px solid #283446;outline-offset:5px}
@media(min-width:1600px){.ensemble-hero{grid-template-rows:120px minmax(0,1fr)110px}.ensemble-scene{padding-left:4%;padding-right:4%}}
@media(max-width:900px){.ensemble-hero{height:calc(100svh - 126px);min-height:530px;grid-template-rows:100px minmax(0,1fr)115px}.ensemble-masthead h1{font-size:78px}.ensemble-actions{gap:18px}.ensemble-scene{padding:0 2%}}
@media(max-width:720px){.ensemble-hero{height:calc(100svh - 126px);min-height:465px;max-height:770px;grid-template-rows:110px minmax(180px,1fr)155px;background:linear-gradient(#f7f3ede8,#f7f3ed59 35%,#f7f3ed70 60%,#f7f3edf7)}.ensemble-masthead h1{font-size:clamp(61px,16vw,100px);letter-spacing:-3px}.ensemble-kicker{font-size:8px;letter-spacing:2.5px}.ensemble-scene{padding:0}.ensemble-photo{filter:drop-shadow(0 5px 15px #59482e22)}.ensemble-welcome{padding:16px 20px}.ensemble-welcome>p{font-size:19px;line-height:1.5;margin-bottom:12px}.ensemble-actions{gap:2px 20px}.ensemble-actions .btn{font-size:13px;padding:11px 18px}.ensemble-scroll{font-size:12px}.ensemble-enlarge{flex-basis:100%;justify-content:center;padding:4px;min-height:32px}.ensemble-pages{width:calc(100% - 24px);gap:18px;margin-top:18px;scroll-margin-top:92px}.ensemble-pages>.section{padding:35px 5%;border-radius:12px}.ensemble-pages>.wonder-ribbon{padding:14px 10px;font-size:7px;gap:10px}.ensemble-pages .new-rail{grid-auto-columns:78%}.ensemble-pages .chapter-heading h2{font-size:35px}.ensemble-pages .dress-note{padding-left:7%;padding-right:7%}main>.page,main>.styling-studio,main>.studio-inquiry{width:calc(100% - 20px);margin:16px auto 35px;padding-left:5%;padding-right:5%;border-radius:12px}.ensemble-pages>.section,main>.page,main>.styling-studio,main>.studio-inquiry{backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}.is-home header .logo{font-size:27px}}
@media(prefers-reduced-transparency:reduce){main>.page,main>.styling-studio,main>.studio-inquiry,.ensemble-pages>.section,header{background:#f7f3ed;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.ensemble-hero *{animation:none!important;transition:none!important}}

main>.styling-studio{padding-bottom:30px}main>.studio-inquiry{min-height:0;padding:24px 4%;margin-top:0}
