/*
Theme Name: Luxe Authentique Abidjan
Theme URI: https://luxeauthentiqueabidjan.com
Author: Imajin Media
Description: Boutique website with interactive storefront entrance (street, door, handle, interior), bilingual FR/EN, product lightbox, video gallery and WhatsApp ordering.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: luxe-authentique
*/

/* ===== VARIABLES ===== */
:root {
  --copper: #b35f59;
  --copper-light: #c9807a;
  --copper-bright: #dba5a0;
  --copper-dark: #8a4640;
  --copper-darker: #6e3530;
  --charcoal: #1E1E1E;
  --charcoal-dark: #141414;
  --cream: #F5F0EA;
  --cream-dark: #E8E0D4;
  --teal: #1B3B3A;
  --teal-dark: #0F2625;
  --white: #FEFEFE;
  --rose-gold: #b35f59;
}

*{margin:0;padding:0;box-sizing:border-box;}
html,body{width:100%;height:100%;overflow:hidden;font-family:'Montserrat',sans-serif;background:#000;}
button{font-family:inherit;cursor:pointer;}
img{max-width:100%;display:block;}

/* ===== PRELOADER ===== */
#preloader{position:fixed;inset:0;background:var(--charcoal-dark);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10000;transition:opacity 1s ease,visibility 1s ease;}
#preloader.hidden{opacity:0;visibility:hidden;pointer-events:none;}
.preload-logo{width:90px;height:90px;border-radius:50%;object-fit:cover;opacity:0;animation:fadeScale 1.5s ease 0.3s forwards;}
.preload-text{color:var(--copper);font-family:'Playfair Display',serif;font-size:0.85rem;letter-spacing:6px;text-transform:uppercase;margin-top:20px;opacity:0;animation:fadeUp 1s ease 0.8s forwards;}
@keyframes fadeScale{0%{opacity:0;transform:scale(0.8);}100%{opacity:1;transform:scale(1);}}
@keyframes fadeUp{0%{opacity:0;transform:translateY(10px);}100%{opacity:0.8;transform:translateY(0);}}

/* ===== LANGUAGE TOGGLE ===== */
.lang-toggle{position:fixed;top:16px;right:16px;z-index:9000;display:flex;border:1px solid rgba(179,95,89,0.4);border-radius:20px;overflow:hidden;backdrop-filter:blur(10px);background:rgba(0,0,0,0.3);}
.lang-btn{padding:7px 14px;background:transparent;color:var(--copper);border:none;font-size:0.65rem;letter-spacing:2px;transition:all 0.3s;}
.lang-btn.active{background:var(--copper);color:var(--charcoal-dark);}

/* ===== SCENE SYSTEM ===== */
.scene{position:fixed;inset:0;opacity:0;visibility:hidden;transition:opacity 0.8s ease,visibility 0s linear 0.8s;overflow:hidden;}
.scene.active{opacity:1;visibility:visible;transition:opacity 0.8s ease,visibility 0s linear 0s;}

/* ===== SCENE 1: EXTERIOR ===== */
#scene-exterior{background:#000;display:flex;align-items:center;justify-content:center;}
.exterior-img{position:absolute;inset:0;background:url('assets/storefront-wide.webp') center center/cover no-repeat;z-index:0;}
.ext-door-hotspot{position:absolute;top:25%;left:28%;width:44%;height:48%;z-index:25;cursor:pointer;border-radius:4px;transition:box-shadow 0.4s;}
.ext-door-hotspot:hover{box-shadow:0 0 50px rgba(179,95,89,0.25);}
.enter-cta{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);z-index:30;text-align:center;opacity:0;animation:ctaFadeIn 1s ease 1.8s forwards;}
.enter-cta button{padding:14px 32px;background:transparent;border:1px solid var(--copper);color:var(--copper);font-family:'Montserrat',sans-serif;font-size:0.75rem;letter-spacing:3px;text-transform:uppercase;border-radius:2px;transition:all 0.4s;}
.enter-cta button:hover{background:var(--copper);color:var(--charcoal-dark);}
.enter-cta .sub{color:rgba(255,255,255,0.4);font-size:0.6rem;letter-spacing:2px;margin-top:8px;}
@keyframes ctaFadeIn{0%{opacity:0;transform:translateX(-50%) translateY(15px);}100%{opacity:1;transform:translateX(-50%) translateY(0);}}

/* ===== SCENE 2: APPROACH ===== */
#scene-approach{background:#000;display:flex;align-items:center;justify-content:center;}
.approach-bg{position:absolute;inset:0;background:url('assets/door-close.webp') center center/cover no-repeat;}
.approach-hotspot{position:absolute;inset:0;z-index:20;cursor:pointer;}
.approach-cta{position:absolute;bottom:15%;left:50%;transform:translateX(-50%);z-index:30;opacity:0;animation:ctaFadeIn 0.8s ease 0.5s forwards;}
.approach-cta button{padding:12px 28px;background:none;border:none;color:#fff;font-size:0.75rem;letter-spacing:4px;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,0.85),0 0 18px rgba(0,0,0,0.6);transition:all 0.4s;}
.approach-cta button:hover{color:var(--copper);}

/* ===== SCENE 3: HANDLE ===== */
#scene-handle{background:#000;display:flex;align-items:center;justify-content:center;}
.handle-bg{position:absolute;inset:0;background:url('assets/door-handle.webp') center center/cover no-repeat;}
.handle-hotspot{position:absolute;top:30%;left:40%;width:25%;height:30%;z-index:20;cursor:pointer;border-radius:8px;transition:box-shadow 0.3s;}
.handle-hotspot:hover{box-shadow:0 0 35px rgba(179,95,89,0.4);}
.handle-fullclick{position:absolute;inset:0;z-index:10;cursor:pointer;}
.handle-prompt{position:absolute;bottom:10%;left:50%;transform:translateX(-50%);color:var(--copper);font-size:0.75rem;letter-spacing:3px;text-transform:uppercase;opacity:0;animation:ctaFadeIn 0.8s ease 0.5s forwards;white-space:nowrap;z-index:30;}

/* ===== SCENE 4: INTERIOR ===== */
#scene-interior{background:var(--cream);overflow-y:auto;overflow-x:hidden;}

/* Interior Nav */
.int-nav{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:10px 24px;background:rgba(254,254,254,0.97);backdrop-filter:blur(12px);z-index:500;border-bottom:1px solid rgba(179,95,89,0.12);}
.int-nav-logo{display:flex;align-items:center;gap:10px;}
.int-nav-logo img{width:36px;height:36px;border-radius:50%;object-fit:cover;}
.int-nav-logo span{font-family:'Playfair Display',serif;color:var(--charcoal);font-size:0.8rem;letter-spacing:2px;}
.int-nav-links{display:flex;gap:24px;}
.int-nav-links a{color:var(--charcoal);text-decoration:none;font-size:0.68rem;letter-spacing:2px;text-transform:uppercase;transition:color 0.3s;font-weight:400;position:relative;}
.int-nav-links a:hover{color:var(--copper);}
.int-nav-links a.active-link{color:var(--copper);}
.int-nav-links a.active-link::after{content:'';position:absolute;bottom:-10px;left:0;right:0;height:2px;background:var(--copper);}
.int-nav-right{display:flex;align-items:center;gap:12px;}
.int-lang{display:flex;border:1px solid rgba(179,95,89,0.3);border-radius:14px;overflow:hidden;}
.int-lang .lang-btn{padding:5px 10px;font-size:0.6rem;color:var(--copper-dark);}
.int-lang .lang-btn.active{background:var(--copper);color:white;}
.hamburger{display:none;background:none;border:none;padding:5px;}
.hamburger span{display:block;width:20px;height:2px;background:var(--charcoal);margin:4px 0;transition:all 0.3s;}

/* Mobile menu */
.mob-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.3);z-index:550;opacity:0;visibility:hidden;transition:all 0.3s;}
.mob-overlay.open{opacity:1;visibility:visible;}
.mob-menu{position:fixed;top:0;right:-100%;width:min(280px,80vw);height:100%;background:var(--white);z-index:600;padding:70px 24px 30px;transition:right 0.4s cubic-bezier(0.77,0,0.175,1);box-shadow:-4px 0 20px rgba(0,0,0,0.1);}
.mob-menu.open{right:0;}
.mob-menu a{display:block;color:var(--charcoal);text-decoration:none;font-size:0.9rem;letter-spacing:2px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,0.06);text-transform:uppercase;}
.mob-menu-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:1.5rem;color:#999;}

/* Interior content */
.int-content{padding-top:60px;min-height:100vh;}

/* Interior Hero */
.interior-hero{position:relative;width:100%;aspect-ratio:16/9;max-height:65vh;overflow:hidden;}
.interior-hero-img{position:absolute;inset:0;background:url('assets/interior-full.webp') center center/cover no-repeat;}
.interior-hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,var(--cream) 0%,rgba(245,240,234,0.2) 40%,rgba(0,0,0,0.08) 100%);}
.hero-tagline{position:absolute;bottom:15%;left:50%;transform:translateX(-50%);text-align:center;z-index:2;}
.hero-tagline h2{font-family:'Cormorant Garamond',serif;color:var(--charcoal);font-size:clamp(1.2rem,3.2vw,2rem);font-weight:400;font-style:italic;letter-spacing:1px;text-shadow:0 1px 8px rgba(255,255,255,0.6);}
.hero-tagline p{color:#777;font-size:0.68rem;letter-spacing:3px;text-transform:uppercase;margin-top:6px;}

/* ===== SECTION NAV CARDS ===== */
.section-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:900px;margin:40px auto;padding:0 20px;}
.nav-card{position:relative;background:var(--charcoal);border-radius:10px;overflow:hidden;cursor:pointer;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;transition:transform 0.4s,box-shadow 0.4s;border:1px solid rgba(179,95,89,0.15);}
.nav-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,0.15);}
.nav-card-icon{width:48px;height:48px;margin-bottom:14px;opacity:0.85;}
.nav-card-icon svg{width:100%;height:100%;}
.nav-card h3{font-family:'Playfair Display',serif;color:var(--white);font-size:clamp(0.85rem,1.8vw,1.1rem);letter-spacing:2px;margin-bottom:6px;}
.nav-card p{color:rgba(255,255,255,0.5);font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;}
.nav-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--copper);transform:scaleX(0);transition:transform 0.4s;}
.nav-card:hover::after{transform:scaleX(1);}

/* ===== SECTION DIVIDER ===== */
.section-divider{text-align:center;padding:50px 20px 30px;position:relative;}
.section-divider::before{content:'';display:block;width:40px;height:1px;background:var(--copper);margin:0 auto 20px;opacity:0.4;}
.section-divider h2{font-family:'Playfair Display',serif;color:var(--charcoal);font-size:clamp(1.3rem,3vw,1.8rem);letter-spacing:3px;font-weight:500;}
.section-divider p{color:#999;font-size:0.7rem;letter-spacing:2px;text-transform:uppercase;margin-top:6px;}

/* ===== NOS PIÈCES — PRODUCT SECTION ===== */
#section-pieces{padding-bottom:50px;}

/* Category Tabs */
.cat-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:0 20px 30px;max-width:800px;margin:0 auto;}
.cat-tab{padding:9px 20px;background:transparent;border:1px solid rgba(179,95,89,0.3);color:var(--copper-dark);font-size:0.65rem;letter-spacing:2px;text-transform:uppercase;border-radius:24px;transition:all 0.3s;white-space:nowrap;}
.cat-tab:hover{border-color:var(--copper);color:var(--copper);}
.cat-tab.active{background:var(--copper);color:white;border-color:var(--copper);}

/* Product Grid */
.product-grid{display:none;max-width:1100px;margin:0 auto;padding:0 20px;}
.product-grid.active{display:block;}

.products-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;}

.product-card{position:relative;background:var(--white);border-radius:10px;overflow:hidden;cursor:pointer;transition:transform 0.3s,box-shadow 0.3s;border:1px solid rgba(0,0,0,0.05);}
.product-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,0,0,0.1);}
.product-card-img{width:100%;aspect-ratio:1;background:var(--cream-dark);overflow:hidden;display:flex;align-items:center;justify-content:center;}
.product-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s;}
.product-card:hover .product-card-img img{transform:scale(1.05);}
/* Placeholder when no image */
.product-card-img .placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--copper-light);font-size:0.65rem;letter-spacing:1px;text-transform:uppercase;}
.product-card-info{padding:10px 12px;}
.product-card-info h4{font-family:'Playfair Display',serif;color:var(--charcoal);font-size:0.82rem;letter-spacing:0.5px;margin-bottom:3px;font-weight:500;}
.product-card-info p{color:#aaa;font-size:0.6rem;letter-spacing:1.5px;text-transform:uppercase;}

/* ===== LIGHTBOX ===== */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,0.85);backdrop-filter:blur(12px);z-index:6000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s,visibility 0s 0.3s;}
.lightbox.active{opacity:1;visibility:visible;transition:opacity 0.3s,visibility 0s;}
.lb-inner{position:relative;max-width:min(92vw,500px);width:100%;background:var(--white);border-radius:14px;overflow:hidden;transform:scale(0.92);transition:transform 0.35s ease;}
.lightbox.active .lb-inner{transform:scale(1);}
.lb-close{position:absolute;top:12px;right:12px;width:36px;height:36px;background:rgba(0,0,0,0.5);border:none;border-radius:50%;color:white;font-size:1.4rem;display:flex;align-items:center;justify-content:center;z-index:10;transition:background 0.3s;cursor:pointer;}
.lb-close:hover{background:rgba(0,0,0,0.7);}
.lb-img{width:100%;aspect-ratio:1;background:var(--cream-dark);overflow:hidden;}
.lb-img img{width:100%;height:100%;object-fit:cover;}
.lb-body{padding:20px 24px 24px;}
.lb-cat{color:var(--copper);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:4px;}
.lb-title{font-family:'Playfair Display',serif;color:var(--charcoal);font-size:1.2rem;margin-bottom:8px;font-weight:500;}
.lb-desc{color:#888;font-size:0.78rem;line-height:1.6;margin-bottom:18px;}
.lb-wa{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:#25D366;color:white;border:none;border-radius:8px;font-size:0.78rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;transition:background 0.3s;text-decoration:none;}
.lb-wa:hover{background:#1DA851;}
.lb-wa svg{width:20px;height:20px;fill:white;flex-shrink:0;}
/* Lightbox nav arrows */
.lb-arrow{position:absolute;top:50%;transform:translateY(-100%);width:40px;height:40px;background:rgba(0,0,0,0.4);border:none;border-radius:50%;color:white;font-size:1.3rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 0.3s;z-index:10;}
.lb-arrow:hover{background:rgba(0,0,0,0.65);}
.lb-arrow.prev{left:10px;}
.lb-arrow.next{right:10px;}

/* ===== DÉCOUVERTE / DISCOVER ===== */
#section-decouverte{padding-bottom:50px;}
.decouverte-placeholder{max-width:700px;margin:0 auto;text-align:center;padding:40px 20px;}
.decouverte-placeholder .dp-icon{width:64px;height:64px;margin:0 auto 20px;border-radius:50%;background:var(--charcoal);display:flex;align-items:center;justify-content:center;}
.decouverte-placeholder .dp-icon svg{width:28px;height:28px;fill:var(--copper);}
.decouverte-placeholder h3{font-family:'Playfair Display',serif;color:var(--charcoal);font-size:1.1rem;letter-spacing:2px;margin-bottom:8px;}
.decouverte-placeholder p{color:#999;font-size:0.78rem;line-height:1.6;}

/* Video grid */
.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;max-width:1100px;margin:0 auto;padding:0 20px 40px;}
.video-card{position:relative;background:var(--charcoal);border-radius:10px;overflow:hidden;aspect-ratio:9/16;max-height:420px;cursor:pointer;transition:transform 0.3s,box-shadow 0.3s;}
.video-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,0,0,0.15);}
.video-card video{width:100%;height:100%;object-fit:cover;}
.video-card .play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;background:rgba(0,0,0,0.5);border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity 0.3s,background 0.3s;}
.video-card .play-btn svg{width:24px;height:24px;fill:white;margin-left:3px;}
.video-card.playing .play-btn{opacity:0;}
.video-card .vid-number{position:absolute;top:10px;left:10px;background:rgba(0,0,0,0.5);color:var(--copper);font-size:0.6rem;letter-spacing:1.5px;padding:4px 10px;border-radius:12px;text-transform:uppercase;font-weight:500;}

/* ===== À VOTRE SERVICE / CONTACT ===== */
#section-contact{padding-bottom:60px;}
.contact-content{max-width:700px;margin:0 auto;padding:0 20px;}
.contact-card{background:var(--charcoal);border-radius:14px;padding:40px 30px;text-align:center;}
.contact-logo{width:60px;height:60px;border-radius:50%;object-fit:cover;margin:0 auto 16px;border:2px solid rgba(179,95,89,0.3);}
.contact-brand{font-family:'Playfair Display',serif;color:var(--rose-gold);font-size:clamp(0.8rem,2vw,1.1rem);letter-spacing:3px;margin-bottom:6px;}
.contact-tagline{color:rgba(255,255,255,0.4);font-size:0.65rem;letter-spacing:2px;text-transform:uppercase;margin-bottom:30px;}
.contact-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:30px;}
.c-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;border:1px solid rgba(179,95,89,0.35);background:transparent;color:var(--copper);font-size:0.68rem;letter-spacing:1.5px;text-transform:uppercase;border-radius:24px;text-decoration:none;transition:all 0.3s;min-height:44px;}
.c-btn:hover{background:var(--copper);color:white;}
.c-btn svg{width:16px;height:16px;fill:currentColor;flex-shrink:0;}
.c-btn.wa-btn{border-color:#25D366;color:#25D366;}
.c-btn.wa-btn:hover{background:#25D366;color:white;}
.contact-hours{color:rgba(255,255,255,0.45);font-size:0.7rem;line-height:1.8;letter-spacing:0.5px;}
.contact-hours strong{color:var(--copper-light);font-weight:500;}

/* ===== PAYMENT METHODS ===== */
.payment-section{text-align:center;padding:30px 20px 10px;background:var(--charcoal-dark);border-top:1px solid rgba(179,95,89,0.12);}
.payment-label{color:rgba(255,255,255,0.45);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:14px;}
.payment-img{max-width:340px;margin:0 auto;opacity:0.85;filter:brightness(1.05);}

/* ===== FOOTER ===== */
.int-footer{background:var(--charcoal-dark);padding:20px 20px 30px;text-align:center;}
.int-footer p{color:rgba(255,255,255,0.3);font-size:0.6rem;letter-spacing:1px;}

/* ===== WhatsApp FAB ===== */
.wa-fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:800;box-shadow:0 4px 16px rgba(37,211,102,0.4);transition:transform 0.3s;text-decoration:none;opacity:0;visibility:hidden;}
.wa-fab.show{opacity:1;visibility:visible;}
.wa-fab:hover{transform:scale(1.08);}
.wa-fab svg{width:28px;height:28px;fill:white;}

/* ===== Exit FAB ===== */
.exit-fab{position:fixed;bottom:24px;left:24px;z-index:800;display:flex;align-items:center;gap:6px;padding:9px 16px;background:rgba(30,30,30,0.85);border:1px solid rgba(179,95,89,0.3);color:var(--copper);border-radius:22px;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:all 0.3s;cursor:pointer;}
.exit-fab.show{opacity:1;visibility:visible;}
.exit-fab:hover{background:var(--copper);color:white;border-color:var(--copper);}
.exit-fab svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;}

/* ===== RESPONSIVE ===== */

@media(min-width:1440px){
  .section-nav{max-width:1000px;gap:20px;}
  .products-row{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));}
}

@media(max-width:1024px){
  .int-nav-links{gap:16px;}
  .int-nav-links a{font-size:0.62rem;}
}

@media(max-width:768px){
  .int-nav-links{display:none;}
  .hamburger{display:block !important;}
  .int-nav{padding:8px 14px;}
  .section-nav{grid-template-columns:repeat(3,1fr);gap:10px;padding:0 14px;margin:30px auto;}
  .nav-card{padding:14px;aspect-ratio:auto;}
  .nav-card h3{font-size:0.78rem;}
  .nav-card-icon{width:36px;height:36px;margin-bottom:10px;}
  .products-row{grid-template-columns:repeat(2,1fr);gap:10px;}
  .cat-tabs{gap:6px;}
  .cat-tab{padding:7px 14px;font-size:0.6rem;}
  .enter-cta button{padding:12px 24px;font-size:0.7rem;}
  .lb-inner{max-width:min(95vw,420px);}
  .wa-fab{width:50px;height:50px;bottom:18px;right:18px;}
  .wa-fab svg{width:24px;height:24px;}
  .exit-fab{bottom:18px;left:14px;padding:7px 12px;font-size:0.55rem;}
  .lang-toggle{top:12px;right:12px;}
  .lang-btn{padding:6px 11px;font-size:0.6rem;}
  .contact-card{padding:30px 20px;}
  .c-btn{padding:10px 14px;font-size:0.62rem;}
}

@media(max-width:480px){
  .section-nav{grid-template-columns:1fr;gap:10px;max-width:320px;}
  .nav-card{flex-direction:row;aspect-ratio:auto;padding:16px 20px;gap:14px;text-align:left;justify-content:flex-start;}
  .nav-card-icon{margin-bottom:0;width:32px;height:32px;flex-shrink:0;}
  .products-row{grid-template-columns:repeat(2,1fr);gap:8px;}
  .product-card-info{padding:8px 10px;}
  .product-card-info h4{font-size:0.75rem;}
  .hero-tagline h2{font-size:1.1rem;}
  .contact-brand{font-size:0.75rem;letter-spacing:2px;}
  .mob-menu{width:100%;}
  .lb-arrow{width:34px;height:34px;font-size:1.1rem;}
}

@media(max-width:360px){
  .int-nav-logo span{display:block;font-size:0.58rem;letter-spacing:1.5px;line-height:1.3;max-width:150px;}
  .products-row{grid-template-columns:repeat(2,1fr);gap:6px;}
}

@media(max-height:500px) and (orientation:landscape){
  .section-nav{grid-template-columns:repeat(3,1fr);margin:20px auto;}
  .nav-card{aspect-ratio:auto;padding:14px;}
}

@media(hover:none) and (pointer:coarse){
  .product-card:hover{transform:none;}
  .product-card:active{transform:scale(0.98);}
  .nav-card:hover{transform:none;}
  .nav-card:active{transform:scale(0.97);}
  .ext-door-hotspot:hover{box-shadow:none;}
  .handle-hotspot:hover{box-shadow:none;}
  .c-btn{min-height:44px;}
}

@supports(padding:env(safe-area-inset-top)){
  .int-nav{padding-top:calc(10px + env(safe-area-inset-top));}
  .int-content{padding-top:calc(60px + env(safe-area-inset-top));}
  .wa-fab{bottom:calc(24px + env(safe-area-inset-bottom));}
  .exit-fab{bottom:calc(24px + env(safe-area-inset-bottom));}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.01ms!important;transition-duration:0.2s!important;}
}

/* ===== SCROLL ANIMATIONS ===== */
.fade-in{opacity:0;transform:translateY(20px);transition:opacity 0.6s ease,transform 0.6s ease;}
.fade-in.visible{opacity:1;transform:translateY(0);}

/* Header brand: keep full name visible; hide the floating FR/EN while inside the shop (nav has its own) */
.int-nav-logo span{line-height:1.3;}
@media(max-width:768px){
  .int-nav-logo span{font-size:0.62rem;letter-spacing:1.5px;max-width:170px;}
  body:has(#scene-interior.active) .lang-toggle{display:none;}
}
