.mobile-menu{position:fixed;inset:0;z-index:2000;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s}.mobile-menu.is-open{pointer-events:all;visibility:visible;opacity:1}.mobile-menu__overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-menu__panel{position:absolute;top:0;right:0;width:min(360px,85vw);height:100%;background:#111;border-left:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;padding:2rem 1.5rem;transform:translateX(100%);transition:transform .4s cubic-bezier(.4,0,.2,1)}.mobile-menu.is-open .mobile-menu__panel{transform:translateX(0)}.mobile-menu__close{align-self:flex-end;background:0 0;border:0;color:#f5f5f5;cursor:pointer;padding:.5rem;margin-bottom:2rem}.mobile-menu__nav{flex:1}.mobile-menu__list{list-style:none}.mobile-menu__item{border-bottom:1px solid rgba(255,255,255,.06)}.mobile-menu__link{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0;text-decoration:none;color:#f5f5f5;font-size:1.125rem;font-weight:400;transition:color .2s}.mobile-menu__link:hover,.services-showcase__locations-links a:hover{color:var(--gold, #d4af37)}.mobile-menu__link-icon{opacity:.4;flex-shrink:0}.mobile-menu__footer{padding-top:2rem;border-top:1px solid rgba(255,255,255,.06);text-align:center}.mobile-menu__tagline{font-size:.8125rem;color:#8a8a8a;letter-spacing:.05em}.collection-preview{padding:6rem 0 4rem;background:var(--bg, #0d0d0d)}.collection-preview__header{text-align:center;max-width:700px;margin:0 auto 3rem;padding:0 1.5rem}.collection-preview__subtitle{display:block;font-size:.8125rem;color:var(--gold, #d4af37);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.75rem}.collection-preview__title{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:clamp(1.75rem,4vw,2.75rem);font-weight:300;color:var(--text, #f5f5f5);margin-bottom:1rem}.collection-preview__description{font-size:.9375rem;color:var(--text2, #c4c4c4);line-height:1.7;font-weight:300}.collection-preview__break{display:none}@media (min-width:769px){.collection-preview__break{display:block}}.collection-preview__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;max-width:1200px;margin:0 auto;padding:0 1.5rem}.collection-card{position:relative;border-radius:12px;overflow:hidden;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer;transition:box-shadow .4s cubic-bezier(.4,0,.2,1)}.collection-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.4)}.collection-card__image,.collection-card__image-wrapper{position:absolute;inset:0}.collection-card__image{background-size:cover;background-position:center}.collection-card:hover .collection-card__image{}.collection-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85)0,rgba(0,0,0,.3) 50%,rgba(0,0,0,.1) 100%);z-index:1;transition:background .5s cubic-bezier(.4,0,.2,1)}.collection-card:hover .collection-card__overlay{background:linear-gradient(180deg,rgba(13,13,13,.3) 0,rgba(13,13,13,.6) 50%,rgba(13,13,13,.9) 100%)}.collection-card__content{position:relative;z-index:2;padding:1.5rem}.collection-card__badge{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--gold, #d4af37);letter-spacing:.04em;margin-bottom:.75rem;padding:.25rem .75rem;background:rgba(212,175,55,.1);border-radius:100px;border:1px solid rgba(212,175,55,.2)}.collection-card__title{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:1.5rem;font-weight:400;color:#fff;margin-bottom:.5rem}.collection-card__description{font-size:.8125rem;color:rgba(255,255,255,.75);line-height:1.6;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.collection-card__stats{display:flex;gap:1.5rem;margin-bottom:1rem}.collection-card__stat{display:flex;flex-direction:column;gap:.125rem}.collection-card__stat-label{font-size:.6875rem;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.05em}.collection-card__stat-value{font-size:.875rem;font-weight:600;color:var(--gold, #d4af37)}.collection-card__cta{display:inline-flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500;color:#fff;text-decoration:none;padding:.625rem 1.25rem;border:1px solid rgba(255,255,255,.2);border-radius:6px;transition:opacity .3s}.collection-card__cta:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.4)}.collection-card__cta-icon{flex-shrink:0}.collection-card--panorama{grid-column:1/-1;min-height:280px}.collection-card--prestige{grid-column:1/-1;min-height:400px;background:linear-gradient(135deg,#0a0a0a 0,#1a1510 50%,#0a0a0a 100%);border:1px solid rgba(212,175,55,.15);display:flex;align-items:center;justify-content:center}.prestige-bg{position:absolute;inset:0;overflow:hidden}.prestige-bg__gradient-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.15}.prestige-bg__gradient-orb--1{width:400px;height:400px;background:var(--gold, #d4af37);top:-100px;right:-100px}.prestige-bg__gradient-orb--2{width:300px;height:300px;background:var(--bronze, #cd7f32);bottom:-80px;left:-80px}.collection-card__premium-frame{position:absolute;inset:8px;border:1px solid rgba(212,175,55,.12);border-radius:8px;pointer-events:none;z-index:1}.prestige-content{position:relative;z-index:2;text-align:center;max-width:700px;padding:3rem 2rem}.prestige-header{margin-bottom:1.5rem}.prestige-eyebrow{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem}.prestige-eyebrow__line{width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--gold, #d4af37))}.prestige-eyebrow__line:last-child{background:linear-gradient(90deg,var(--gold, #d4af37),transparent)}.prestige-eyebrow__text{font-size:.75rem;color:var(--gold, #d4af37);letter-spacing:.15em;text-transform:uppercase}.prestige-title{margin-bottom:.5rem}.prestige-title__word{display:block;font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);line-height:1.1}.prestige-title__word--collection{font-size:1rem;letter-spacing:.3em;color:var(--text2, #c4c4c4);font-weight:300}.prestige-title__word--prestige{font-size:clamp(2rem,5vw,3.5rem);background:linear-gradient(135deg,var(--gold, #d4af37) 0%,#f5e6a3 50%,var(--gold, #d4af37) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:400}.prestige-subtitle{font-size:.875rem;color:var(--text2, #c4c4c4);font-style:italic}.prestige-description{font-size:.9375rem;color:var(--text2, #c4c4c4);line-height:1.7;margin-bottom:2rem;font-weight:300}.prestige-stats{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.prestige-stat{display:flex;align-items:center;gap:.75rem}.prestige-stat__icon{color:var(--gold, #d4af37);opacity:.7}.prestige-stat__content{text-align:left}.prestige-stat__label{display:block;font-size:.6875rem;color:var(--muted, #8a8a8a);text-transform:uppercase;letter-spacing:.05em}.prestige-stat__value{font-size:1rem;font-weight:600;color:var(--text, #f5f5f5)}.prestige-cta{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;background:linear-gradient(135deg,var(--gold, #d4af37),var(--bronze, #cd7f32));color:var(--bg, #0d0d0d);text-decoration:none;font-weight:600;font-size:.9375rem;border-radius:8px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.prestige-cta:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(212,175,55,.4)}.prestige-cta__arrow{flex-shrink:0}.prestige-shimmer{position:absolute;inset:0;background:linear-gradient(45deg,transparent 30%,rgba(212,175,55,.03) 50%,transparent 70%);pointer-events:none}.collection-preview__footer{text-align:center;padding:3rem 1.5rem 0}.collection-preview__help-text{font-size:.9375rem;color:var(--text2, #c4c4c4);margin-bottom:1rem}.collection-preview__contact-cta{display:inline-flex;align-items:center;gap:.5rem;color:var(--gold, #d4af37);text-decoration:none;font-size:.9375rem;font-weight:500;padding:.75rem 1.5rem;border:1px solid rgba(212,175,55,.3);border-radius:8px;transition:opacity .3s}.collection-preview__contact-cta:hover{background:rgba(212,175,55,.1);border-color:var(--gold, #d4af37)}.services-showcase{padding:5rem 0;background:var(--bg2, #1a1a1a)}.services-showcase__container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.services-showcase__header{text-align:center;margin-bottom:3rem}.services-showcase__subtitle{display:block;font-size:.8125rem;color:var(--gold, #d4af37);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.75rem}.services-showcase__title{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:clamp(1.5rem,3.5vw,2.5rem);font-weight:300;color:var(--text, #f5f5f5);margin-bottom:1rem}.services-showcase__description{font-size:.9375rem;color:var(--text2, #c4c4c4);line-height:1.7;font-weight:300}.services-showcase__break{display:none}@media (min-width:769px){.services-showcase__break{display:block}}.services-showcase__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:2.5rem}.services-showcase__card{display:block;padding:1.5rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:10px;text-decoration:none;transition:transform .3s}.services-showcase__card:hover{background:rgba(255,255,255,.06);border-color:rgba(212,175,55,.3);transform:translateY(-2px)}.services-showcase__card-title{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:1.25rem;font-weight:400;color:var(--text, #f5f5f5);margin-bottom:.375rem}.services-showcase__card-desc{font-size:.8125rem;color:var(--muted, #8a8a8a);line-height:1.5}.services-showcase__locations{text-align:center;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.06)}.services-showcase__locations-label{font-size:.8125rem;color:var(--muted, #8a8a8a);margin-bottom:.75rem}.services-showcase__locations-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem}.services-showcase__locations-links a{font-size:.875rem;color:var(--text2, #c4c4c4);text-decoration:none;transition:color .2s}.social-proof{padding:5rem 0;background:var(--bg, #0d0d0d)}.social-proof__container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.social-proof__header{text-align:center;margin-bottom:3rem}.social-proof__google-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:100px;margin-bottom:1.25rem}.social-proof__google-rating{font-size:1rem;font-weight:700;color:var(--text, #f5f5f5)}.social-proof__review-count{font-size:.8125rem;color:var(--muted, #8a8a8a)}.social-proof__eyebrow{display:block;font-size:.8125rem;color:var(--gold, #d4af37);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.75rem}.social-proof__title{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:clamp(1.5rem,3.5vw,2.5rem);font-weight:300;color:var(--text, #f5f5f5)}.testimonials-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-bottom:3rem}.testimonial{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.5rem}.testimonial:hover{border-color:rgba(212,175,55,.2)}.testimonial--featured{grid-column:1/-1;background:rgba(212,175,55,.04);border-color:rgba(212,175,55,.15)}.testimonial--quote-only{grid-column:1/-1;text-align:center;background:rgba(255,255,255,.02)}.testimonial__stars-row{margin-bottom:.75rem}.testimonial__quote{font-size:.9375rem;color:var(--text2, #c4c4c4);line-height:1.7;font-style:italic;margin-bottom:1rem}.testimonial__quote--large{font-size:1.125rem;font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-weight:400;color:var(--text, #f5f5f5)}.testimonial__author{display:flex;flex-direction:column;gap:.125rem}.testimonial__name{font-size:.875rem;font-weight:600;color:var(--text, #f5f5f5);font-style:normal}.testimonial__meta{font-size:.75rem;color:var(--muted, #8a8a8a)}.trust-indicators{display:flex;justify-content:center;gap:3rem;padding:2rem 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:2rem}.trust-indicator{text-align:center}.trust-indicator__value{display:block;font-size:1.5rem;font-weight:700;color:var(--gold, #d4af37)}.trust-indicator__label{font-size:.75rem;color:var(--muted, #8a8a8a);text-transform:uppercase;letter-spacing:.05em}.social-proof__footer{text-align:center}.social-proof__google-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text2, #c4c4c4);text-decoration:none;font-size:.875rem;transition:color .2s}.social-proof__google-link:hover{color:var(--text, #f5f5f5)}.about-artist{position:relative;padding:6rem 0;background:var(--bg2, #1a1a1a);overflow:hidden}.about-artist__bg-image{position:absolute;inset:0;z-index:0}.about-artist__bg-image-src{width:100%;height:100%;object-fit:cover;opacity:.15}.about-artist__bg-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,var(--bg2, #1a1a1a) 0%,rgba(26,26,26,.7) 50%,var(--bg2, #1a1a1a) 100%)}.about-artist__container{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:0 1.5rem}.about-artist__grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:3rem}@media (min-width:769px){.about-artist__grid{grid-template-columns:1fr 1.5fr;gap:4rem}}.about-artist__portrait-col{display:flex;justify-content:center}.about-artist__portrait-frame{max-width:400px;border-radius:12px;overflow:hidden}.about-artist__portrait{width:100%;height:auto;display:block}.about-artist__header{margin-bottom:2rem}.about-artist__eyebrow{display:block;font-size:.8125rem;color:var(--gold, #d4af37);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem}.about-artist__title{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:clamp(2rem,4vw,3rem);font-weight:300;color:var(--text, #f5f5f5);margin-bottom:.25rem}.about-artist__subtitle{font-size:1rem;font-style:italic}.about-artist__bio-content,.about-artist__subtitle{color:var(--text2, #c4c4c4)}.about-artist__bio-block{margin-bottom:1.5rem}.about-artist__bio-heading{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:1.25rem;font-weight:400;color:var(--text, #f5f5f5);margin-bottom:.75rem}.about-artist__bio-text{font-size:.9375rem;line-height:1.7;margin-bottom:.75rem;font-weight:300}.about-artist__quote{margin:2rem 0;padding:1.5rem;border-left:3px solid var(--gold, #d4af37);background:rgba(212,175,55,.04);border-radius:0 8px 8px 0}.about-artist__quote-text{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:1.125rem;font-style:italic;color:var(--text, #f5f5f5);line-height:1.7;margin-bottom:.75rem}.about-artist__quote-author{font-size:.875rem;color:var(--gold, #d4af37);font-style:normal}.about-artist__cta{text-align:center;margin-bottom:3rem;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem}.about-artist__cta-button{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:linear-gradient(135deg,var(--gold, #d4af37),var(--bronze, #cd7f32));color:var(--bg, #0d0d0d);text-decoration:none;font-weight:600;font-size:.9375rem;border-radius:8px;transition:transform .2s,box-shadow .2s}.about-artist__cta-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(212,175,55,.35)}.about-artist__cta-link{color:var(--gold, #d4af37);text-decoration:none;font-size:.9375rem;font-weight:500;border-bottom:1px solid rgba(212,175,55,.3);padding-bottom:2px;transition:opacity .2s}.about-artist__cta-link:hover{border-color:var(--gold, #d4af37)}.about-artist__credentials{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.06)}.about-artist__credential-item{text-align:center}.about-artist__credential-value{display:block;font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:2rem;font-weight:400;color:var(--gold, #d4af37);margin-bottom:.25rem}.about-artist__credential-label{font-size:.75rem;color:var(--muted, #8a8a8a);text-transform:uppercase;letter-spacing:.04em}.site-footer{background:#0a0a0a;border-top:1px solid rgba(255,255,255,.06);padding:4rem 0 0;color:var(--text2, #c4c4c4);font-size:.875rem}.site-footer__container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.site-footer__stage-1{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr;gap:2rem;padding-bottom:2.5rem}.site-footer__logo-img{width:120px;height:120px}.site-footer__description{font-size:.8125rem;color:rgba(255,255,255,.6);line-height:1.6;margin-top:1rem}.site-footer__col-title{font-family:var(--serif, 'Cormorant Garamond', Georgia, serif);font-size:1.125rem;font-weight:400;color:var(--text, #f5f5f5);margin-bottom:1rem}.site-footer__nav-list{list-style:none}.site-footer__nav-link{display:block;padding:.25rem 0;color:rgba(255,255,255,.6);text-decoration:none;font-size:.8125rem;transition:color .2s}.site-footer__contact-item a:hover,.site-footer__nav-link:hover{color:var(--gold, #d4af37)}.site-footer__divider{border-top:1px solid rgba(255,255,255,.1);margin:0 0 2.5rem}.site-footer__stage-2{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2rem;padding-bottom:2.5rem}.site-footer__contact{font-style:normal}.site-footer__contact-item{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;font-size:.8125rem;color:rgba(255,255,255,.7);line-height:1.5}.site-footer__contact-item a{color:rgba(255,255,255,.7);text-decoration:none;transition:color .2s}.site-footer__contact-icon{flex-shrink:0;color:var(--gold, #d4af37);opacity:.6;margin-top:2px}.site-footer__newsletter-text{font-size:.9rem;color:rgba(255,255,255,.7);margin-bottom:1rem}.site-footer__newsletter-input-group{display:flex;gap:0}.site-footer__newsletter-input{flex:1;padding:.75rem 1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px 0 0 6px;color:var(--text, #f5f5f5);font-family:inherit;font-size:.875rem;outline:0;transition:border-color .2s}.site-footer__newsletter-input:focus{border-color:var(--gold, #d4af37)}.site-footer__newsletter-input::placeholder{color:var(--muted, #8a8a8a)}.site-footer__newsletter-button{padding:.75rem 1rem;background:linear-gradient(135deg,var(--gold, #d4af37),var(--bronze, #cd7f32));border:0;border-radius:0 6px 6px 0;color:var(--bg, #0d0d0d);cursor:pointer;transition:opacity .2s}.site-footer__newsletter-button:hover{opacity:.9}.site-footer__social-links{display:flex;gap:1rem;margin-top:.5rem}.site-footer__social-link{color:rgba(255,255,255,.5);transition:color .2s}.site-footer__social-link:hover{color:var(--gold, #d4af37)}.site-footer__bottom{border-top:1px solid rgba(255,255,255,.06);padding:1.5rem 0}.site-footer__bottom-content{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.site-footer__copyright{font-size:.8125rem;color:rgba(255,255,255,.4)}.site-footer__legal-nav{display:flex;gap:.5rem;flex-wrap:wrap}.site-footer__legal-link{color:rgba(255,255,255,.4);text-decoration:none;font-size:.75rem;transition:color .2s}.site-footer__legal-link:hover{color:var(--text2, #c4c4c4)}.site-footer__legal-separator{color:rgba(255,255,255,.2);font-size:.75rem}.footer-credit{margin-top:.5rem;font-size:.75rem}.footer-credit a{text-decoration:none}@media (max-width:1024px){.collection-preview__grid{grid-template-columns:1fr 1fr}.site-footer__stage-1{grid-template-columns:repeat(3,1fr)}.site-footer__col--brand{grid-column:1/-1}}@media (max-width:768px){.collection-preview__grid{grid-template-columns:1fr}.collection-card{min-height:300px}.collection-card--prestige{min-height:350px}.testimonials-grid{grid-template-columns:1fr}.trust-indicators{gap:1.5rem}.about-artist__credentials{grid-template-columns:repeat(2,1fr)}.prestige-stats{flex-direction:column;align-items:center}.site-footer__stage-1{grid-template-columns:1fr 1fr}.site-footer__col--brand{grid-column:1/-1}.site-footer__stage-2{grid-template-columns:1fr}}@media (max-width:480px){.site-footer__stage-1{grid-template-columns:1fr}.site-footer__bottom-content{flex-direction:column;text-align:center}.site-footer__legal-nav{justify-content:center}.about-artist__credentials{grid-template-columns:repeat(2,1fr);gap:1rem}.trust-indicators{flex-direction:column;gap:1rem}}/* ============================================================
   BORIS MOLINIER — THEME SYSTEM
   homepage-theme.css

   Dual theme: light (glassmorphism) + dark (original)
   Auto-detects OS preference, user can toggle manually
   Load AFTER homepage-v2.css
   ============================================================ */

/* ── Keyframes (shared — prestige card animations) ─────────── */

@keyframes prestigeOrb1 {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(30px, 20px) scale(1.1); }
    66% { transform: translate(-20px, 10px) scale(.95); }
}

@keyframes prestigeOrb2 {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(-25px, -15px) scale(.9); }
    66% { transform: translate(15px, -25px) scale(1.05); }
}

@keyframes prestigeShimmer {
    0% { transform: translateX(-100%) rotate(45deg); }
    100% { transform: translateX(200%) rotate(45deg); }
}

@keyframes prestigeBorder {
    0%, 100% { border-color: rgba(255,255,255,.08); }
    50% { border-color: rgba(255,255,255,.2); }
}

/* ── Theme Toggle Button (both themes) ─────────────────────── */

.header__action--theme {
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s;
    color: inherit;
    -webkit-tap-highlight-color: transparent;
}

.header__action--theme:hover {
    background: rgba(255,255,255,.12);
}

/* Icon swap: dark → sun visible, light → moon visible */
.theme-icon--moon { display: none; }
.theme-icon--sun { display: block; }
[data-theme="light"] .theme-icon--sun { display: none; }
[data-theme="light"] .theme-icon--moon { display: block; }


/* ══════════════════════════════════════════════════════════════
   LIGHT THEME — Glassmorphism
   ══════════════════════════════════════════════════════════════ */

/* ── Design Tokens ────────────────────────────────────────── */
:root[data-theme="light"] {
    --bg: #F0F2F5;
    --bg2: #E8ECF0;
    --text: #1A1D23;
    --text2: #4A4F5C;
    --muted: #7B818D;
    --gold: #2A2A2A;
    --bronze: #1A1A1A;
    --border: rgba(255,255,255,.45);
    --card-bg: rgba(255,255,255,.35);
    --card-border: rgba(255,255,255,.5);
    --card-hover-border: rgba(0,0,0,.15);
    --overlay-light: rgba(255,255,255,.85);

    /* Glass tokens */
    --glass: rgba(255,255,255,.25);
    --glass-strong: rgba(255,255,255,.4);
    --glass-border: rgba(255,255,255,.5);
    --glass-blur: blur(20px);
    --glass-shadow: 0 8px 32px rgba(0,0,0,.06);
    --accent: #2A2A2A;
    --accent-light: rgba(0,0,0,.04);
    --accent-hover: rgba(0,0,0,.08);
}

/* ── Global body ──────────────────────────────────────────── */
[data-theme="light"] body {
    background:
        radial-gradient(ellipse 80% 50% at 20% 20%, rgba(170,185,210,.55) 0%, transparent 65%),
        radial-gradient(ellipse 60% 60% at 80% 55%, rgba(190,175,210,.5) 0%, transparent 65%),
        radial-gradient(ellipse 70% 40% at 50% 90%, rgba(165,200,190,.5) 0%, transparent 65%),
        var(--bg);
    color: var(--text);
}

/* ── Header ───────────────────────────────────────────────── */
[data-theme="light"] .header.is-scrolled {
    background: rgba(240,242,245,.85);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(0,0,0,.08);
    box-shadow: 0 1px 8px rgba(0,0,0,.06);
}

[data-theme="light"] .header.is-scrolled .header__logo-img {
    filter: invert(1);
}

[data-theme="light"] .header.is-scrolled .header__menu-link {
    color: var(--text2) !important;
}
[data-theme="light"] .header.is-scrolled .header__menu-link:hover {
    color: var(--accent) !important;
}
[data-theme="light"] .header.is-scrolled .header__menu-line {
    background: var(--text);
}
[data-theme="light"] .header.is-scrolled .header__action {
    color: var(--text);
}
[data-theme="light"] .header.is-scrolled .header__action--theme:hover {
    background: rgba(0,0,0,.06);
}

[data-theme="light"] .header__progress {
    background: var(--accent);
}

/* ── Hero — keep dark in both themes ──────────────────────── */
[data-theme="light"] .hero {
    background: #0d0d0d;
}

[data-theme="light"] .hero__overlay {
    background: linear-gradient(135deg, rgba(13,13,13,.55) 0%, rgba(13,13,13,.35) 40%, rgba(13,13,13,.2) 70%, rgba(13,13,13,.1) 100%);
}

[data-theme="light"] .hero__content {
    color: #f5f5f5;
}

[data-theme="light"] .hero__headline,
[data-theme="light"] .hero__headline-line,
[data-theme="light"] .hero__subheadline,
[data-theme="light"] .hero__subheadline strong,
[data-theme="light"] .hero__trust-text {
    color: #f5f5f5;
}

[data-theme="light"] .hero__badge {
    color: rgba(255,255,255,.8);
    background: rgba(255,255,255,.1);
    border-color: rgba(255,255,255,.2);
}

[data-theme="light"] .hero__cta--secondary {
    color: #f5f5f5;
    border-color: rgba(255,255,255,.15);
}

/* ── Collection Preview Section ──────────────────────────── */
[data-theme="light"] .collection-preview {
    background: transparent;
}

[data-theme="light"] .collection-preview__subtitle {
    color: var(--accent);
}

[data-theme="light"] .collection-preview__title {
    color: var(--text);
}

[data-theme="light"] .collection-preview__description {
    color: var(--text2);
}

/* Collection Cards */
[data-theme="light"] .collection-card {
    border-radius: 16px;
    box-shadow: var(--glass-shadow);
}

[data-theme="light"] .collection-card:hover {
    box-shadow: 0 12px 40px rgba(0,0,0,.1);
}

[data-theme="light"] .collection-card__overlay {
    display: none !important;
}

[data-theme="light"] .collection-card__content {
    background: linear-gradient(to top, rgba(0,0,0,.55) 0%, rgba(0,0,0,.2) 50%, transparent 100%);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-top: none;
    padding: 1.25rem 1.5rem;
    margin: 0;
}

[data-theme="light"] .collection-card__badge {
    color: #fff;
    background: rgba(255,255,255,.15);
    border: 1px solid rgba(255,255,255,.25);
    text-shadow: 0 1px 3px rgba(0,0,0,.3);
}

[data-theme="light"] .collection-card__title {
    color: #fff;
    text-shadow: 0 1px 6px rgba(0,0,0,.4);
}

[data-theme="light"] .collection-card__description {
    color: rgba(255,255,255,.85);
    text-shadow: 0 1px 3px rgba(0,0,0,.3);
}

[data-theme="light"] .collection-card__stat-label {
    color: rgba(255,255,255,.6);
    text-shadow: 0 1px 2px rgba(0,0,0,.3);
}

[data-theme="light"] .collection-card__stat-value {
    color: #fff;
    text-shadow: 0 1px 3px rgba(0,0,0,.3);
}

[data-theme="light"] .collection-card__cta {
    color: #fff;
    border: 1px solid rgba(255,255,255,.25);
    text-shadow: 0 1px 2px rgba(0,0,0,.3);
}

[data-theme="light"] .collection-card__cta:hover {
    background: rgba(255,255,255,.15);
    border-color: rgba(255,255,255,.4);
}

[data-theme="light"] .collection-card__premium-frame {
    border-color: rgba(255,255,255,.3);
}

/* Prestige card — animated dark glass island */
[data-theme="light"] .collection-card--prestige {
    background: linear-gradient(135deg, rgba(20,20,30,.85) 0%, rgba(30,30,45,.7) 50%, rgba(20,20,30,.85) 100%);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255,255,255,.12);
    animation: prestigeBorder 4s ease-in-out infinite;
    box-shadow:
        0 8px 40px rgba(0,0,0,.2),
        inset 0 1px 0 rgba(255,255,255,.1),
        inset 0 -1px 0 rgba(255,255,255,.05);
    transition: box-shadow .4s ease, transform .4s ease;
}

[data-theme="light"] .collection-card--prestige:hover {
    box-shadow:
        0 20px 60px rgba(0,0,0,.3),
        inset 0 1px 0 rgba(255,255,255,.15),
        inset 0 -1px 0 rgba(255,255,255,.08);
    transform: translateY(-4px);
}

[data-theme="light"] .prestige-bg__gradient-orb {
    opacity: .5;
    filter: blur(50px);
}

[data-theme="light"] .prestige-bg__gradient-orb--1 {
    background: rgba(90,120,200,1);
    animation: prestigeOrb1 8s ease-in-out infinite;
}

[data-theme="light"] .prestige-bg__gradient-orb--2 {
    background: rgba(140,100,190,1);
    animation: prestigeOrb2 10s ease-in-out infinite;
}

[data-theme="light"] .prestige-shimmer {
    background: linear-gradient(
        45deg,
        transparent 20%,
        rgba(255,255,255,.08) 40%,
        rgba(255,255,255,.18) 50%,
        rgba(255,255,255,.08) 60%,
        transparent 80%
    );
    animation: prestigeShimmer 6s ease-in-out infinite;
}

[data-theme="light"] .collection-card__premium-frame {
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 8px;
}

[data-theme="light"] .prestige-title__word--collection {
    color: rgba(255,255,255,.6);
}

[data-theme="light"] .prestige-title__word--prestige {
    background: linear-gradient(135deg, #fff 0%, rgba(255,255,255,.7) 50%, #fff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

[data-theme="light"] .prestige-subtitle {
    color: rgba(255,255,255,.5);
}

[data-theme="light"] .prestige-description {
    color: rgba(255,255,255,.65);
}

[data-theme="light"] .prestige-stat__label {
    color: rgba(255,255,255,.4);
}

[data-theme="light"] .prestige-stat__value {
    color: #fff;
}

[data-theme="light"] .prestige-stat__icon {
    color: rgba(255,255,255,.5);
}

[data-theme="light"] .prestige-eyebrow__text {
    color: rgba(255,255,255,.5);
    letter-spacing: .1em;
}

[data-theme="light"] .prestige-eyebrow__line {
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.2));
}
[data-theme="light"] .prestige-eyebrow__line:last-child {
    background: linear-gradient(90deg, rgba(255,255,255,.2), transparent);
}

/* ── Collection Preview Footer ───────────────────────────── */
[data-theme="light"] .collection-preview__help-text {
    color: var(--text2);
}

[data-theme="light"] .collection-preview__contact-cta {
    color: var(--accent);
    border-color: rgba(0,0,0,.3);
    background: var(--glass);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
}

[data-theme="light"] .collection-preview__contact-cta:hover {
    background: var(--accent-hover);
    border-color: var(--accent);
}

/* ── Services Showcase — glass cards ─────────────────────── */
[data-theme="light"] .services-showcase {
    background: rgba(232,236,240,.5);
}

[data-theme="light"] .services-showcase__subtitle {
    color: var(--accent);
}

[data-theme="light"] .services-showcase__title {
    color: var(--text);
}

[data-theme="light"] .services-showcase__description {
    color: var(--text2);
}

[data-theme="light"] .services-showcase__card {
    background: var(--glass-strong);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    border: 1px solid var(--glass-border);
    box-shadow: var(--glass-shadow);
}

[data-theme="light"] .services-showcase__card:hover {
    background: rgba(255,255,255,.55);
    border-color: var(--card-hover-border);
    box-shadow: 0 12px 40px rgba(0,0,0,.08);
}

[data-theme="light"] .services-showcase__card-title {
    color: var(--text);
}

[data-theme="light"] .services-showcase__card-desc {
    color: var(--muted);
}

[data-theme="light"] .services-showcase__locations {
    border-top: 1px solid rgba(255,255,255,.3);
}

[data-theme="light"] .services-showcase__locations-label {
    color: var(--muted);
}

[data-theme="light"] .services-showcase__locations-links {
    gap: .5rem;
}

[data-theme="light"] .services-showcase__locations-links a {
    color: var(--text2);
    padding: .4rem 1rem;
    background: rgba(255,255,255,.15);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 100px;
    font-size: .8125rem;
    font-weight: 500;
    letter-spacing: .01em;
    transition: all .25s ease;
}

[data-theme="light"] .services-showcase__locations-links a:hover {
    color: var(--text);
    background: rgba(255,255,255,.4);
    border-color: rgba(255,255,255,.5);
    box-shadow: 0 4px 16px rgba(0,0,0,.06);
    transform: translateY(-1px);
}

/* ── Social Proof — glass testimonials ───────────────────── */
[data-theme="light"] .social-proof {
    background: transparent;
}

[data-theme="light"] .social-proof__google-badge {
    background: var(--glass);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    border: 1px solid var(--glass-border);
}

[data-theme="light"] .social-proof__google-rating {
    color: var(--text);
}

[data-theme="light"] .social-proof__review-count {
    color: var(--muted);
}

[data-theme="light"] .social-proof__eyebrow {
    color: var(--accent);
}

[data-theme="light"] .social-proof__title {
    color: var(--text);
}

[data-theme="light"] .testimonial {
    background: rgba(255,255,255,.12);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,.2);
    box-shadow: 0 4px 20px rgba(0,0,0,.04);
}

[data-theme="light"] .testimonial:hover {
    background: rgba(255,255,255,.2);
    border-color: rgba(255,255,255,.35);
    box-shadow: 0 8px 32px rgba(0,0,0,.06);
}

[data-theme="light"] .testimonial--featured {
    background: rgba(255,255,255,.15);
    border: 1px solid rgba(255,255,255,.3);
    box-shadow: 0 8px 32px rgba(0,0,0,.06), inset 0 1px 0 rgba(255,255,255,.3);
}

[data-theme="light"] .testimonial--quote-only {
    background: rgba(255,255,255,.15);
}

[data-theme="light"] .testimonial__quote {
    color: var(--text2);
}

[data-theme="light"] .testimonial__quote--large {
    color: var(--text);
}

[data-theme="light"] .testimonial__name {
    color: var(--text);
}

[data-theme="light"] .testimonial__meta {
    color: var(--muted);
}

[data-theme="light"] .trust-indicators {
    border-top: 1px solid rgba(255,255,255,.3);
    border-bottom: 1px solid rgba(255,255,255,.3);
}

[data-theme="light"] .trust-indicator__value {
    color: var(--accent);
}

[data-theme="light"] .trust-indicator__label {
    color: var(--muted);
}

[data-theme="light"] .social-proof__google-link {
    color: var(--text2);
}

[data-theme="light"] .social-proof__google-link:hover {
    color: var(--text);
}

/* ── About Artist — glass bio ────────────────────────────── */
[data-theme="light"] .about-artist {
    background: rgba(232,236,240,.5);
}

[data-theme="light"] .about-artist__bg-image-src {
    opacity: .04;
}

[data-theme="light"] .about-artist__bg-overlay {
    background: linear-gradient(
        to bottom,
        var(--bg2) 0%,
        rgba(232,236,240,.75) 50%,
        var(--bg2) 100%
    );
}

/* ── Section widths — 1200px in light ────────────────────── */
[data-theme="light"] .collection-preview__header,
[data-theme="light"] .collection-preview__grid,
[data-theme="light"] .collection-preview__footer,
[data-theme="light"] .services-showcase__container,
[data-theme="light"] .social-proof__container,
[data-theme="light"] .about-artist__container {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

[data-theme="light"] .about-artist__portrait-frame {
    max-width: 500px;
}

@media (min-width: 769px) {
    [data-theme="light"] .about-artist__grid {
        grid-template-columns: 1.2fr 1.3fr;
    }
}

[data-theme="light"] .about-artist__eyebrow {
    color: var(--accent);
}

[data-theme="light"] .about-artist__title {
    color: var(--text);
}

[data-theme="light"] .about-artist__subtitle {
    color: var(--text2);
}

[data-theme="light"] .about-artist__bio-content {
    color: var(--text2);
}

[data-theme="light"] .about-artist__bio-content a {
    color: var(--text);
    text-decoration: underline;
    text-decoration-color: rgba(0,0,0,.2);
    text-underline-offset: 3px;
    transition: text-decoration-color .2s;
}

[data-theme="light"] .about-artist__bio-content a:hover {
    text-decoration-color: var(--text);
}

[data-theme="light"] .about-artist__bio-heading {
    color: var(--text);
}

[data-theme="light"] .about-artist__quote {
    border-left: none;
    background: rgba(255,255,255,.12);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 16px;
    padding: 3rem 3.5rem;
    margin-top: 2.5rem;
    text-align: center;
    box-shadow: 0 8px 32px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.3);
}

[data-theme="light"] .about-artist__quote-text {
    color: var(--text);
}

[data-theme="light"] .about-artist__quote-author {
    color: var(--accent);
}

[data-theme="light"] .about-artist__cta-link {
    color: var(--accent);
    border-bottom-color: rgba(0,0,0,.3);
}

[data-theme="light"] .about-artist__cta-link:hover {
    border-bottom-color: var(--accent);
}

[data-theme="light"] .about-artist__credential-value {
    color: var(--accent);
}

[data-theme="light"] .about-artist__credential-label {
    color: var(--muted);
}

[data-theme="light"] .about-artist__credentials {
    border-top: 1px solid rgba(255,255,255,.3);
}

/* ── Footer — stays dark, fix hover colors ───────────────── */
[data-theme="light"] .site-footer__col-title {
    color: #f5f5f5;
}
[data-theme="light"] .site-footer__nav-link:hover,
[data-theme="light"] .site-footer__contact-item a:hover {
    color: #fff;
}

[data-theme="light"] .site-footer__social-link:hover {
    color: #fff;
}

[data-theme="light"] .site-footer__legal-link:hover {
    color: rgba(255,255,255,.7);
}

[data-theme="light"] .footer-credit,
[data-theme="light"] .footer-credit a {
    color: rgba(255,255,255,.5);
}

[data-theme="light"] .footer-credit a:hover {
    color: #fff;
}

/* ── CTA Buttons ─────────────────────────────────────────── */
[data-theme="light"] .hero__cta--primary {
    background: #fff;
    color: #1A1D23;
    box-shadow: 0 4px 16px rgba(255,255,255,.2);
}

[data-theme="light"] .hero__cta--primary:hover {
    box-shadow: 0 8px 24px rgba(255,255,255,.3);
}

[data-theme="light"] .prestige-cta {
    background: rgba(255,255,255,.12);
    color: #fff;
    border: 1px solid rgba(255,255,255,.2);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 4px 16px rgba(0,0,0,.15);
}

[data-theme="light"] .prestige-cta:hover {
    background: rgba(255,255,255,.2);
    border-color: rgba(255,255,255,.35);
    box-shadow: 0 8px 24px rgba(0,0,0,.25);
}

[data-theme="light"] .about-artist__cta-button {
    background: #1A1D23;
    color: #fff;
    box-shadow: 0 4px 16px rgba(0,0,0,.15);
}

[data-theme="light"] .about-artist__cta-button:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,.2);
}

[data-theme="light"] .site-footer__newsletter-button {
    background: #fff;
    color: #1A1D23;
}

[data-theme="light"] .hero__cta--secondary {
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.25);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* ── Mobile Menu — stays dark in both themes ─────────────── */

/* ══════════════════════════════════════════════════════════════
   MOBILE RESPONSIVE — Light Theme
   ══════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {

    [data-theme="light"] .header.is-scrolled .header__action--menu {
        color: var(--text);
    }

    [data-theme="light"] .collection-card {
        min-height: 320px;
    }
    [data-theme="light"] .collection-card--prestige {
        min-height: 360px;
    }

    [data-theme="light"] .collection-card__content {
        padding: 1rem 1.25rem;
    }

    [data-theme="light"] .collection-card__title {
        font-size: 1.25rem;
    }

    [data-theme="light"] .collection-card__description {
        font-size: .75rem;
        -webkit-line-clamp: 2;
        margin-bottom: .5rem;
    }

    [data-theme="light"] .collection-card__stats {
        gap: 1rem;
        margin-bottom: .75rem;
    }

    [data-theme="light"] .collection-card__cta {
        padding: .5rem 1rem;
        font-size: .75rem;
    }

    [data-theme="light"] .prestige-content {
        padding: 2rem 1.5rem;
    }

    [data-theme="light"] .prestige-description {
        font-size: .8125rem;
    }

    [data-theme="light"] .prestige-stats {
        gap: 1rem;
    }

    [data-theme="light"] .prestige-cta {
        padding: .75rem 2rem;
        font-size: .875rem;
    }

    [data-theme="light"] .services-showcase__card {
        padding: 1.25rem;
    }

    [data-theme="light"] .services-showcase__locations-links a {
        padding: .35rem .75rem;
        font-size: .75rem;
    }

    [data-theme="light"] .testimonial {
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
    }

    [data-theme="light"] .about-artist__quote {
        padding: 2rem 1.5rem;
        border-radius: 12px;
    }

    [data-theme="light"] .about-artist__portrait-frame {
        max-width: 100%;
    }

    [data-theme="light"] .about-artist__credentials {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    [data-theme="light"] .trust-indicators {
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }

    [data-theme="light"] .site-footer__newsletter-button {
        padding: .75rem;
    }
}

@media (max-width: 480px) {

    [data-theme="light"] .collection-card {
        min-height: 280px;
        border-radius: 12px;
    }

    [data-theme="light"] .collection-card--prestige {
        min-height: 320px;
    }

    [data-theme="light"] .collection-card__badge {
        font-size: .6875rem;
        padding: .2rem .5rem;
    }

    [data-theme="light"] .prestige-content {
        padding: 1.5rem 1rem;
    }

    [data-theme="light"] .prestige-title__word--prestige {
        font-size: clamp(1.75rem, 8vw, 2.5rem);
    }

    [data-theme="light"] .services-showcase__card,
    [data-theme="light"] .social-proof__google-badge,
    [data-theme="light"] .collection-preview__contact-cta {
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }

    [data-theme="light"] .about-artist__quote {
        padding: 1.5rem 1.25rem;
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
    }

    [data-theme="light"] body {
        background:
            radial-gradient(ellipse 90% 50% at 15% 20%, rgba(170,185,210,.6) 0%, transparent 60%),
            radial-gradient(ellipse 70% 60% at 85% 55%, rgba(190,175,210,.55) 0%, transparent 60%),
            radial-gradient(ellipse 80% 40% at 50% 85%, rgba(165,200,190,.55) 0%, transparent 60%),
            var(--bg);
    }
}
/* ============================================
   COOKIE CONSENT BANNER
   Boris Molinier Photographie - Dark Luxury Theme
   ============================================ */

/* Cookie Banner - Main Container */
.cookie-consent-banner {
  position: fixed;
  z-index: 10001;
  width: 100%;
  max-width: 100%;
  padding: 0;
  background: linear-gradient(135deg, rgba(26, 26, 26, 0.98) 0%, rgba(13, 13, 13, 0.98) 100%);
  color: #f5f5f5;
  box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(212, 175, 55, 0.2);
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.4s ease;
  bottom: 0;
  left: 0;
  right: 0;
  transform: translateY(100%);
  opacity: 0;
  border-top: 2px solid transparent;
  border-image: linear-gradient(90deg, transparent, #d4af37, transparent) 1;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.cookie-consent-banner.active {
  transform: translateY(0);
  opacity: 1;
  animation: slideUp 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes slideUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.cookie-consent-banner__content {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 2rem;
  padding: 1.75rem 2rem;
  position: relative;
}

/* Text Section */
.cookie-consent-banner__text {
  flex: 1;
  position: relative;
}

.cookie-consent-banner__title {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 0.75rem;
  font-size: 1.25rem;
  font-weight: 600;
  color: #f5f5f5;
  font-family: 'Montserrat', -apple-system, sans-serif;
  letter-spacing: -0.01em;
}

.cookie-consent-banner__title::before {
  content: '🍪';
  font-size: 1.5rem;
  animation: pulse 2s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.7; }
}

.cookie-consent-banner__description {
  display: block;
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #c4c4c4;
  font-family: 'Montserrat', -apple-system, sans-serif;
}

/* Actions Section */
.cookie-consent-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  align-items: center;
}

/* Buttons */
.cookie-consent-banner__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 8px;
  padding: 0.85rem 1.5rem;
  font-size: 0.9375rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  text-transform: none;
  letter-spacing: 0.02em;
  font-family: 'Montserrat', -apple-system, sans-serif;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  position: relative;
  overflow: hidden;
}

/* Accept Button - Gold Luxury */
.cookie-consent-banner__button--accept {
  background: linear-gradient(135deg, #d4af37 0%, #feca57 50%, #d4af37 100%);
  background-size: 200% 100%;
  color: #0d0d0d;
  box-shadow: 0 4px 15px rgba(212, 175, 55, 0.4);
  font-weight: 600;
}

.cookie-consent-banner__button--accept:hover {
  background-position: 100% 0;
  box-shadow: 0 6px 20px rgba(212, 175, 55, 0.6);
  transform: translateY(-2px) scale(1.02);
}

/* Reject Button - Subtle Dark */
.cookie-consent-banner__button--reject {
  background: rgba(255, 255, 255, 0.05);
  color: #c4c4c4;
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.cookie-consent-banner__button--reject:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #f5f5f5;
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-2px);
}

/* Settings Button - Outlined Gold */
.cookie-consent-banner__button--settings {
  background: transparent;
  color: #d4af37;
  border: 1px solid rgba(212, 175, 55, 0.4);
}

.cookie-consent-banner__button--settings:hover {
  background: rgba(212, 175, 55, 0.1);
  border-color: #d4af37;
  color: #feca57;
  transform: translateY(-2px);
}

/* Privacy Policy Link */
.cookie-consent-banner__link {
  display: inline-flex;
  align-items: center;
  color: #d4af37;
  text-decoration: none;
  margin-right: 1rem;
  font-size: 0.9375rem;
  font-weight: 400;
  transition: all 0.3s ease;
  font-family: 'Montserrat', -apple-system, sans-serif;
  cursor: pointer;
  position: relative;
  padding-bottom: 2px;
  border-bottom: 1px solid rgba(212, 175, 55, 0.3);
}

.cookie-consent-banner__link:hover {
  color: #feca57;
  border-bottom-color: #feca57;
}

/* ============================================
   PREFERENCES MODAL
   ============================================ */

.cookie-preferences-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  display: none;
  align-items: center;
  justify-content: center;
  font-family: 'Montserrat', -apple-system, sans-serif;
}

.cookie-preferences-modal.active {
  display: flex;
  animation: fadeIn 0.4s ease;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.cookie-preferences-modal__backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(13, 13, 13, 0.9);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.cookie-preferences-modal__container {
  position: relative;
  width: 90%;
  max-width: 850px;
  max-height: 90vh;
  overflow-y: auto;
  background: linear-gradient(135deg, #1a1a1a 0%, #0d0d0d 100%);
  color: #f5f5f5;
  border-radius: 16px;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(212, 175, 55, 0.2);
  display: flex;
  flex-direction: column;
  animation: modalSlideUp 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  border: 2px solid rgba(212, 175, 55, 0.2);
}

@keyframes modalSlideUp {
  from {
    opacity: 0;
    transform: translateY(50px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Modal Header */
.cookie-preferences-modal__header {
  padding: 2rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(212, 175, 55, 0.05);
}

.cookie-preferences-modal__title {
  margin: 0;
  font-size: 1.75rem;
  font-weight: 600;
  color: #f5f5f5;
  letter-spacing: -0.01em;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.cookie-preferences-modal__title::before {
  content: '⚙️';
  font-size: 1.75rem;
}

.cookie-preferences-modal__close {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 1.5rem;
  line-height: 1;
  padding: 0.5rem;
  cursor: pointer;
  color: #c4c4c4;
  border-radius: 8px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.cookie-preferences-modal__close:hover {
  color: #f5f5f5;
  background: rgba(255, 255, 255, 0.1);
  border-color: #d4af37;
  transform: rotate(90deg);
}

/* Modal Content */
.cookie-preferences-modal__content {
  padding: 2rem;
  flex: 1;
  overflow-y: auto;
}

.cookie-preferences-modal__description {
  margin: 0 0 1.5rem;
  line-height: 1.7;
  color: #c4c4c4;
  font-size: 0.9375rem;
}

.cookie-preferences-modal__categories {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Category Cards */
.cookie-preferences-modal__category {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.02);
}

.cookie-preferences-modal__category:hover {
  border-color: rgba(212, 175, 55, 0.3);
  transform: translateX(4px);
}

.cookie-preferences-modal__category-header {
  padding: 1.25rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: rgba(212, 175, 55, 0.05);
}

.cookie-preferences-modal__category-toggle {
  display: flex;
  align-items: center;
}

.cookie-preferences-modal__category-checkbox {
  margin-right: 0.75rem;
  accent-color: #d4af37;
  transform: scale(1.3);
  cursor: pointer;
  transition: transform 0.2s ease;
}

.cookie-preferences-modal__category-checkbox:hover {
  transform: scale(1.4);
}

.cookie-preferences-modal__category-label {
  margin-left: 0.5rem;
  font-weight: 600;
  font-size: 1.125rem;
  color: #f5f5f5;
  cursor: pointer;
}

.cookie-preferences-modal__required-badge {
  margin-left: 0.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  color: #d4af37;
  background: rgba(212, 175, 55, 0.1);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.cookie-preferences-modal__category-description {
  padding: 0 1.25rem 1.25rem;
  margin: 0;
  line-height: 1.7;
  font-size: 0.9375rem;
  color: #8a8a8a;
}

.cookie-preferences-modal__examples-title {
  margin: 1rem 0 0.5rem;
  font-weight: 600;
  color: #d4af37;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.cookie-preferences-modal__examples-list {
  margin: 0.5rem 0;
  padding-left: 1.5rem;
}

.cookie-preferences-modal__example-item {
  margin-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #8a8a8a;
}

.cookie-preferences-modal__example-item strong {
  color: #c4c4c4;
}

/* Modal Footer */
.cookie-preferences-modal__footer {
  padding: 1.5rem 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  display: flex;
  justify-content: flex-end;
  gap: 1rem;
  background: rgba(212, 175, 55, 0.03);
}

.cookie-preferences-modal__button {
  border: none;
  border-radius: 8px;
  padding: 0.85rem 1.5rem;
  font-size: 0.9375rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  min-width: 120px;
}

.cookie-preferences-modal__button--save {
  background: linear-gradient(135deg, #d4af37 0%, #feca57 50%, #d4af37 100%);
  background-size: 200% 100%;
  color: #0d0d0d;
  box-shadow: 0 4px 15px rgba(212, 175, 55, 0.4);
  font-weight: 600;
}

.cookie-preferences-modal__button--save:hover {
  background-position: 100% 0;
  box-shadow: 0 6px 20px rgba(212, 175, 55, 0.6);
  transform: translateY(-2px) scale(1.02);
}

.cookie-preferences-modal__button--cancel {
  background: rgba(255, 255, 255, 0.05);
  color: #c4c4c4;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.cookie-preferences-modal__button--cancel:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #f5f5f5;
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-2px);
}

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

@media (max-width: 768px) {
  .cookie-consent-banner__content {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem 1rem;
  }

  .cookie-consent-banner__actions {
    width: 100%;
    flex-direction: column;
  }

  .cookie-consent-banner__button {
    width: 100%;
    justify-content: center;
  }

  .cookie-preferences-modal__container {
    width: 95%;
    max-height: 95vh;
    border-radius: 12px;
  }

  .cookie-preferences-modal__header,
  .cookie-preferences-modal__content,
  .cookie-preferences-modal__footer {
    padding: 1.5rem 1rem;
  }

  .cookie-preferences-modal__title {
    font-size: 1.5rem;
  }

  .cookie-preferences-modal__footer {
    flex-direction: column-reverse;
  }

  .cookie-preferences-modal__button {
    width: 100%;
  }
}

/* ============================================
   ACCESSIBILITY
   ============================================ */

@media (prefers-reduced-motion: reduce) {
  .cookie-consent-banner,
  .cookie-preferences-modal__container {
    animation: none;
    transition-duration: 0.01ms;
  }
}

/* Focus Styles */
.cookie-consent-banner__button:focus-visible,
.cookie-preferences-modal__button:focus-visible,
.cookie-preferences-modal__close:focus-visible {
  outline: 2px solid #d4af37;
  outline-offset: 2px;
}
