/* The portfolio control stays clear of every concept header and always opens into the viewport. */
.concept-switcher,.theme-coffee .concept-switcher,.theme-flowers .concept-switcher,.theme-bistro .concept-switcher,.theme-bakery .concept-switcher,.theme-studio .concept-switcher,.theme-karaoke .concept-switcher,.theme-workshop .concept-switcher{right:18px;bottom:18px;left:auto;top:auto;transform:none}
.theme-flowers .concept-switcher-toggle{height:50px;padding:0 16px;writing-mode:horizontal-tb}
.concept-menu{right:0;bottom:58px;max-height:calc(100svh - 96px);overflow-y:auto;overscroll-behavior:contain}

/* Editorial taste selector: static layout, no pointer tracking or grid texture. */
.coffee-orbit{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);min-height:88svh;color:#f7f3ed;background:#342b25}.orbit-copy{display:flex;padding:7vw 4vw 6vw;flex-direction:column;justify-content:space-between;border-right:1px solid #ffffff26}.orbit-copy>span,.orbit-stage>p{font:700 9px "Manrope",sans-serif;letter-spacing:.14em;text-transform:uppercase}.orbit-copy h2{max-width:720px;font:500 clamp(64px,7.6vw,122px)/.84 "Bodoni Moda",serif;letter-spacing:-.055em}.orbit-copy p{max-width:430px;color:#d7dbea;font-size:15px;line-height:1.65}.orbit-stage{display:flex;min-height:650px;padding:4vw;overflow:hidden;flex-direction:column;justify-content:center;background:radial-gradient(circle at 78% 18%,#294bcd 0,transparent 35%),radial-gradient(circle at 22% 86%,#d8b17a44 0,transparent 34%),#342b25}.orbit-stage>p{margin-bottom:24px;color:#aeb7dc}.orbit-stage button{display:grid;width:100%;grid-template-columns:48px minmax(0,1fr) auto;gap:20px;align-items:center;padding:22px 0;border:0;border-top:1px solid #ffffff38;color:#f7f3ed;background:transparent;text-align:left;cursor:pointer;transition:padding .22s,color .22s,border-color .22s}.orbit-stage button:last-child{border-bottom:1px solid #ffffff38}.orbit-stage button i{color:#7f8dbb;font:700 9px "Manrope",sans-serif}.orbit-stage button span{font:500 clamp(34px,4.5vw,72px)/.9 "Bodoni Moda",serif;letter-spacing:-.04em}.orbit-stage button small{color:#aeb7dc;font:600 9px "Manrope",sans-serif;letter-spacing:.08em;text-transform:uppercase}.orbit-stage button:hover,.orbit-stage button.active{padding-left:18px;color:#d8b17a;border-color:#d8b17a}.orbit-stage button.active small{color:#f7f3ed}

/* Ballena-like editorial filmstrip for flowers. */
.theme-flowers .f-film{display:flex;gap:0;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.theme-flowers .f-film::-webkit-scrollbar{display:none}.theme-flowers .f-film figure{flex:0 0 min(72vw,940px);height:75svh;scroll-snap-align:center;border-right:1px solid #f8eaf055}.theme-flowers .f-film figure:nth-child(even){flex-basis:min(42vw,620px);margin-top:10svh;height:58svh}.theme-flowers .f-film figcaption{position:absolute;left:18px;bottom:18px;width:auto;padding:10px 13px;color:#28122c;background:#fff9f3}

/* OceanX-style time axis instead of a common feature grid. */
.theme-bistro .bistro-timeline{counter-reset:service}.theme-bistro .bistro-timeline article{position:relative;overflow:hidden;transition:color .2s,background .2s}.theme-bistro .bistro-timeline article::after{content:"0" counter(service);counter-increment:service;position:absolute;right:-.05em;bottom:-.2em;color:#b94e3222;font:700 170px "Oswald",sans-serif}.theme-bistro .bistro-timeline article:hover,.theme-bistro .bistro-timeline article:focus{color:#fff;background:#121212;outline:0}.theme-bistro .bistro-timeline article:hover time,.theme-bistro .bistro-timeline article:focus time{color:#121212;background:#b94e32}

/* FlowFest-like physical reactions. */
.theme-bakery .k-list article{position:relative;transform:none}.theme-bakery .k-list article:nth-child(3n){color:#fff;background:#963d2c}.theme-bakery .k-list article:nth-child(3n) a{border-color:#f3e7ce}.theme-bakery .k-rules article:nth-child(2){transform:translateY(24px) rotate(1deg);color:#251408;background:#f3e7ce;padding:25px}.theme-bakery .k-rules article:nth-child(3){transform:rotate(-1deg);color:#251408;background:#c77850;padding:25px}
.theme-bakery .k-rules article:first-child{padding:25px;color:#251408;background:#fff8dc;box-shadow:9px 9px 0 #c77850}

/* Lusion-like quiet field: services float without boxed cards. */
.theme-studio .s-ritual-list article{border:0;border-bottom:1px solid #6a567b;background:transparent}.theme-studio .s-ritual-list article::before{display:none}.theme-studio .s-ritual-list article:hover h3,.theme-studio .s-ritual-list article.is-active h3{font-style:italic;color:#486351;transform:translateX(18px)}.theme-studio .s-ritual-list h3{transition:transform .25s,color .25s}.theme-studio .review-cards article{background:transparent!important;box-shadow:none!important}.theme-studio .review-cards article:nth-child(even){margin-left:12vw}

/* Active Theory spotlight: interaction is the background, not another card. */
.karaoke-page{position:relative}.karaoke-page::before{content:"";position:fixed;z-index:5;left:0;top:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(280px circle at var(--spot-x,-500px) var(--spot-y,-500px),#ff2f761c,transparent 68%);mix-blend-mode:screen}.theme-karaoke .room-deck{perspective:1100px}.theme-karaoke .room-deck article{transform-origin:center bottom}.theme-karaoke .room-deck article:nth-child(1){transform:rotateY(5deg)}.theme-karaoke .room-deck article:nth-child(2){transform:translateY(-25px) scale(1.04)}.theme-karaoke .room-deck article:nth-child(3){transform:rotateY(-5deg)}

/* Paodao-like diagnostic choice: state changes matter. */
.theme-workshop .diagnostic-grid article{cursor:pointer;transition:padding .2s,color .2s,background .2s}.theme-workshop .diagnostic-grid article:hover,.theme-workshop .diagnostic-grid article:focus,.theme-workshop .diagnostic-grid article.active{padding-left:18px;color:#111;background:#d8ff35;outline:0}.theme-workshop .diagnostic-grid article.active b{color:#5b50ff}.theme-workshop .depth-workshop aside{transition:transform .25s}.theme-workshop .depth-workshop:has(.diagnostic-grid article.active) aside{transform:translateY(-12px) rotate(1deg)}

@media(max-width:680px){.concept-switcher{right:8px!important;left:auto!important;top:auto!important;bottom:8px!important;transform:none!important}.concept-switcher-toggle{writing-mode:horizontal-tb!important}.coffee-orbit{grid-template-columns:1fr}.orbit-copy{min-height:500px;padding:70px 18px 50px;border-right:0;border-bottom:1px solid #ffffff26}.orbit-copy h2{font-size:58px}.orbit-stage{min-height:auto;padding:60px 18px 90px}.orbit-stage button{grid-template-columns:30px 1fr;padding:18px 0}.orbit-stage button small{display:none}.orbit-stage button span{font-size:42px}.theme-flowers .f-film figure,.theme-flowers .f-film figure:nth-child(even){flex-basis:86vw;height:64svh;margin-top:0}.theme-bistro .bistro-timeline{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.theme-bistro .bistro-timeline article{flex:0 0 82vw;scroll-snap-align:start}.theme-bakery .k-list article,.theme-bakery .k-rules article:nth-child(2),.theme-bakery .k-rules article:nth-child(3){transform:none}.theme-studio .review-cards article:nth-child(even){margin-left:0}.theme-karaoke .room-deck article,.theme-karaoke .room-deck article:nth-child(2){transform:none}}
@media(prefers-reduced-motion:reduce){.orbit-stage button,.theme-bistro .bistro-timeline article,.theme-studio .s-ritual-list h3,.theme-workshop .diagnostic-grid article{transition:none}.karaoke-page::before{display:none}}
