/* Mobile visual match pass — keeps desktop untouched, brings phone layouts closer to desktop compositions. */
@media (max-width: 760px){
  html,body{overflow-x:hidden!important;background:#fff8f5}
  body{padding:0!important}
  .container{width:calc(100% - 40px)!important;max-width:none!important;margin-inline:20px!important}

  /* HEADER — compact, editorial, same brand hierarchy as desktop */
  .luxe-page .luxe-header{position:relative;z-index:100;background:linear-gradient(90deg,#f9dfdc,#fff5f1 58%,#f6d9d8)!important}
  .luxe-page .luxe-mobile{min-height:150px!important;padding:20px 0 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;gap:8px 12px!important}
  .luxe-page .luxe-mobile .luxe-brand{width:auto!important;height:auto!important;display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important}
  .luxe-page .luxe-mobile .luxe-brand img{width:76px!important;height:76px!important;flex:0 0 76px!important}
  .luxe-page .luxe-mobile .brand-copy{min-width:0!important}
  .luxe-page .luxe-mobile .brand-copy strong{font-size:clamp(20px,6.4vw,29px)!important;line-height:1!important;white-space:nowrap!important;letter-spacing:.01em!important}
  .luxe-page .luxe-mobile .brand-copy small{font-size:9px!important;letter-spacing:.15em!important;margin-top:8px!important;white-space:nowrap!important}
  .luxe-page .luxe-mobile .menu{grid-column:2!important;grid-row:1!important;font-size:30px!important;line-height:1!important;padding:8px!important;color:#a74759!important;background:transparent!important;border:0!important}
  .luxe-page .mobile-cart{grid-column:1/-1!important;grid-row:2!important;width:100%!important;padding:0!important;display:flex!important;justify-content:flex-end!important}
  .luxe-page .cart-link{padding:10px 14px!important;font-size:13px!important;background:#fff9f6!important;border-color:#cda3ac!important}
  .luxe-page .luxe-mobile .navlinks{top:100%!important;left:0!important;right:0!important;background:rgba(255,249,246,.985)!important;padding:18px 26px 24px!important;border-top:1px solid rgba(143,53,71,.14)!important;box-shadow:0 20px 40px rgba(53,22,29,.12)!important;max-height:62vh!important;overflow:auto!important}
  .luxe-page .luxe-mobile .navlinks.open{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important}
  .luxe-page .luxe-mobile .navlinks a{padding:13px 8px!important;margin:0!important;font:700 12px Arial,sans-serif!important;letter-spacing:.08em!important;text-transform:uppercase!important;border-bottom:1px solid rgba(143,53,71,.08)!important}

  /* HERO — compact desktop-like composition, not a giant phone block */
  .luxe-page .page-hero{min-height:310px!important;padding:58px 0 50px!important;background:linear-gradient(105deg,#fff8f4 0 58%,#f1ced2 100%)!important;overflow:hidden!important}
  .luxe-page .page-hero:before{background-size:320px auto!important;background-position:115% 50%!important;opacity:.10!important}
  .luxe-page .page-hero:after{display:block!important;right:-70px!important;top:40px!important;width:210px!important;height:210px!important;border:1px solid rgba(201,147,114,.28)!important;box-shadow:0 0 0 18px rgba(255,255,255,.12)!important}
  .luxe-page .page-hero .container{position:relative;z-index:2!important}
  .luxe-page .page-hero h1{font-size:clamp(42px,12vw,60px)!important;line-height:.98!important;max-width:86%!important;margin:10px 0 16px!important}
  .luxe-page .page-hero p{max-width:82%!important;font-size:14px!important;line-height:1.55!important}
  .luxe-page .page-hero .eyebrow{font-size:10px!important;letter-spacing:.22em!important}

  /* SECTIONS — same editorial rhythm as desktop */
  .luxe-page .section{padding:58px 0!important}
  .luxe-page .section-title{margin-bottom:28px!important}
  .luxe-page .section h2,.luxe-page .section-title h2{font-size:clamp(34px,10vw,48px)!important;line-height:1.02!important;letter-spacing:-.025em!important}
  .luxe-page .two{grid-template-columns:1fr!important;gap:34px!important}
  .luxe-page .two img{border-radius:54px 8px 54px 8px!important;box-shadow:0 20px 50px rgba(78,31,40,.15)!important}
  .luxe-page .pink,.luxe-page .white{position:relative!important;overflow:hidden!important}
  .luxe-page .pink:before,.luxe-page .white:before{content:"DISCERNMENT";position:absolute;right:-45px;top:14px;font:72px Georgia,serif;letter-spacing:.04em;color:rgba(143,53,71,.035);white-space:nowrap;pointer-events:none}

  /* CARDS — retain luxury desktop card treatment, readable at phone width */
  .luxe-page .cards{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;background:transparent!important}
  .luxe-page .card{padding:26px 24px!important;border-radius:30px 6px 30px 6px!important;box-shadow:0 16px 36px rgba(91,38,48,.07)!important}
  .luxe-page .card h3{font-size:27px!important;line-height:1.08!important}
  .luxe-page .card p{font-size:14px!important;line-height:1.55!important}
  .luxe-page .btn{min-height:46px!important;padding:12px 16px!important;border-radius:999px!important;font-size:11px!important;letter-spacing:.08em!important}

  /* ACADEMY — compact, consistent cards and safe controls */
  body.page-academy .page-hero{min-height:260px!important;padding:42px 0 38px!important}
  body.page-academy .page-hero h1{font-size:48px!important}
  body.page-academy .section{padding:38px 0!important}
  body.page-academy .academy-account-note{padding:24px 22px!important;border-radius:28px 6px 28px 6px!important;background:linear-gradient(130deg,#fff8f4,#f3d5d9)!important}
  body.page-academy .academy-welcome-action{align-items:stretch!important}
  body.page-academy .academy-welcome-action .btn{width:100%!important}
  body.page-academy .academy-grid{gap:18px!important}
  body.page-academy .academy-grid .card{padding:24px!important;border-radius:30px 6px 30px 6px!important}
  body.page-academy .academy-grid .card h3{font-size:25px!important;min-height:0!important}
  body.page-academy .academy-grid .card p{font-size:13px!important;line-height:1.5!important}
  body.page-academy .academy-grid .card p:last-of-type{font-size:12px!important}
  body.page-academy .academy-grid .card .catalog-price{font-size:31px!important;margin:8px 0!important}
  body.page-academy select{min-height:52px!important;font-size:13px!important}
  body.page-academy .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;border:1px solid rgba(143,53,71,.12)!important;border-radius:18px!important;background:rgba(255,255,255,.5)!important}
  body.page-academy .compare{min-width:720px!important;margin:0!important}
  body.page-academy .compare th:first-child,body.page-academy .compare td:first-child{position:sticky!important;left:0!important;z-index:2!important;background:#fff8f5!important;min-width:240px!important;box-shadow:8px 0 14px rgba(80,35,43,.05)!important}

  /* CONTACT + ACCOUNT — eliminate blank bands and keep content framed */
  .luxe-page .contact-grid{border-radius:34px 6px 34px 6px!important;background:linear-gradient(145deg,#f2cfd4,#fff8f5)!important;overflow:hidden!important}
  .luxe-page .contact-card{padding:30px 24px!important}
  .account-wrap{margin:34px auto!important;padding:0 20px!important}
  .account-wrap .card{border-radius:30px 6px 30px 6px!important;padding:24px!important}
  .account-wrap input:not([type=checkbox]){min-height:52px!important;border-radius:16px!important}

  /* FOOTER — approved desktop-style composition: branding top, columns below */
  .luxe-footer{padding:48px 0 26px!important;background:linear-gradient(120deg,#120d0f,#28181d 58%,#321d22)!important;overflow:hidden!important}
  .luxe-footer:before{right:-110px!important;top:-70px!important;width:360px!important;height:360px!important;opacity:.075!important}
  .luxe-footer:after{display:none!important}
  .luxe-footer-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:26px 24px!important}
  .luxe-footer-grid>div:first-child{grid-column:1/-1!important;padding-bottom:20px!important;border-bottom:1px solid rgba(234,190,195,.25)!important;text-align:center!important}
  .luxe-footer-grid>div:first-child img{width:118px!important;height:118px!important;object-fit:contain!important;margin:0 auto 4px!important;opacity:.82!important;mix-blend-mode:screen!important}
  .luxe-footer-grid>div:first-child p{margin:5px auto!important;max-width:420px!important;font-size:12px!important;line-height:1.45!important;color:#cdbdbf!important}
  .luxe-footer-grid>div:first-child p em{font:italic 18px Georgia,serif!important;color:#e8b9be!important}
  .luxe-footer-grid h4{font-size:10px!important;letter-spacing:.25em!important;color:#e8b9be!important;margin:0 0 14px!important}
  .luxe-footer-grid a{font-size:13px!important;line-height:1.35!important;margin:0 0 9px!important;color:#eadfe1!important}
  .luxe-copy{margin-top:26px!important;padding-top:18px!important;border-top:1px solid rgba(234,190,195,.18)!important;text-align:center!important;font-size:10px!important;color:#bcaeb0!important}
}

@media (max-width: 390px){
  .luxe-page .luxe-mobile .brand-copy strong{font-size:20px!important}
  .luxe-page .luxe-mobile .luxe-brand img{width:68px!important;height:68px!important;flex-basis:68px!important}
  .luxe-footer-grid{gap:22px 14px!important}
  .luxe-footer-grid a{font-size:12px!important}
}
/* Homepage actual sections: keep the desktop composition on phone, scaled/reflowed rather than stacked endlessly. */
@media (max-width:760px){
  .homepage-reference{width:100%!important;min-width:0!important;overflow:hidden!important;background:#f8e4df!important}
  .homepage-reference>img{width:100%!important;height:auto!important;display:block!important}
  .homepage-reference .v12top{position:relative!important;min-width:0!important;width:100%!important;height:auto!important;padding:10px 12px!important;gap:12px!important;overflow-x:auto!important;background:#fff3ef!important}
  .homepage-reference .v12top a{font-size:9px!important;flex:0 0 auto!important}
  .homepage-reference .v12top .spacer{display:none!important}
  .home-more .hm-wrap{width:calc(100% - 40px)!important;margin:0 20px!important}
  .home-more .academy-showcase{padding:44px 0 50px!important}
  .home-more .academy-intro{grid-template-columns:.9fr 1.1fr!important;gap:18px!important;align-items:end!important;margin-bottom:24px!important}
  .home-more .hm-title{font-size:34px!important;line-height:1.01!important;margin:8px 0 0!important}
  .home-more .academy-intro p{font-size:12px!important;line-height:1.5!important;margin:0 0 14px!important}
  .home-more .hm-link{padding:11px 15px!important;font-size:9px!important}
  .home-more .academy-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .home-more .academy-card{min-height:205px!important;padding:18px!important;border-radius:24px!important}
  .home-more .academy-card:nth-child(3){grid-column:1/-1!important;min-height:170px!important}
  .home-more .academy-card h3{font-size:19px!important}
  .home-more .academy-card p{font-size:11px!important;line-height:1.45!important}
  .home-more .academy-card span{font-size:9px!important}
  .home-more .service-area{padding:50px 0!important}
  .home-more .area-grid{grid-template-columns:.9fr 1.1fr!important;gap:20px!important;align-items:start!important}
  .home-more .area-title{font-size:33px!important;margin:8px 0 12px!important}
  .home-more .area-copy{font-size:11.5px!important;line-height:1.5!important}
  .home-more .area-list{grid-template-columns:1fr 1fr!important;gap:9px!important}
  .home-more .area-item{padding:13px 11px!important;min-height:118px!important}
  .home-more .area-item strong{font-size:16px!important;line-height:1.1!important}
  .home-more .area-item span{font-size:9.5px!important;line-height:1.4!important}
  .home-more .home-cta{padding:48px 0!important}
  .home-more .home-cta h2{font-size:36px!important}
  .home-more .home-cta p{font-size:13px!important;line-height:1.55!important;margin-bottom:20px!important}
  .home-more .home-footer{padding:44px 0 24px!important;background:linear-gradient(120deg,#110d0f,#2a191e 62%,#321d22)!important}
  .home-more .home-footer:before{width:290px!important;height:290px!important;left:-80px!important;top:-65px!important;opacity:.065!important}
  .home-more .footer-grid{grid-template-columns:1fr 1fr!important;gap:24px 22px!important}
  .home-more .footer-grid>div:first-child{grid-column:1/-1!important;text-align:center!important;padding-bottom:18px!important;border-bottom:1px solid rgba(255,255,255,.14)!important}
  .home-more .footer-brand{font-size:33px!important}
  .home-more .footer-tag{font-size:20px!important;margin:6px 0!important}
  .home-more .footer-copy{font-size:11.5px!important;margin:0 auto!important;max-width:390px!important}
  .home-more .footer-head{font-size:10px!important;margin-bottom:12px!important}
  .home-more .footer-grid a{font-size:12px!important;margin-bottom:8px!important}
  .home-more .footer-bottom{margin-top:24px!important;padding-top:16px!important;font-size:10px!important}
}
@media(max-width:410px){
  .home-more .academy-intro,.home-more .area-grid{grid-template-columns:1fr!important}
  .home-more .academy-grid{grid-template-columns:1fr 1fr!important}
  .home-more .academy-card:nth-child(3){grid-column:1/-1!important}
}


/* FINAL MOBILE NAV FIX — keep inner-page tabs visible like the homepage instead of requiring the hamburger menu. */
@media (max-width:760px){
  .luxe-page .luxe-mobile{
    min-height:0!important;
    padding:16px 14px 0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    gap:10px 10px!important;
    background:linear-gradient(90deg,#f9dfdc,#fff5f1 58%,#f6d9d8)!important;
  }
  .luxe-page .luxe-mobile .luxe-brand{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .luxe-page .luxe-mobile .luxe-brand img{
    width:70px!important;height:70px!important;flex-basis:70px!important;
  }
  .luxe-page .luxe-mobile .brand-copy strong{
    font-size:clamp(20px,6vw,28px)!important;
  }
  .luxe-page .luxe-mobile .brand-copy small{
    font-size:9px!important;margin-top:6px!important;
  }
  .luxe-page .luxe-mobile .menu{display:none!important}
  .luxe-page .mobile-cart{
    grid-column:2!important;
    grid-row:1!important;
    width:auto!important;
    align-self:center!important;
    justify-self:end!important;
    padding:0!important;
  }
  .luxe-page .cart-link{
    white-space:nowrap!important;
    padding:9px 13px!important;
    font-size:12px!important;
  }
  .luxe-page .luxe-mobile .navlinks,
  .luxe-page .luxe-mobile .navlinks.open{
    position:static!important;
    grid-column:1/-1!important;
    grid-row:2!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    gap:0!important;
    width:100%!important;
    max-height:none!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:10px 2px 12px!important;
    margin:0!important;
    background:transparent!important;
    border-top:1px solid rgba(143,53,71,.14)!important;
    border-bottom:0!important;
    box-shadow:none!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    white-space:nowrap!important;
  }
  .luxe-page .luxe-mobile .navlinks::-webkit-scrollbar{display:none!important}
  .luxe-page .luxe-mobile .navlinks a{
    flex:0 0 auto!important;
    padding:7px 10px!important;
    margin:0!important;
    border:0!important;
    font:700 9.5px/1 Arial,sans-serif!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
    color:#1d1719!important;
  }
  .luxe-page .luxe-mobile .navlinks a:first-child{padding-left:2px!important}
  .luxe-page .luxe-mobile .navlinks .cart-count{display:none!important}
}
@media (max-width:390px){
  .luxe-page .luxe-mobile{padding-left:10px!important;padding-right:10px!important}
  .luxe-page .luxe-mobile .luxe-brand img{width:62px!important;height:62px!important;flex-basis:62px!important}
  .luxe-page .luxe-mobile .brand-copy strong{font-size:19px!important}
  .luxe-page .luxe-mobile .navlinks a{font-size:9px!important;padding-inline:8px!important}
}

/* CONTACT CONTRAST FIX — richer blush panel so white contact details stay readable on phones. */
@media (max-width:760px){
  body.page-contact .contact-grid{
    background:linear-gradient(180deg,#8f3f52 0 48%,#f6dfe1 48% 100%)!important;
    border:1px solid rgba(115,45,60,.18)!important;
    box-shadow:0 22px 55px rgba(72,28,38,.12)!important;
  }
  body.page-contact .contact-card:first-child{
    background:linear-gradient(145deg,#87384a,#a94f63)!important;
    color:#fffaf8!important;
  }
  body.page-contact .contact-card:first-child h2,
  body.page-contact .contact-card:first-child p,
  body.page-contact .contact-card:first-child b,
  body.page-contact .contact-card:first-child a{
    color:#fffaf8!important;
  }
  body.page-contact .contact-card:first-child a{
    text-decoration-color:rgba(255,250,248,.75)!important;
    text-underline-offset:3px!important;
  }
  body.page-contact .contact-card:nth-child(2){
    background:#f8e7e7!important;
    color:#2c2023!important;
  }
}
