/* Scene-led website mock-up; preserves the established Tribe visual language. */
html { scroll-padding-top:78px; }
.nav-wrap { gap:26px; }
.desktop-nav { gap:20px; font-size:11px; }
.hero-inner { padding:53px 0 42px; }
.hero h1 { font-size:48px; }
.experiences { padding-top:48px; }
.gallery-meta { font-size:9px; }
.product-heading { min-height:91px; padding-bottom:15px; }
.product-heading h3 { font-size:22px; }
.video-poster { border-radius:17px; }
.card-media { position:relative; width:100%; aspect-ratio:9/16; border-radius:17px; }
.card-media .video-poster[hidden] { display:none; }
.inline-video-player { position:absolute; inset:0; display:block; width:100%; height:100%; border:0; border-radius:17px; background:#24132b; object-fit:contain; }
.inline-video-player:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.inline-review-note { margin-top:6px; color:var(--muted); font-size:10px; line-height:1.6; }
.scene-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.video-poster:after { background:linear-gradient(#1d08251a,transparent 30%,#23102f15 55%,#23102f85); }
.card-badge { left:11px; top:12px; font-size:8px; letter-spacing:.55px; padding:5px 8px; }
.screen-overlay { left:11px; right:11px; bottom:11px; }
.mini-window { padding:11px 10px; background:#fffffff5; backdrop-filter:none; }
.mini-title { font-size:10px; }
.mini-row { font-size:9px; }
.screen-note { font-size:7px; }
.card-caption { align-items:flex-start; margin-top:12px; }
.card-caption>span { font-size:10px; padding-top:7px; white-space:nowrap; }
.view-experience { border:0; background:none; color:var(--purple); padding:5px 0 5px 8px; font-size:10px; font-weight:500; text-align:right; min-height:34px; }
.view-experience:hover { text-decoration:underline; text-underline-offset:4px; }
.mobile-gallery-controls { display:none; }
.story-dialog-layout { display:grid; grid-template-columns:250px 1fr; gap:30px; align-items:start; margin-top:21px; }
dialog { width:min(900px,calc(100% - 32px)); }
.dialog-scene { position:relative; aspect-ratio:9/16; border-radius:16px; overflow:hidden; background:var(--wash); }
.dialog-scene img { width:100%; height:100%; object-fit:cover; }
.dialog-scene-label { position:absolute; bottom:15px; left:15px; right:15px; padding:10px 12px; background:#fff9; backdrop-filter:blur(10px); border-radius:8px; color:var(--purple); font-size:11px; }
.story-copy h3 { font-size:20px; font-weight:500; margin:3px 0 12px; line-height:1.3; }
.story-copy>p { font-size:13px; color:var(--muted); line-height:1.75; }
.story-steps { padding:0; margin:21px 0 18px; list-style:none; counter-reset:story; }
.story-steps li { counter-increment:story; display:flex; align-items:flex-start; gap:12px; padding:13px 0; border-top:1px solid var(--line); font-size:13px; line-height:1.6; }
.story-steps li:before { content:counter(story,decimal-leading-zero); flex-shrink:0; color:#916d9b; font-size:10px; padding-top:3px; }
.screen-sample { background:var(--wash); border:1px solid var(--line); padding:14px 16px; border-radius:12px; margin-top:20px; }
.screen-sample .mini-title { font-size:13px; }
.screen-sample .mini-row { font-size:12px; padding:8px 0; }
.sample-caption { display:block; color:#806c87; font-size:9px; margin:0 0 9px; letter-spacing:.7px; }
.video-player { display:block; width:100%; height:auto; max-width:100%; aspect-ratio:auto; background:#24132b; object-fit:contain; border-radius:16px; }
.video-play-icon { position:absolute; top:42%; left:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:60px; height:60px; padding-left:4px; border:2px solid #fff; border-radius:50%; color:#42154a; background:#ffbf00; font-size:24px; box-shadow:0 3px 16px #25082c55; }
.media-review-notice { margin:14px 0 18px; padding:14px 16px; border:1px solid #e5c978; border-left:4px solid var(--gold,#ffb600); border-radius:10px; background:#fff8e7; color:#513c19; font-size:13px; line-height:1.65; }
.media-review-notice>p:first-child { font-weight:500; }
.media-review-notice .media-duration { margin-top:9px; font-size:12px; color:#66522c; }
.review-bar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; padding:12px max(20px,calc((100vw - 1240px)/2)); color:#6b4c72; background:#fbf5e5; font-size:12px; }
.review-bar strong { font-weight:500; }
.review-bar a { text-decoration:underline; text-underline-offset:3px; }
.review-content { margin-top:28px; }
.review-content .dialog-details { margin-top:18px; }
.review-content .script-label { margin-top:16px; }
.review-download { color:var(--purple); text-decoration:underline; text-underline-offset:3px; }
.dialog-footer { align-items:flex-start; }
.scene-motion-note { font-size:11px!important; margin-top:15px!important; }
@media(min-width:1600px) {
 .hero h1 {font-size:57px;} .hero-inner {padding:70px 0 52px;}
 .product-heading h3 {font-size:27px;} .product-heading {min-height:110px;}
 .mini-title {font-size:12px;} .mini-row {font-size:11px;}
 .view-experience {font-size:12px;}
}
@media(max-width:1190px) {
 .nav-wrap {gap:18px;} .desktop-nav {gap:12px;font-size:10px;}
 .product-heading h3 {font-size:20px;} .mini-row {font-size:8px;}
 .card-caption {flex-wrap:wrap;gap:0;} .view-experience {padding-left:0;}
}
@media(max-width:900px) {
 html {scroll-padding-top:72px;}
 .hero-inner {padding:44px 0 38px;} .hero h1 {font-size:43px;}
 .product-heading {min-height:92px;} .product-heading h3 {font-size:26px;}
 .mini-title {font-size:12px;} .mini-row {font-size:11px;}
 .card-badge {font-size:9px;left:14px;top:14px;}
 .screen-overlay {left:14px;right:14px;bottom:14px;}
 .screen-note {font-size:8px;} .mini-window {padding:14px 12px;}
 .view-experience {font-size:12px;min-height:44px;}
 .card-caption {flex-wrap:nowrap;align-items:center;}
 .card-caption>span {padding:0;}
 .mobile-gallery-controls {display:flex;align-items:center;gap:14px;}
 .mobile-gallery-controls button {width:40px;height:40px;border:1px solid var(--line);border-radius:50%;color:var(--purple);background:#fff;font-size:18px;}
 .mobile-gallery-controls button:disabled {opacity:.35;cursor:default;}
 #product-position {font-size:11px;min-width:35px;text-align:center;}
 .gallery-bottom {align-items:center;}
}
@media(max-width:560px) {
 html {scroll-padding-top:66px;}
 .nav-wrap {gap:8px;} .hero h1 {font-size:36px;} .hero-inner {padding:34px 0 30px;}
 .experiences {padding-top:32px;} .gallery-meta {font-size:7px;letter-spacing:.8px;gap:20px;}
 .product-heading {min-height:92px;} .product-heading h3 {font-size:25px;}
 dialog {padding:20px;max-height:92dvh;border-radius:18px;}
 #dialog-title {font-size:25px;}
 .story-dialog-layout {grid-template-columns:1fr;gap:22px;}
 .dialog-scene {width:min(100%,250px);margin:auto;}
 .story-copy h3 {font-size:19px;}
 .dialog-footer {flex-direction:column;gap:14px;}
}
@media(prefers-reduced-motion:reduce) {
 html {scroll-behavior:auto;} .video-poster,.button {transition:none;}
}
