/*
Theme Name: LexMigrate Nationality
Theme URI: https://lexmigrate.co.za/
Author: LexMigrate
Author URI: https://lexmigrate.co.za/
Description: Standalone British citizenship and British passport lead-generation theme for LexMigrate.
Version: 1.6.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: lexmigrate-nationality
*/

:root {
  --lm-green-950:#0d2c24;
  --lm-green-900:#12372d;
  --lm-green-800:#183f37;
  --lm-green-700:#255b4c;
  --lm-green-100:#e9f0eb;
  --lm-red:#ad3934;
  --lm-red-dark:#8e2d29;
  --lm-cream:#faf8f2;
  --lm-paper:#f4f0e7;
  --lm-white:#fff;
  --lm-ink:#183029;
  --lm-muted:#586b63;
  --lm-border:#cad6cf;
  --lm-gold:#a8863c;
  --lm-width:74rem;
  --lm-radius:.35rem;
  --lm-serif:Georgia,"Times New Roman",serif;
  --lm-sans:"Trebuchet MS",Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--lm-cream);color:var(--lm-ink);font:1rem/1.65 var(--lm-sans)}
body.admin-bar .site-header{top:32px}a{color:inherit;text-underline-offset:.22em}img{max-width:100%;height:auto}.container{width:min(var(--lm-width),calc(100% - 3rem));margin-inline:auto}.narrow{width:min(49rem,100%)}
h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--lm-serif);font-weight:400;line-height:1.08}h1{font-size:clamp(3rem,7vw,6.1rem);letter-spacing:-.055em}h2{font-size:clamp(2.2rem,4.6vw,3.8rem);letter-spacing:-.035em}h3{font-size:clamp(1.35rem,2.3vw,1.8rem)}
.eyebrow{margin-bottom:1rem;color:var(--lm-green-700);font-size:.73rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.eyebrow.light{color:#dfeae4}.eyebrow.red{color:var(--lm-red)}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:9999;background:white;padding:.7rem 1rem}.skip-link:focus{top:1rem}:focus-visible{outline:3px solid #c76a24;outline-offset:4px}
.site-header{position:sticky;top:0;z-index:90;background:rgba(250,248,242,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--lm-border)}.header-inner{min-height:5.7rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}.brand-mark{width:3.9rem;height:3.9rem;display:block}.brand-copy{display:flex;flex-direction:column}.brand-name{font:700 1.85rem/1 var(--lm-serif);letter-spacing:-.045em;color:var(--lm-green-800)}.brand-name em{font-style:normal;color:var(--lm-red)}.brand-tagline{margin-top:.32rem;font-size:.56rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--lm-muted)}
.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:1.45rem}.primary-nav a{text-decoration:none;font-size:.9rem}.primary-nav a:hover{text-decoration:underline}.primary-nav .nav-cta{padding:.68rem 1rem;background:var(--lm-red);color:white;border-radius:var(--lm-radius);font-weight:700}.nav-toggle{display:none;width:3rem;height:3rem;padding:.75rem;border:1px solid var(--lm-border);background:transparent;border-radius:var(--lm-radius);color:var(--lm-green-900)}.hamburger{display:grid;gap:5px}.hamburger span{height:2px;background:currentColor;width:100%;display:block}
.hero{position:relative;overflow:hidden;background:var(--lm-green-900);color:white;padding:clamp(5rem,10vw,8.6rem) 0 4.6rem}.hero:after{content:"";position:absolute;width:33rem;height:33rem;border:2px solid rgba(255,255,255,.09);border-radius:50%;right:-9rem;top:-8rem;box-shadow:0 0 0 2rem rgba(255,255,255,.025),0 0 0 5rem rgba(255,255,255,.02);pointer-events:none}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(19rem,.75fr);gap:clamp(3rem,7vw,7rem);align-items:center}.hero h1{max-width:52rem;margin-bottom:1.5rem}.hero h1 .accent{color:#e7b0ac}.hero-copy{max-width:43rem;font-size:clamp(1.06rem,1.7vw,1.24rem);color:#e3ebe7}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:3.2rem;padding:.85rem 1.3rem;text-decoration:none;font-weight:700;border:1px solid transparent;border-radius:var(--lm-radius);cursor:pointer;font-family:var(--lm-sans)}.button-primary{background:var(--lm-red);color:white}.button-primary:hover{background:var(--lm-red-dark)}.button-light{background:white;color:var(--lm-green-900)}.button-outline{border-color:currentColor;background:transparent}.button-dark{background:var(--lm-green-900);color:white}.hero-note{margin-top:1.25rem;font-size:.78rem;color:#c7d7d0}
.passport-panel{position:relative;background:var(--lm-paper);color:var(--lm-ink);padding:2rem;border:1px solid rgba(255,255,255,.15);box-shadow:0 1.5rem 4rem rgba(0,0,0,.18);transform:rotate(1.3deg)}.passport-panel:before{content:"CASE FILE";position:absolute;right:1rem;top:1rem;color:var(--lm-red);font-size:.65rem;font-weight:700;letter-spacing:.18em}.passport-panel .stamp{width:7rem;margin-bottom:1.5rem}.file-line{border-top:1px solid #c6c8c1;padding:.72rem 0;display:flex;justify-content:space-between;gap:1rem;font-size:.82rem}.file-line b{font-weight:700}.file-status{display:inline-block;margin-top:1rem;padding:.45rem .65rem;border:2px solid var(--lm-red);color:var(--lm-red);font-weight:700;letter-spacing:.08em;text-transform:uppercase;transform:rotate(-3deg)}
.destination-selector{background:var(--lm-cream);padding:2.2rem 0 2.6rem;border-bottom:1px solid var(--lm-border)}
.destination-heading{text-align:center;max-width:46rem;margin:0 auto 1.6rem}.destination-heading h2{margin-bottom:.55rem;font-size:clamp(2rem,4vw,3.2rem);color:var(--lm-green-950)}.destination-heading p:last-child{margin:0;color:var(--lm-muted)}
.destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.destination-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;min-height:9.5rem;padding:1.4rem 1.35rem;background:#fff;border:1px solid var(--lm-border);border-top:4px solid var(--lm-gold);text-decoration:none;box-shadow:0 .8rem 2rem rgba(13,44,36,.06);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.destination-card:hover{transform:translateY(-3px);box-shadow:0 1.15rem 2.6rem rgba(13,44,36,.11);border-color:#aebdb5;text-decoration:none}
.destination-flag{font-size:4.25rem;line-height:1;filter:saturate(.95);text-shadow:0 .18rem .35rem rgba(0,0,0,.12)}
.destination-copy{display:flex;flex-direction:column;gap:.35rem;min-width:0}.destination-copy strong{font:400 1.35rem/1.1 var(--lm-serif);color:var(--lm-green-950)}.destination-copy small{font:.78rem/1.45 var(--lm-sans);color:var(--lm-muted)}
.destination-arrow{font-size:1.7rem;color:var(--lm-red);transition:transform .18s ease}.destination-card:hover .destination-arrow{transform:translateX(.2rem)}
@media(max-width:900px){.destination-grid{grid-template-columns:1fr}.destination-card{min-height:7.5rem}.destination-flag{font-size:3.5rem}}
.trust-strip{background:var(--lm-paper);border-bottom:1px solid var(--lm-border)}.trust-inner{display:grid;grid-template-columns:repeat(4,1fr)}.trust-inner span{padding:1.05rem 1.2rem;border-right:1px solid var(--lm-border);font-size:.78rem;font-weight:700;text-align:center;letter-spacing:.04em}.trust-inner span:first-child{border-left:1px solid var(--lm-border)}
.section{padding:clamp(4.5rem,8vw,7rem) 0}.section.tint{background:var(--lm-green-100)}.section.dark{background:var(--lm-green-950);color:white}.section.redwash{background:#f5e9e6}.section-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,8vw,7rem);align-items:start}.section-intro .lead{font-size:1.12rem;color:var(--lm-muted);max-width:45rem}.dark .section-intro .lead{color:#c9d7d1}
.route-list{margin-top:3rem;border-top:1px solid var(--lm-border)}.route-row{display:grid;grid-template-columns:7rem minmax(0,.85fr) minmax(0,1.15fr);gap:2rem;padding:1.7rem 0;border-bottom:1px solid var(--lm-border);align-items:start}.route-code{font-size:.72rem;font-weight:700;letter-spacing:.12em;color:var(--lm-red)}.route-row p{margin:0;color:var(--lm-muted)}
.checker-wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:4rem;align-items:start}.checker-card{background:white;border:1px solid var(--lm-border);padding:clamp(1.4rem,3vw,2.3rem);box-shadow:0 1rem 2.5rem rgba(20,52,43,.07)}.field{margin-bottom:1.15rem}.field label{display:block;font-weight:700;font-size:.89rem;margin-bottom:.45rem}.field select,.field input,.field textarea{width:100%;padding:.78rem .8rem;border:1px solid #aebdb5;background:#fff;color:var(--lm-ink);font:inherit;border-radius:.2rem}.field textarea{min-height:8rem;resize:vertical}.field small{display:block;margin-top:.35rem;color:var(--lm-muted);font-size:.75rem}.check-result{margin-top:1.25rem;padding:1.15rem;background:var(--lm-paper);border-left:4px solid var(--lm-green-700)}.check-result[hidden]{display:none}.check-result h3{font-size:1.35rem;margin-bottom:.55rem}.fineprint{font-size:.76rem;color:var(--lm-muted)}
.product-box{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}.price-card{background:white;border-top:5px solid var(--lm-red);padding:2rem;color:var(--lm-ink);box-shadow:0 1rem 3rem rgba(0,0,0,.17)}.price-card .price{font:400 3.8rem/1 var(--lm-serif);letter-spacing:-.04em}.price small{font:700 .72rem/1 var(--lm-sans);letter-spacing:.09em;text-transform:uppercase;color:var(--lm-muted)}.ticklist{list-style:none;padding:0;margin:1.5rem 0}.ticklist li{padding:.55rem 0;border-top:1px solid var(--lm-border)}.ticklist li:before{content:"✓";color:var(--lm-green-700);font-weight:700;margin-right:.65rem}.price-card .button{width:100%}
.steps{counter-reset:step;margin-top:3rem;border-top:1px solid var(--lm-border)}.step{counter-increment:step;display:grid;grid-template-columns:5rem 1fr;gap:2rem;padding:1.6rem 0;border-bottom:1px solid var(--lm-border)}.step:before{content:"0" counter(step);color:var(--lm-red);font-weight:700;letter-spacing:.12em}.step p{margin:0;color:var(--lm-muted)}
.passport-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--lm-border);border:1px solid var(--lm-border);margin-top:2.8rem}.passport-item{background:var(--lm-cream);padding:1.6rem}.passport-item p{margin-bottom:0;color:var(--lm-muted)}
.faq-list{margin-top:2.5rem;border-top:1px solid var(--lm-border)}.faq-item{border-bottom:1px solid var(--lm-border);padding:1.3rem 0}.faq-item summary{cursor:pointer;font-family:var(--lm-serif);font-size:1.15rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-size:1.4rem;color:var(--lm-red);flex-shrink:0}.faq-item[open] summary:after{content:"–"}.faq-item p{margin-top:1rem;color:var(--lm-muted);max-width:45rem}
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:4rem;align-items:start}.contact-card{background:white;color:var(--lm-ink);padding:2rem}.contact-links{display:grid;gap:.6rem;margin-top:1.4rem}.notice{padding:1rem;border:1px solid rgba(255,255,255,.22);font-size:.78rem;color:#d6e0db}.success,.error{padding:.9rem 1rem;margin-bottom:1rem}.success{background:#e6f2e9;border-left:4px solid #2f725a}.error{background:#f7e5e2;border-left:4px solid var(--lm-red)}
.content-area{padding:4rem 0}.content-area article{max-width:50rem}.content-area h1{font-size:clamp(2.5rem,5vw,4.5rem)}.entry-meta{font-size:.78rem;color:var(--lm-muted)}.post-list article{padding:2rem 0;border-bottom:1px solid var(--lm-border)}
.site-footer{background:#0a211b;color:#c7d4cf;padding:2.6rem 0}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem}.footer-brand{color:white}.footer-small{font-size:.72rem;max-width:55rem}.footer-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end}.footer-links a{font-size:.8rem}.wp-caption,.gallery-caption{font-size:.8rem}.alignleft{float:left;margin:0 1rem 1rem 0}.alignright{float:right;margin:0 0 1rem 1rem}.aligncenter{display:block;margin-left:auto;margin-right:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bypostauthor{outline:0}
@media(max-width:900px){body.admin-bar .site-header{top:46px}.hero-grid,.checker-wrap,.product-box,.contact-grid,.section-intro{grid-template-columns:1fr}.passport-panel{max-width:32rem}.trust-inner{grid-template-columns:repeat(2,1fr)}.route-row{grid-template-columns:5rem 1fr}.route-row p{grid-column:2}.passport-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.primary-nav ul{gap:.8rem}}
@media(max-width:720px){.container{width:calc(100% - 2rem)}.header-inner{flex-wrap:wrap;gap:0;padding:.7rem 0}.brand-mark{width:3.2rem;height:3.2rem}.brand-name{font-size:1.55rem}.brand-tagline{font-size:.48rem}.nav-toggle{display:block;margin-left:auto}.primary-nav{width:100%}.primary-nav[data-enhanced="true"][data-open="false"]{display:none}.primary-nav ul{flex-direction:column;align-items:stretch;padding:1rem 0}.primary-nav a{display:block;padding:.65rem .2rem}.primary-nav .nav-cta{text-align:center}.hero{padding-top:4.2rem}.hero h1{font-size:clamp(2.75rem,14vw,4.4rem)}.hero-grid{gap:3rem}.trust-inner{grid-template-columns:1fr}.trust-inner span,.trust-inner span:first-child{border-left:1px solid var(--lm-border);border-bottom:1px solid var(--lm-border)}.route-row{grid-template-columns:1fr;gap:.55rem}.route-row p{grid-column:auto}.step{grid-template-columns:3.5rem 1fr}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* === WooCommerce block checkout price typography fix === */
.wc-block-components-order-summary-item__total-price,
.wc-block-components-product-price,
.wc-block-components-product-price__value,
.wc-block-components-order-summary .woocommerce-Price-amount,
.wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__description .price,
.wp-block-woocommerce-checkout .price,
.wp-block-woocommerce-cart .price{
  font-family:var(--lm-sans)!important;
  font-size:1rem!important;
  font-weight:700!important;
  line-height:1.35!important;
  letter-spacing:0!important;
}

.wc-block-components-order-summary-item__description .wc-block-components-product-name{
  font-family:var(--lm-sans)!important;
  font-size:.95rem!important;
  line-height:1.35!important;
}

.wc-block-components-order-summary-item__image{
  width:64px!important;
  min-width:64px!important;
}

@media(max-width:782px){
  .wc-block-components-order-summary-item__total-price,
  .wc-block-components-product-price,
  .wc-block-components-product-price__value,
  .wc-block-components-order-summary .woocommerce-Price-amount,
  .wc-block-components-totals-item__value{
    font-size:.95rem!important;
  }
  .wc-block-components-order-summary-item__image{
    width:52px!important;
    min-width:52px!important;
  }
}

/* === LexMigrate passport-stamp identity refresh — v1.1 === */
:root{
  --lm-green-950:#0d2c24;
  --lm-green-900:#12372d;
  --lm-green-800:#183f37;
  --lm-green-700:#255b4c;
  --lm-red:#ad3934;
  --lm-red-dark:#8e2d29;
  --lm-gold:#a8863c;
  --lm-cream:#faf8f2;
  --lm-paper:#f4f0e7;
  --lm-ink:#183029;
  --lm-muted:#586b63;
  --lm-border:#cad6cf;
}
body{background:var(--lm-cream)}
.site-header{background:rgba(250,248,242,.985);box-shadow:0 1px 0 rgba(13,44,36,.1)}
.header-inner{min-height:6.35rem;gap:1.8rem}
.brand{min-width:0;flex:0 1 24rem}
.brand-logo{display:block;width:min(25rem,100%);height:auto;mix-blend-mode:multiply}
.custom-logo-link{display:block;line-height:0}.custom-logo{display:block;max-width:23rem;width:100%;height:auto}
.primary-nav ul{gap:1.2rem}.primary-nav a{font-size:.82rem;font-weight:700;letter-spacing:.03em}
.primary-nav .nav-cta{padding:.76rem 1.05rem;background:var(--lm-green-950);border:1px solid var(--lm-green-950);color:#fff}
.primary-nav .nav-cta:hover{background:var(--lm-red);border-color:var(--lm-red);text-decoration:none}
.header-cart{display:inline-flex;align-items:center;gap:.45rem;flex:0 0 auto;padding:.7rem .85rem;border:1px solid var(--lm-border);background:#fff;color:var(--lm-green-950);text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.header-cart:hover{border-color:var(--lm-green-700);text-decoration:none}
.header-cart-count{display:inline-grid;place-items:center;min-width:1.45rem;height:1.45rem;padding:0 .3rem;border-radius:999px;background:var(--lm-red);color:#fff;font-size:.72rem;line-height:1}
.woocommerce-cart .wc-block-cart-item__remove-link,.woocommerce-cart .wc-block-components-product-name{position:relative;z-index:2}
.woocommerce-cart .wc-block-cart-item__remove-link{display:inline-block!important;color:var(--lm-red)!important;font-weight:800!important;text-decoration:underline!important}
@media(max-width:720px){.header-cart{order:3;margin-left:auto}.header-cart-label{display:none}}

.hero{padding:clamp(4.8rem,9vw,8rem) 0 clamp(4rem,7vw,6.5rem);background:
  radial-gradient(circle at 82% 22%,rgba(168,134,60,.12),transparent 24rem),
  linear-gradient(135deg,#0d2c24 0%,#12372d 55%,#173f34 100%)}
.hero:after{display:none}
.hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(20rem,.88fr);gap:clamp(3rem,6vw,6.5rem)}
.hero-copy-block{position:relative;z-index:2}.hero h1{max-width:58rem;font-size:clamp(3.25rem,6.8vw,6.4rem);letter-spacing:-.06em;margin-bottom:1.55rem}
.hero h1 .accent{display:block;color:#f1c4bd;font-style:italic;font-size:.82em;letter-spacing:-.045em}
.hero-copy{max-width:45rem;color:#e5eee9;font-size:clamp(1.05rem,1.55vw,1.22rem)}
.hero-note{max-width:40rem;margin-top:1.2rem;color:#bcd0c6;letter-spacing:.01em}
.hero .button-outline{border-color:#dfe8e3;color:#fff}.hero .button-outline:hover{background:#fff;color:var(--lm-green-950)}
.hero-stamp-card{position:relative;margin:0;display:grid;justify-items:center;align-content:center;min-height:34rem}
.stamp-paper{position:relative;width:min(29rem,100%);padding:2rem 2rem 1.6rem;background:#f8f4ea;color:var(--lm-ink);border:1px solid rgba(255,255,255,.32);box-shadow:0 2.2rem 5rem rgba(0,0,0,.23);transform:rotate(1.1deg)}
.stamp-paper:before,.stamp-paper:after{content:"";position:absolute;width:2.1rem;height:2.1rem;border-color:rgba(168,134,60,.65);pointer-events:none}
.stamp-paper:before{left:.8rem;top:.8rem;border-left:1px solid;border-top:1px solid}.stamp-paper:after{right:.8rem;bottom:.8rem;border-right:1px solid;border-bottom:1px solid}
.hero-stamp{display:block;width:100%;height:auto}
.stamp-foot{margin:1rem 0 0;color:#f4e7ca;font:italic 1rem/1.4 var(--lm-serif);letter-spacing:.04em}.brand-line{text-transform:none}

.trust-strip{background:#f4f0e7;border-bottom:1px solid #d8d0c1}
.trust-inner span{color:var(--lm-green-950);letter-spacing:.1em;background:rgba(255,255,255,.18)}
.section{position:relative}.section h2{color:var(--lm-green-950)}.section.dark h2{color:#fff}
.section-intro{grid-template-columns:minmax(17rem,.72fr) minmax(0,1.28fr)}
.route-list{border-top:2px solid var(--lm-green-950)}
.route-row{position:relative;transition:background-color .2s ease,padding-left .2s ease}.route-row:hover{background:rgba(37,91,76,.045);padding-left:.65rem}
.route-code{color:var(--lm-red);font-weight:800}.route-row h3{color:var(--lm-green-950)}
.checker-card{border-top:4px solid var(--lm-gold);box-shadow:0 1.3rem 3rem rgba(13,44,36,.09)}
.field select,.field input,.field textarea{border-color:#b8c4bd;border-radius:0;background:#fff}.field select:focus,.field input:focus,.field textarea:focus{border-color:var(--lm-green-700);outline:2px solid rgba(37,91,76,.16);outline-offset:1px}
.button{border-radius:.18rem;letter-spacing:.015em}.button-primary{background:var(--lm-red)}.button-primary:hover{background:var(--lm-red-dark)}
.button-dark{background:var(--lm-green-950)}.button-dark:hover{background:var(--lm-green-700)}
.price-card{position:relative;border-top:0;border-left:5px solid var(--lm-gold);box-shadow:0 1.2rem 3.2rem rgba(0,0,0,.2)}
.price-card:before{content:"R49 RESULTS CHECKER";position:absolute;right:1.4rem;top:1.1rem;color:var(--lm-red);font-size:.58rem;font-weight:800;letter-spacing:.18em}
.passport-grid{gap:1rem;background:transparent;border:0}.passport-item{border:1px solid var(--lm-border);background:#fff;min-height:14rem}.passport-item h3{color:var(--lm-green-950)}
.redwash{background:#f4e8e5}.faq-item summary{color:var(--lm-green-950)}
.contact-card{border-top:4px solid var(--lm-gold);box-shadow:0 1.1rem 3rem rgba(0,0,0,.13)}
.site-footer{background:#081d18;border-top:3px solid var(--lm-gold)}
.footer-brand strong{font-family:var(--lm-serif);font-size:1.2rem}

@media(max-width:1050px){.header-inner{gap:1rem}.brand{flex-basis:18rem}.primary-nav ul{gap:.75rem}.primary-nav a{font-size:.75rem}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr)}}
@media(max-width:900px){.brand{flex-basis:21rem}.hero-stamp-card{min-height:auto}.stamp-paper{max-width:25rem}.section-intro{grid-template-columns:1fr}}
@media(max-width:720px){.header-inner{min-height:5.2rem}.brand{flex-basis:17rem}.brand-logo,.custom-logo{max-width:17rem}.hero{padding-top:3.7rem}.hero h1{font-size:clamp(3rem,14.5vw,4.7rem)}.hero-stamp-card{margin-top:.5rem}.stamp-paper{width:min(22rem,92vw);padding:1.25rem}.price-card:before{display:none}}
.footer-brand-wrap{display:flex;align-items:flex-start;gap:1rem}.footer-stamp{width:5.8rem;height:auto;flex:0 0 auto;background:var(--lm-cream);border-radius:50%;padding:.12rem}.footer-small{margin:.45rem 0 0}
@media(max-width:720px){.footer-brand-wrap{align-items:center}.footer-stamp{width:4.4rem}.footer-links{padding-top:.5rem}}

.checker-disclaimer{margin:1rem 0;padding:1rem 1.1rem;border-left:4px solid var(--lm-red);background:#f7ece9;color:var(--lm-ink);font-size:.78rem;line-height:1.55}.checker-disclaimer strong{color:var(--lm-red-dark)}.checker-disclaimer-card{margin-top:1.25rem;background:var(--lm-paper);border-left-color:var(--lm-red);color:var(--lm-muted)}.light-fineprint{color:#c9d7d1}


/* === SEO guides hub === */
.guides-section{background:#fffdf8}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2.25rem}
.guide-card{display:block;padding:1.5rem 1.45rem 1.6rem;background:#fff;border:1px solid var(--lm-border);border-top:3px solid var(--lm-gold);color:var(--lm-ink);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.guide-card:hover{transform:translateY(-3px);box-shadow:0 1rem 2.3rem rgba(13,44,36,.08);border-color:#aebdb5;text-decoration:none}
.guide-card span{display:block;margin-bottom:.65rem;color:var(--lm-red);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.guide-card h3{margin:0 0 .7rem;color:var(--lm-green-950);font-family:var(--lm-serif);font-size:1.28rem;line-height:1.2}
.guide-card p{margin:0;color:var(--lm-muted);font-size:.92rem;line-height:1.6}
.guides-cta{margin-top:1.5rem}
@media(max-width:900px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.guide-grid{grid-template-columns:1fr}}

/* === Results Checker purchase card — v1.5 === */
.results-product-image{display:block;width:100%;height:auto;margin:0 0 1.35rem;border:1px solid var(--lm-border);background:var(--lm-cream)}
.checker-pay-button{font-size:1.02rem;min-height:3.55rem}
.checker-payment-note{margin:.85rem 0 0;text-align:center;font-size:.74rem;line-height:1.45;color:var(--lm-muted)}
.section.dark .checker-payment-note{color:var(--lm-muted)}
@media(max-width:720px){.results-product-image{margin-bottom:1rem}}

/* WooCommerce storefront integration */
.woocommerce-page .content-area,
.woocommerce .content-area { width: 100%; }
.woocommerce-page #secondary,
.woocommerce #secondary,
.widget-area { display:none !important; }
.woocommerce .site-main,
.woocommerce-page .site-main,
.lexmigrate-woocommerce { width:min(var(--lm-width),calc(100% - 3rem)); margin-inline:auto; padding:4rem 0; }
.woocommerce div.product { margin-top:1rem; }
.woocommerce div.product .product_title { color:var(--lm-green-900); }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color:var(--lm-red); font-family:var(--lm-serif); font-size:2rem; }
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit { background:var(--lm-red); color:#fff; border-radius:var(--lm-radius); }
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover { background:var(--lm-red-dark); color:#fff; }

/* Responsive layout repair: keep mobile content inside the viewport. */
@media(max-width:1050px){
  .site-header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) 44px 52px;gap:8px;align-items:center;min-height:76px;padding:10px 0}
  .site-header .brand{grid-column:1;grid-row:1;min-width:0;max-width:250px;margin:0}
  .site-header .brand-logo,.site-header .custom-logo{width:100%;max-width:250px;height:auto}
  .site-header .nav-toggle{grid-column:2;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:11px}
  .site-header .hamburger{width:100%}
  .site-header .header-cart{grid-column:3;grid-row:1;order:initial;margin:0;min-height:44px;justify-content:center;padding:6px}
  .site-header .header-cart-label{display:none}
  .site-header .primary-nav{grid-column:1/-1;grid-row:2;width:100%;min-width:0;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);overflow-y:auto}
  .site-header .primary-nav[data-enhanced="true"][data-open="false"]{display:none}
  .site-header .primary-nav[data-open="true"]{display:block}
  .site-header .primary-nav ul{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 0}
  .site-header .primary-nav a{display:block;padding:12px 8px;font-size:16px;line-height:1.35}
}
@media(max-width:900px){
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:2rem}
  .hero-grid>*,.checker-wrap>*,.product-box>*,.contact-grid>*,.section-intro>*{min-width:0}
}
@media(max-width:720px){
  .container{width:calc(100% - 32px)}
  .hero{padding:2.5rem 0 3rem}
  .hero h1{font-size:clamp(2.2rem,9.2vw,3.5rem);line-height:1.1;letter-spacing:-.035em;overflow-wrap:break-word}
  .hero-copy{font-size:1rem;line-height:1.65}
  .hero-actions{gap:12px;margin-top:1.5rem}
  .hero-stamp-card{min-height:0;margin:8px auto 0;width:100%;max-width:320px}
  .stamp-paper{width:100%;max-width:100%;padding:1.2rem;transform:none}
  .section{padding:2.75rem 0}
  .section h2,.destination-heading h2{font-size:clamp(1.85rem,7.5vw,2.5rem);line-height:1.15;overflow-wrap:break-word}
  .checker-wrap,.contact-grid,.product-box,.section-intro{grid-template-columns:minmax(0,1fr);gap:1.75rem}
  .checker-card,.contact-card,.price-card{padding:1.2rem;min-width:0;max-width:100%}
  .button{max-width:100%;white-space:normal;text-align:center;line-height:1.4}
  .field input,.field textarea,.field select,.lm-paid input,.lm-paid select{font-size:16px}
  .content-area{padding:2rem 0}
  .content-area article{max-width:100%;min-width:0}
  .content-area h1{font-size:clamp(2rem,8vw,2.8rem);line-height:1.15;overflow-wrap:break-word}
  .content-area p,.content-area li{overflow-wrap:break-word}
  .content-area iframe,.content-area video,.content-area img{max-width:100%}
  .footer-brand-wrap{align-items:flex-start;gap:12px}
  .footer-brand-wrap>div{min-width:0}
  .site-footer{padding-bottom:5.5rem}
  .woocommerce .site-main,.woocommerce-page .site-main,.lexmigrate-woocommerce{width:calc(100% - 32px);padding:2rem 0}
  .woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%;min-width:0;max-width:100%}
  .woocommerce div.product .product_title{font-size:clamp(1.8rem,7.7vw,2.5rem);line-height:1.15;letter-spacing:-.025em;overflow-wrap:break-word}
  .woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
  .woocommerce div.product form.cart .quantity{margin:0}
  .woocommerce div.product form.cart .quantity input{max-width:80px;min-height:48px;font-size:16px}
  .woocommerce div.product form.cart .single_add_to_cart_button{flex:1;min-height:48px}
  .woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0}
  .woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{overflow-wrap:break-word}
  .wp-block-woocommerce-cart,.wp-block-woocommerce-checkout,.wc-block-components-main,.wc-block-components-sidebar{min-width:0;max-width:100%}
}

