/*
Theme Name: La Maison Brik Invitations
Theme URI: https://invite.lamaisonbrik.com
Author: La Maison Brik
Description: Conversion WordPress fidèle du concept HTML éditorial La Maison Brik.
Version: 3.5.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: lmb-invitations-theme
*/

:root{
    --paper:#FBF5EC;
    --paper-deep:#F3E9DA;
    --ink:#2E241D;
    --ink-soft:#6B5C4F;
    --blush:#E3A6AE;
    --sauge:#7C8E6B;
    --gold:#B8925A;
    --wine:#5C2A2E;
    --line: rgba(46,36,29,0.14);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:'Inter', sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  .display{font-family:'Fraunces', serif;}
  .eyebrow{
    font-size:11px; letter-spacing:.18em; text-transform:uppercase;
    color:var(--wine); font-weight:600;
  }
  a{color:inherit; text-decoration:none;}

  .seal{
    display:inline-flex; align-items:center; justify-content:center;
    width:34px; height:34px; border-radius:50%;
    background:var(--wine); color:var(--paper);
    font-family:'Fraunces', serif; font-style:italic; font-weight:600; font-size:15px;
    flex-shrink:0;
    box-shadow: 0 2px 0 rgba(92,42,46,0.25);
  }

  /* ---------- header ---------- */
  .site-header{
    position:sticky; top:0; z-index:2147483646;
    background:rgba(251,245,236,0.86);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav-wrap{
    max-width:1180px; margin:0 auto; padding:18px 32px;
    display:flex; align-items:center; justify-content:space-between;
  }
  .logo{display:flex; align-items:center; gap:10px; font-size:17px; letter-spacing:.02em;}
  .logo b{font-weight:600;}
  nav ul{display:flex; gap:34px; list-style:none;}
  nav a{font-size:14px; color:var(--ink-soft); transition:color .2s;}
  nav a:hover{color:var(--wine);}
  .nav-icons{display:flex; gap:18px; align-items:center; font-size:14px; color:var(--ink-soft);}

  /* ---------- hero : atelier vivant ---------- */
  .hero{
    position:relative;
    max-width:1180px; margin:0 auto; padding:64px 32px 30px;
    display:grid; grid-template-columns:0.95fr 1.05fr; gap:50px; align-items:center;
    overflow:visible;
  }
  .hero-dots{position:absolute; inset:-40px 0 0 0; z-index:0; pointer-events:none;}
  .hero-dots span{
    position:absolute; width:6px; height:6px; border-radius:50%; background:var(--gold);
    opacity:.5; animation: float 7s ease-in-out infinite;
  }
  @keyframes float{
    0%,100%{transform:translateY(0);}
    50%{transform:translateY(-16px);}
  }
  .hero-text{position:relative; z-index:2;}
  .hero h1{
    font-size:52px; line-height:1.06; font-weight:400; letter-spacing:-.01em;
    margin:18px 0 22px;
  }
  .hero h1 em{font-style:italic; color:var(--wine); font-weight:500;}
  .hero p.lede{font-size:16.5px; color:var(--ink-soft); max-width:420px; line-height:1.6; margin-bottom:32px;}
  .cta-row{display:flex; gap:16px; align-items:center; flex-wrap:wrap;}
  .btn-primary{
    background:var(--wine); color:var(--paper); padding:15px 28px; border-radius:40px;
    font-size:14px; font-weight:500; display:inline-flex; align-items:center; gap:10px;
    transition:transform .25s ease, box-shadow .25s ease;
    box-shadow:0 6px 18px rgba(92,42,46,0.22);
    border:none; cursor:pointer;
  }
  .btn-primary:hover{transform:translateY(-2px); box-shadow:0 10px 22px rgba(92,42,46,0.28);}
  .btn-ghost{font-size:14px; color:var(--ink); border-bottom:1px solid var(--ink); padding-bottom:2px;}

  /* ---------- hero: live invitation demo ---------- */
  .demo-stage{position:relative; z-index:2; height:520px;}
  .demo-eyebrow{
    display:flex; align-items:center; gap:8px; font-size:11px; letter-spacing:.14em;
    text-transform:uppercase; color:var(--ink-soft); margin-bottom:14px; padding-left:6px;
  }
  .demo-eyebrow .dot{width:7px; height:7px; border-radius:50%; background:var(--sauge); animation:pulse 1.8s infinite;}
  @keyframes pulse{0%,100%{opacity:1;} 50%{opacity:.35;}}

  .card-stack{position:relative; height:460px;}
  .stack-card{
    position:absolute; inset:0; background:var(--paper); border:1px solid var(--line);
    border-radius:3px 22px 3px 22px; box-shadow:0 18px 40px -20px rgba(46,36,29,0.35);
  }
  .stack-card.back-1{transform:rotate(-6deg) translateY(10px); background:var(--paper-deep); z-index:1;}
  .stack-card.back-2{transform:rotate(5deg) translateY(16px); background:#EFE3CD; z-index:0;}
  .stack-card.front{
    z-index:3; padding:44px 40px; display:flex; flex-direction:column; align-items:center;
    justify-content:center; text-align:center; transition:transform .3s ease;
  }
  .stack-card.front:hover{transform:translateY(-4px);}
  .stack-card.front::before{
    content:''; position:absolute; top:22px; left:22px; right:22px; bottom:22px;
    border:1px solid var(--line); border-radius:2px 16px 2px 16px; pointer-events:none;
  }
  .demo-label{font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); margin-bottom:22px;}
  .demo-names{
    font-family:'Fraunces', serif; font-style:italic; font-size:34px; color:var(--ink);
    line-height:1.3; outline:none; caret-color:var(--wine); min-width:60px;
    border-bottom:1px dashed transparent; transition:border-color .2s;
  }
  .demo-names:hover, .demo-names:focus{border-bottom:1px dashed var(--gold);}
  .demo-amp{font-family:'Fraunces',serif; font-style:italic; color:var(--gold); font-size:24px; margin:0 10px;}
  .demo-date{
    margin-top:16px; font-size:12.5px; letter-spacing:.08em; text-transform:uppercase;
    color:var(--ink-soft); outline:none; caret-color:var(--wine);
    border-bottom:1px dashed transparent; padding-bottom:2px;
  }
  .demo-date:hover, .demo-date:focus{border-bottom:1px dashed var(--gold);}
  .demo-seal{
    margin-top:26px; width:46px; height:46px; border-radius:50%; background:var(--wine);
    display:flex; align-items:center; justify-content:center; color:var(--paper);
    font-family:'Fraunces',serif; font-style:italic; font-size:18px;
    transition:transform .4s cubic-bezier(.34,1.56,.64,1);
  }
  .demo-seal.pop{transform:scale(1.25) rotate(-8deg);}
  .demo-hint{
    margin-top:22px; font-size:11.5px; color:var(--ink-soft); display:flex; align-items:center; gap:6px;
  }
  .demo-hint svg{width:13px; height:13px;}

  /* ---------- collection ---------- */
  .section{max-width:1180px; margin:0 auto; padding:90px 32px;}
  .section-head{max-width:560px; margin-bottom:40px;}
  .section-head h2{font-size:36px; font-weight:400; margin-top:14px; line-height:1.15;}
  .section-head h2 em{font-style:italic; color:var(--wine);}
  .section-head p{color:var(--ink-soft); margin-top:14px; font-size:15px; line-height:1.6;}

  .filter-row{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:44px;}
  .filter-pill{
    padding:9px 18px; border-radius:30px; border:1px solid var(--line);
    font-size:13px; color:var(--ink-soft); background:transparent; cursor:pointer;
    transition:all .2s ease;
  }
  .filter-pill:hover{border-color:var(--gold); color:var(--ink);}
  .filter-pill.active{background:var(--wine); border-color:var(--wine); color:var(--paper);}

  .collection-grid{
    display:grid; grid-template-columns:repeat(3, 1fr); gap:30px;
  }
  .invite-card{
    position:relative; background:var(--paper); border:1px solid var(--line);
    border-radius:2px 18px 2px 18px;
    padding:0; overflow:hidden;
    transition:transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease, opacity .3s ease;
    box-shadow:0 10px 24px -14px rgba(46,36,29,0.25);
  }
  .invite-card.hidden-item{display:none;}
  .invite-card:nth-child(odd){transform:rotate(-0.5deg);}
  .invite-card:nth-child(even){transform:rotate(0.5deg);}
  .invite-card:hover{transform:translateY(-8px) rotate(0deg); box-shadow:0 26px 40px -18px rgba(46,36,29,0.32);}
  .invite-thumb{
    height:220px; position:relative;
    display:flex; align-items:center; justify-content:center;
    font-family:'Fraunces',serif; font-style:italic; font-size:24px; color:var(--paper);
    text-align:center; padding:0 20px;
  }
  .thumb-ivoire{background:linear-gradient(135deg,#EADFCC,#D8C8AC);}
  .thumb-eden{background:linear-gradient(135deg,#8A9C74,#5F7452);}
  .thumb-blush{background:linear-gradient(135deg,#E9B7BD,#CE8791);}
  .thumb-gold{background:linear-gradient(135deg,#D3B379,#B8925A);}
  .thumb-nuit{background:linear-gradient(135deg,#6E5548,#3E2E27);}
  .invite-thumb::after{
    content:''; position:absolute; top:14px; right:14px; width:26px; height:26px;
    border-radius:50%; background:var(--wine); opacity:.9;
  }
  .invite-body{padding:20px 22px 24px; display:flex; align-items:center; justify-content:space-between;}
  .invite-body .name{font-size:15px; font-weight:500;}
  .invite-body .tag{font-size:11.5px; color:var(--ink-soft); margin-top:3px;}
  .invite-body .price{font-family:'Fraunces',serif; font-style:italic; color:var(--wine); font-size:15px;}

  /* ---------- quote band ---------- */
  .quote-band{
    background:var(--wine); color:var(--paper);
    padding:100px 32px; text-align:center; position:relative;
  }
  .quote-band .eyebrow{color:var(--blush);}
  .quote-band blockquote{
    max-width:680px; margin:22px auto 0; font-family:'Fraunces',serif; font-style:italic;
    font-size:32px; line-height:1.35; font-weight:400;
  }

  /* ---------- steps ---------- */
  .steps-wrap{display:flex; gap:0; justify-content:center; padding-top:20px; flex-wrap:wrap;}
  .step-card{
    width:280px; background:var(--paper); border:1px solid var(--line);
    border-radius:4px 16px 4px 16px; padding:32px 26px; margin:0 -18px;
    box-shadow:0 14px 30px -16px rgba(46,36,29,0.3);
    transition:transform .3s ease;
  }
  .step-card:nth-child(1){transform:rotate(-4deg);}
  .step-card:nth-child(2){transform:rotate(0deg); z-index:2; margin-top:-14px;}
  .step-card:nth-child(3){transform:rotate(4deg);}
  .step-card:hover{transform:translateY(-6px) rotate(0deg); z-index:5;}
  .step-card .seal{margin-bottom:18px;}
  .step-card h3{font-family:'Fraunces',serif; font-weight:500; font-size:19px; margin-bottom:8px;}
  .step-card p{font-size:13.5px; color:var(--ink-soft); line-height:1.6;}

  /* ---------- footer ---------- */
  footer{background:var(--paper-deep); border-top:1px solid var(--line); padding:64px 32px 32px;}
  .footer-wrap{max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px;}
  .footer-wrap h4{font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-soft); margin-bottom:16px;}
  .footer-wrap ul{list-style:none;}
  .footer-wrap li{margin-bottom:10px; font-size:14px;}
  .footer-wrap li a:hover{color:var(--wine);}
  .footer-bottom{max-width:1180px; margin:50px auto 0; padding-top:22px; border-top:1px solid var(--line); font-size:12px; color:var(--ink-soft); display:flex; justify-content:space-between;}

  @media (max-width:900px){
    .hero{grid-template-columns:1fr; padding-top:36px;}
    .hero h1{font-size:36px;}
    nav ul{display:none;}
    .collection-grid{grid-template-columns:1fr 1fr;}
    .footer-wrap{grid-template-columns:1fr; gap:28px;}
    .step-card{margin:10px 0 !important; transform:none !important; width:100%; max-width:340px;}
    .quote-band blockquote{font-size:24px;}
    .demo-stage{height:420px;}
    .card-stack{height:360px;}
  }
  @media (max-width:600px){
    .collection-grid{grid-template-columns:1fr;}
  }

/* WordPress integration: the rules above are copied verbatim from the supplied
   HTML. These additions only connect WordPress markup and dynamic content. */
body::before{
  content:""; position:fixed; z-index:9999; inset:0; pointer-events:none;
  opacity:.045; mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
}
.site-main{position:relative;z-index:0;isolation:isolate;min-height:60vh;}
.site-header{position:sticky;top:0;z-index:2147483646;isolation:isolate;background:rgba(251,245,236,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.lmb-shop-hero,.lmb-faq-header{position:relative;z-index:0;}
.lmb-configurator-page .lmb-builder-toolbar{position:relative;z-index:10;}
.site-header .logo>a{display:flex;align-items:center;gap:10px;}
.custom-logo{display:block;width:auto;max-height:46px;}
.menu-toggle{display:none;border:0;background:transparent;color:var(--ink);font-size:22px;}
.primary-navigation .menu{display:flex;gap:34px;list-style:none;}
.primary-navigation a{font-size:14px;color:var(--ink-soft);transition:color .2s;}
.primary-navigation a:hover{color:var(--wine);}
.hero-media{overflow:hidden;border-radius:3px 22px 3px 22px;box-shadow:0 18px 40px -20px rgba(46,36,29,.35);}
.hero-media img,.hero-media video{display:block;width:100%;height:100%;object-fit:cover;}
.invite-thumb.has-image{background-position:center;background-size:cover;}
.invite-thumb.has-image::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(46,36,29,.12),transparent 55%);}
.invite-card{color:inherit;text-decoration:none;}
.invite-body .tag{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.invite-body .price .amount{font:inherit;color:inherit;}
.centered{margin-left:auto;margin-right:auto;text-align:center;}
.footer-logo{margin-bottom:14px;}
.footer-logo .lmb-brand-logo-image,.lmb-footer-logo-image{display:block;width:auto;max-width:min(220px,100%);max-height:72px;object-fit:contain;}
.footer-wrap>div:first-child p{max-width:280px;color:var(--ink-soft);font-size:13.5px;line-height:1.6;}

.page-content,.woocommerce-page .site-main{width:min(1180px,calc(100% - 64px));margin:auto;padding:80px 0 110px;}
.page-title{margin:0 0 50px;font:400 clamp(44px,6vw,72px)/1 'Fraunces',serif;text-align:center;}
.button,button,input[type=button],input[type=submit],.wp-element-button,.lmb-configure-button,.lmb-preview-chip{
  display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 25px;
  border:1px solid var(--wine);border-radius:40px;background:var(--wine);color:var(--paper);
  font:500 14px/1 'Inter',sans-serif;text-decoration:none;cursor:pointer;transition:.25s ease;
}
input,textarea,select{min-height:48px;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);font:inherit;}

/* Mon compte */
.woocommerce-account .page-content{max-width:1180px}
.woocommerce-account .entry-content>.woocommerce{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:54px;align-items:start}
.woocommerce-account .woocommerce-MyAccount-navigation{position:sticky;top:110px;padding:18px;border:1px solid var(--line);border-radius:4px 24px 4px 24px;background:rgba(243,233,218,.62)}
.woocommerce-account .woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none}
.woocommerce-account .woocommerce-MyAccount-navigation li+li{border-top:1px solid var(--line)}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:flex;min-height:52px;align-items:center;padding:8px 14px;color:var(--ink-soft);font-size:13px;text-decoration:none}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{color:var(--wine);font-weight:600}
.woocommerce-account .woocommerce-MyAccount-content{min-width:0;padding:38px;border:1px solid var(--line);border-radius:24px 5px 24px 5px;background:rgba(255,250,243,.66);box-shadow:0 22px 60px rgba(46,36,29,.06)}
.woocommerce-account .woocommerce-MyAccount-content h2,.woocommerce-account .woocommerce-MyAccount-content h3{margin:0 0 22px;font:400 30px/1.15 'Fraunces',serif}
.woocommerce-account form.login,.woocommerce-account form.register{padding:32px;border:1px solid var(--line);border-radius:24px 5px 24px 5px;background:rgba(255,250,243,.66)}
.woocommerce-account .woocommerce-form-row{margin-bottom:18px}
.woocommerce-account .woocommerce-form-row label{display:block;margin-bottom:7px;color:var(--ink-soft);font-size:12px;letter-spacing:.04em}
.woocommerce-account table{width:100%;border-collapse:collapse}
.woocommerce-account th,.woocommerce-account td{padding:16px 12px;border-bottom:1px solid var(--line);text-align:left}
.woocommerce-account .woocommerce-Address{padding:24px;border:1px solid var(--line);border-radius:18px 4px 18px 4px}

/* FAQ */
.lmb-faq{width:min(900px,calc(100% - 48px));margin:0 auto;padding:80px 0 120px}
.lmb-faq-header{max-width:680px;margin:0 auto 52px;text-align:center}
.lmb-faq-header h1{margin:14px 0 16px;font:400 clamp(48px,7vw,76px)/1 'Fraunces',serif}
.lmb-faq-header p:last-child{color:var(--ink-soft);line-height:1.7}
.lmb-faq-list{display:grid;gap:12px}
.lmb-faq details{border:1px solid var(--line);border-radius:4px 20px 4px 20px;background:rgba(255,250,243,.55);transition:.2s ease}
.lmb-faq details[open]{background:var(--paper-deep);box-shadow:0 14px 35px rgba(46,36,29,.06)}
.lmb-faq summary{display:flex;min-height:74px;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;cursor:pointer;font:500 18px/1.3 'Fraunces',serif;list-style:none}
.lmb-faq summary::-webkit-details-marker{display:none}.lmb-faq summary::after{content:"+";color:var(--wine);font:300 28px/1 Inter,sans-serif}.lmb-faq details[open] summary::after{content:"−"}
.lmb-faq-answer{padding:0 24px 24px;color:var(--ink-soft);font-size:14px;line-height:1.75}

/* Catalogue editorial — same visual language as the home collection. */
.lmb-shop{width:min(1180px,calc(100% - 64px));margin:0 auto;padding:76px 0 110px;}
.lmb-shop-hero{max-width:680px;margin:0 auto 54px;text-align:center;}
.lmb-shop-hero h1{margin:14px 0 18px;font-size:clamp(48px,7vw,82px);font-weight:400;line-height:.98;letter-spacing:-.035em;}
.lmb-shop-hero>p:last-child{max-width:600px;margin:auto;color:var(--ink-soft);font-size:15.5px;line-height:1.7;}
.lmb-shop-filters{justify-content:center;margin-bottom:50px;}
.lmb-shop-grid{align-items:stretch;}
.lmb-shop-grid .invite-card{display:flex;min-height:100%;flex-direction:column;}
.lmb-shop-grid .invite-thumb{height:auto;aspect-ratio:4/3;}
.lmb-shop-grid .invite-body{flex:1;gap:18px;}
.lmb-shop-grid .price{flex-shrink:0;text-align:right;}
.lmb-shop-pagination{margin-top:58px;}
.lmb-shop-pagination ul{display:flex;justify-content:center;gap:8px;border:0!important;}
.lmb-shop-pagination li{border:0!important;}
.lmb-shop-pagination a,.lmb-shop-pagination span{display:grid!important;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent!important;color:var(--ink)!important;}
.lmb-shop-pagination .current{border-color:var(--wine);background:var(--wine)!important;color:var(--paper)!important;}
.lmb-shop-empty{padding:90px 24px;text-align:center;border:1px solid var(--line);border-radius:3px 22px 3px 22px;background:var(--paper-deep);}
.lmb-shop-empty h2{margin:20px 0 8px;font-size:34px;font-weight:400;}
.lmb-shop-empty p{color:var(--ink-soft);}

body.single-product .site-header,body.single-product .site-footer{display:none;}
body.single-product{background:var(--paper);}
.lmb-product-detail{width:min(1810px,calc(100% - 120px));margin:0 auto;padding:28px 0 78px;}
.lmb-product-back{display:inline-block;margin:0 0 46px;color:var(--ink-soft);font-size:12px;letter-spacing:.14em;text-transform:uppercase;}
.lmb-product-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(390px,.83fr);gap:120px;align-items:center;}
.lmb-product-visual{position:relative;height:min(77vh,855px);margin:0;overflow:hidden;background:var(--paper-deep);}
.lmb-product-visual img{width:100%;height:100%;object-fit:cover;}
.lmb-preview-chip{position:absolute;left:36px;bottom:36px;background:rgba(251,245,236,.9);color:var(--ink);backdrop-filter:blur(8px);}
.lmb-product-kicker{margin:0 0 26px;color:var(--ink-soft);font:italic 16px/1.5 'Fraunces',serif;letter-spacing:.22em;text-transform:uppercase;}
.lmb-product-copy h1{margin:0 0 8px;color:var(--ink);font:400 clamp(58px,5vw,94px)/.9 'Fraunces',serif;letter-spacing:-.055em;}
.lmb-product-price{margin-top:12px;color:var(--wine);font:400 25px/1.2 'Fraunces',serif;}
.lmb-product-intro{color:var(--ink-soft);font:italic 17px/1.75 'Fraunces',serif;}
.lmb-product-features{margin:30px 0 42px;padding:0;border-top:1px solid var(--line);list-style:none;}
.lmb-product-features li{position:relative;padding:18px 12px 18px 28px;border-bottom:1px solid var(--line);font-size:13px;}
.lmb-product-features li::before{content:"✓";position:absolute;left:0;color:var(--blush);}
.lmb-configure-button{width:100%;min-height:66px;justify-content:space-between;padding:0 31px;}
.lmb-product-note{margin:20px 6px 0;color:var(--ink-soft);font:italic 12px/1.5 'Fraunces',serif;text-align:center;}

@media(max-width:900px){
  .menu-toggle{display:grid;width:44px;height:44px;place-items:center;position:relative;z-index:52;cursor:pointer;}
  .menu-toggle span{display:block;line-height:1;font-size:25px;}
  .primary-navigation{display:block;visibility:hidden;opacity:0;pointer-events:none;position:absolute;top:100%;left:0;right:0;padding:18px 24px 28px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 18px 35px rgba(46,36,29,.12);transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility .2s;}
  .primary-navigation.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);}
  .primary-navigation ul,.primary-navigation .menu{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:0;list-style:none;}
  .primary-navigation li{display:block;width:100%;}
  .primary-navigation a{display:block;padding:14px 4px;border-bottom:1px solid var(--line);font-size:16px;}
  body.menu-is-open{overflow:hidden;}
  .nav-wrap{grid-template-columns:auto 1fr auto;}
  .lmb-product-detail{width:min(100% - 36px,760px);}
  .lmb-product-grid{grid-template-columns:1fr;gap:45px;}
  .lmb-product-visual{height:auto;aspect-ratio:4/5;}
  .woocommerce-account .entry-content>.woocommerce{grid-template-columns:1fr;gap:28px}
  .woocommerce-account .woocommerce-MyAccount-navigation{position:static}
  .woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;overflow:auto}
  .woocommerce-account .woocommerce-MyAccount-navigation li{flex:0 0 auto;border:0!important}
}
@media(max-width:600px){
  .nav-wrap{padding-inline:18px;}
  .nav-icons a:first-child{display:none;}
  .logo{font-size:14px;}
  .page-content,.woocommerce-page .site-main{width:min(100% - 36px,1180px);}
  .lmb-shop{width:min(100% - 36px,1180px);padding-top:48px;}
  .woocommerce-account .woocommerce-MyAccount-content{padding:24px 18px}
}
