/*
Theme Name: IMPATIENS
Theme URI: https://impatiens.in
Author: Built for IMPATIENS from the Claude Design handoff
Description: Contemporary womenswear theme for IMPATIENS, Ranebennur. Classical design system — editorial, light ground, colour as stroke not fill. WooCommerce ready.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: impatiens
*/

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;600&family=Lora:wght@400;600&display=swap');

/* ═══════════ Classical design-system tokens ═══════════ */
:root{
  --color-bg:#f3f2f2;
  --color-surface:#eae9e9;
  --color-text:#201f1d;
  --color-accent:#b68235;
  --color-accent-2:#ac803e;
  --color-divider:color-mix(in srgb,#201f1d 16%,transparent);

  --color-neutral-100:#f8f4f4; --color-neutral-200:#eae7e7; --color-neutral-300:#d7d3d3;
  --color-neutral-400:#bab6b6; --color-neutral-500:#9b9797; --color-neutral-600:#7d7979;
  --color-neutral-700:#605d5d; --color-neutral-800:#444141; --color-neutral-900:#2d2b2b;

  --color-accent-100:#fff3e4; --color-accent-200:#ffe3bf; --color-accent-300:#facb8d;
  --color-accent-400:#e1ad66; --color-accent-500:#c28d41; --color-accent-600:#a06f24;
  --color-accent-700:#7d5411; --color-accent-800:#5a3b0a; --color-accent-900:#3a270d;

  --font-heading:"Cormorant Garamond",system-ui,serif;
  --font-heading-weight:600;
  --font-body:"Lora",system-ui,serif;

  --space-1:4.6px; --space-2:9.2px; --space-3:13.8px;
  --space-4:18.4px; --space-6:27.6px; --space-8:36.8px;

  --radius-sm:2px; --radius-md:4px; --radius-lg:7px;

  --shadow-sm:0 1px 2px color-mix(in srgb,#2d2b2b 14%,transparent);
  --shadow-md:0 3px 10px color-mix(in srgb,#2d2b2b 16%,transparent);
  --shadow-lg:0 12px 32px color-mix(in srgb,#2d2b2b 22%,transparent);

  /* site tokens */
  --c-bg:var(--color-bg); --c-surface:var(--color-surface);
  --c-ink:var(--color-text); --c-ink-soft:var(--color-neutral-700);
  --c-ink-faint:var(--color-neutral-500);
  --c-accent:var(--color-accent); --c-accent-deep:var(--color-accent-700);
  --c-accent-soft:var(--color-accent-400); --c-divider:var(--color-divider);
  --c-dark:#23201c; --c-paper:#efe9df; --c-paper-dim:#b3a996;
  --c-board:var(--color-neutral-200);

  --ff-head:var(--font-heading); --ff-body:var(--font-body);
  --fw-head:var(--font-heading-weight); --fw-normal:400;

  --fs-11:11px; --fs-12:12px; --fs-13:13px; --fs-14:14px; --fs-15:15px;
  --fs-17:17px; --fs-19:19px; --fs-22:22px; --fs-26:26px; --fs-30:30px;
  --fs-36:36px; --fs-44:44px; --fs-56:56px;

  --lh-tight:1.05; --lh-head:1.16; --lh-body:1.68;
  --ls-wide:0.22em; --ls-caps:0.15em;

  --sp-2:2px; --sp-4:4px; --sp-6:6px; --sp-8:8px; --sp-10:10px;
  --sp-12:12px; --sp-16:16px; --sp-20:20px; --sp-24:24px; --sp-28:28px;
  --sp-32:32px; --sp-40:40px; --sp-48:48px; --sp-56:56px; --sp-64:64px;
  --sp-80:80px; --sp-96:96px;

  --maxw:1180px; --maxw-text:640px; --maxw-quote:780px;
  --line:1px; --menu-line-w:20px;
  --logo-h:52px; --logo-h-m:40px; --logo-h-f:64px;
}

/* ═══════════ base ═══════════ */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--c-bg);color:var(--c-ink);
  font-family:var(--ff-body);font-size:var(--fs-15);line-height:var(--lh-body);font-weight:400}
h1,h2,h3,h4,h5,h6{font-family:var(--ff-head);font-weight:var(--fw-head);
  line-height:1.12;letter-spacing:-0.015em;margin:0 0 var(--space-2)}
h1{font-size:42px} h2{font-size:32px} h3{font-size:25px}
h4{font-size:20px} h5{font-size:16px} h6{font-size:13px;letter-spacing:.08em;text-transform:uppercase}
p{margin:0 0 var(--space-3)}
a{color:var(--c-accent-deep);text-underline-offset:3px}
a:hover{color:var(--c-accent)}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
figcaption{font-size:11px;margin-top:var(--space-1);color:color-mix(in srgb,var(--c-ink) 55%,transparent)}
.text-muted{color:color-mix(in srgb,var(--c-ink) 55%,transparent)}
:focus{outline:none}
:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}
::selection{background:color-mix(in srgb,var(--c-accent) 30%,transparent)}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:var(--sp-16);top:var(--sp-16);z-index:99;background:var(--c-bg);padding:var(--sp-10) var(--sp-16);border:var(--line) solid var(--c-divider)}
.plate{filter:sepia(.22) saturate(.82) contrast(1.05);box-sizing:border-box;
  border:6px solid var(--color-surface);outline:1px solid var(--color-divider)}
.hr{height:1px;border:0;margin:var(--space-4) 0;background:var(--c-divider)}

/* ═══════════ buttons ═══════════ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;
  text-decoration:none;font-family:var(--ff-head);font-weight:var(--fw-head);font-size:13px;
  line-height:1.2;color:var(--c-ink);background:transparent;border:1px solid transparent;
  padding:calc(var(--space-2)*.85) var(--space-3);border-radius:var(--radius-md)}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn-primary{color:var(--c-accent);border-color:var(--c-accent)}
.btn-primary:hover{background:color-mix(in srgb,var(--c-accent) 12%,transparent);color:var(--c-accent)}
.btn-primary:active{background:color-mix(in srgb,var(--c-accent) 22%,transparent)}
.btn-secondary{border-color:var(--c-divider);color:var(--c-ink)}
.btn-secondary:hover{background:color-mix(in srgb,var(--c-ink) 7%,transparent);color:var(--c-ink)}
.btn-ghost{color:var(--c-accent);padding-inline:var(--space-1)}
.btn-ghost:hover{background:color-mix(in srgb,var(--c-accent) 10%,transparent)}
.btn-lg{font-size:var(--fs-14);padding:var(--sp-12) var(--sp-24)}

/* ═══════════ forms ═══════════ */
.field>label{display:block;font-size:12px;margin-bottom:5px;color:color-mix(in srgb,var(--c-ink) 70%,transparent)}
.input{width:100%;min-height:36px;padding:6px 10px;font:inherit;font-size:14px;
  color:var(--c-ink);caret-color:var(--c-accent);background:transparent;
  border:1px solid var(--c-divider);border-radius:var(--radius-md)}
.input:hover{border-color:color-mix(in srgb,var(--c-ink) 45%,transparent)}
.input:focus-visible{border-color:var(--c-accent);outline-offset:0}
textarea.input{min-height:90px;resize:vertical}

/* ═══════════ cards / tags ═══════════ */
.card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);
  border-radius:var(--radius-md);background:transparent;border:1px solid var(--c-divider)}
.card-title{font-family:var(--ff-head);font-weight:var(--fw-head);font-size:17px;line-height:1.2;margin:0}
.card-body{margin:0;font-size:13px;opacity:.8;flex:1}
.card-meta{display:flex;align-items:center;gap:6px;font-size:11px;color:color-mix(in srgb,var(--c-ink) 50%,transparent)}
.tag{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.02em;padding:3px 10px;border-radius:3px}
.tag-neutral{background:var(--color-neutral-100);color:var(--color-neutral-800)}
.tag-outline{border:1px solid var(--c-accent);color:var(--c-accent)}

/* ═══════════ header ═══════════ */
.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-24);
  padding:var(--sp-20) var(--sp-40);border-bottom:var(--line) solid var(--c-divider);
  background:var(--c-bg);position:relative;z-index:20}
.brand{display:flex;flex-direction:column;gap:var(--sp-2);text-decoration:none;color:var(--c-ink)}
.brand:hover{color:var(--c-ink)}
.brand-logo{display:block;height:var(--logo-h);width:auto}
.brand-tag{font-size:var(--fs-11);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--c-ink-soft)}
.nav-links{display:flex;align-items:center;gap:var(--sp-28)}
.nav-link{font-size:var(--fs-14);text-decoration:none;color:var(--c-ink);
  padding:var(--sp-4) 0;border-bottom:var(--line) solid transparent}
.nav-link:hover{color:var(--c-accent-deep)}
.site-header[data-active="home"] .nav-home,
.site-header[data-active="services"] .nav-services,
.site-header[data-active="gallery"] .nav-gallery,
.site-header[data-active="shop"] .nav-shop,
.site-header[data-active="contact"] .nav-contact{color:var(--c-accent-deep);border-bottom-color:var(--c-accent)}
.menu-btn{display:none;flex-direction:column;gap:var(--sp-4);border:var(--line) solid var(--c-divider);
  background:transparent;padding:var(--sp-10);border-radius:var(--radius-md);cursor:pointer}
.menu-btn:hover{background:color-mix(in srgb,var(--c-accent) 10%,transparent)}
.menu-line{display:block;width:var(--menu-line-w);height:var(--line);background:var(--c-ink)}
.mobile-nav{display:none;flex-direction:column;gap:var(--sp-4);padding:var(--sp-16) var(--sp-20);
  border-bottom:var(--line) solid var(--c-divider);background:var(--c-bg)}
.mobile-nav.is-open{display:flex}
.mobile-nav .nav-link{font-size:var(--fs-17);padding:var(--sp-10) 0}

/* ═══════════ footer ═══════════ */
.site-footer{display:flex;flex-direction:column;gap:var(--sp-40);
  padding:var(--sp-56) var(--sp-40) var(--sp-32);border-top:var(--line) solid var(--c-divider)}
.footer-cols{display:flex;gap:var(--sp-64);flex-wrap:wrap}
.footer-brand{display:flex;flex-direction:column;gap:var(--sp-12);flex:1 1 0}
.footer-logo{display:block;height:var(--logo-h-f);width:auto;align-self:flex-start}
.footer-tagline{font-family:var(--ff-head);font-size:var(--fs-19);font-style:italic;color:var(--c-accent-deep)}
.footer-note{margin:0;font-size:var(--fs-13);color:var(--c-ink-soft);max-width:var(--maxw-text)}
.footer-col{display:flex;flex-direction:column;gap:var(--sp-10);flex:none}
.footer-link{font-size:var(--fs-14);color:var(--c-ink);text-decoration:none}
.footer-link:hover{color:var(--c-accent-deep)}
.footer-text{font-size:var(--fs-14);color:var(--c-ink)}
.footer-base{display:flex;justify-content:space-between;gap:var(--sp-16);flex-wrap:wrap;
  border-top:var(--line) solid var(--c-divider);padding-top:var(--sp-20);
  font-size:var(--fs-12);color:var(--c-ink-soft);font-feature-settings:"tnum"}

/* ═══════════ shared content ═══════════ */
.section{display:flex;justify-content:center;padding:var(--sp-80) var(--sp-40)}
.ruled{border-top:var(--line) solid var(--c-divider)}
.container{width:100%;max-width:var(--maxw);display:flex;flex-direction:column;gap:var(--sp-40)}
.sec-head{display:flex;flex-direction:column;gap:var(--sp-12)}
.center{align-items:center;text-align:center}
.eyebrow{font-size:var(--fs-11);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--c-ink-soft)}
.kicker{font-size:var(--fs-12);letter-spacing:var(--ls-caps);text-transform:uppercase;
  color:var(--c-accent-deep);font-feature-settings:"tnum"}
.headline{margin:0;font-family:var(--ff-head);font-weight:var(--fw-normal);
  font-size:var(--fs-56);line-height:var(--lh-tight);letter-spacing:normal}
.headline-accent{font-family:var(--ff-head);font-weight:var(--fw-normal);font-size:var(--fs-56);
  line-height:var(--lh-tight);font-style:italic;color:var(--c-accent-deep)}
.page-title{margin:0;font-family:var(--ff-head);font-weight:var(--fw-normal);
  font-size:var(--fs-44);line-height:var(--lh-head)}
.title{margin:0;font-family:var(--ff-head);font-weight:var(--fw-head);
  font-size:var(--fs-36);line-height:var(--lh-head)}
.lede{margin:0;font-size:var(--fs-17);max-width:var(--maxw-text)}
.prose{margin:0;font-size:var(--fs-15);max-width:var(--maxw-text);text-align:justify;text-wrap:pretty}
.muted{color:var(--c-ink-soft)}
.btn-row{display:flex;gap:var(--sp-12);flex-wrap:wrap;align-items:center}

/* ═══════════ media ═══════════ */
.media-frame{display:flex;width:100%}
.photo{width:100%;height:100%;object-fit:cover}
.ratio-45{aspect-ratio:4/5}
.ratio-34{aspect-ratio:3/4}
.ratio-43{aspect-ratio:4/3}
.shot{display:flex;width:100%}

/* ═══════════ hero ═══════════ */
.hero{display:flex;gap:var(--sp-64);align-items:center}
.hero-copy{flex:1 1 0;display:flex;flex-direction:column;gap:var(--sp-20)}
.hero-media{flex:1 1 0;display:flex}

/* ═══════════ service cards ═══════════ */
.card-row{display:flex;gap:var(--sp-20);align-items:stretch;flex-wrap:wrap}
.card-service{flex:1 1 0;gap:var(--sp-12);padding:var(--sp-24);text-decoration:none;color:var(--c-ink)}
.card-service:hover{background:color-mix(in srgb,var(--c-accent) 7%,transparent);color:var(--c-ink)}
.card-num{font-family:var(--ff-head);font-size:var(--fs-30);line-height:var(--lh-tight);
  color:var(--c-accent);font-feature-settings:"tnum"}

/* ═══════════ value columns ═══════════ */
.value-row{display:flex;gap:var(--sp-40);align-items:stretch}
.value{flex:1 1 0;display:flex;flex-direction:column;gap:var(--sp-10)}
.value-title{margin:0;font-family:var(--ff-head);font-weight:var(--fw-head);font-size:var(--fs-22);line-height:var(--lh-head)}
.value-body{margin:0;font-size:var(--fs-14);color:var(--c-ink-soft)}
.vline{flex:none;width:var(--line);background:var(--c-divider)}

/* ═══════════ dark band ═══════════ */
.band-dark{display:flex;justify-content:center;background:var(--c-dark);color:var(--c-paper);
  padding:var(--sp-80) var(--sp-40)}
.band-inner{width:100%;max-width:var(--maxw-quote);display:flex;flex-direction:column;
  gap:var(--sp-16);align-items:center;text-align:center}
.band-kicker{font-size:var(--fs-12);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--c-accent-soft)}
.quote{margin:0;font-family:var(--ff-head);font-weight:var(--fw-normal);font-size:var(--fs-44);
  line-height:var(--lh-head);color:var(--c-paper)}
.band-sub{font-size:var(--fs-12);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--c-paper-dim)}

/* ═══════════ split ═══════════ */
.split{display:flex;gap:var(--sp-64);align-items:center}
.split-flip{flex-direction:row-reverse}
.split-media{flex:1 1 0;display:flex}
.split-copy{flex:1 1 0;display:flex;flex-direction:column;gap:var(--sp-16)}
.spec{display:flex;flex-direction:column;gap:var(--sp-6)}
.spec-line{font-size:var(--fs-13);color:var(--c-ink-soft)}

/* ═══════════ gallery ═══════════ */
.gallery-group{display:flex;flex-direction:column;gap:var(--sp-20)}
.group-head{display:flex;align-items:baseline;gap:var(--sp-16)}
.group-title{margin:0;font-family:var(--ff-head);font-weight:var(--fw-head);font-size:var(--fs-26);line-height:var(--lh-head)}
.gallery-row{display:flex;gap:var(--sp-20);flex-wrap:wrap}
.gallery-item{flex:1 1 0;display:flex;flex-direction:column;gap:var(--sp-8);min-width:220px}
.caption{font-size:var(--fs-12);color:var(--c-ink-soft)}
.slot-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  background:var(--c-surface);color:var(--c-ink-faint);font-size:var(--fs-12);
  letter-spacing:var(--ls-caps);text-transform:uppercase;text-align:center;padding:var(--sp-16)}

/* ═══════════ contact ═══════════ */
.contact-wrap{display:flex;gap:var(--sp-64);align-items:flex-start}
.contact-info{flex:1 1 0;display:flex;flex-direction:column;gap:var(--sp-24)}
.contact-form{flex:1 1 0;display:flex;flex-direction:column;gap:var(--sp-16);
  border:var(--line) solid var(--c-divider);border-radius:var(--radius-md);padding:var(--sp-32)}
.form-row{display:flex;gap:var(--sp-16)}
.form-row .field{flex:1 1 0}
.info-block{display:flex;flex-direction:column;gap:var(--sp-6)}
.form-note{font-size:var(--fs-13);color:var(--c-ink-soft);margin:0}
.form-success{border:var(--line) solid var(--c-accent);border-radius:var(--radius-md);
  padding:var(--sp-16);font-size:var(--fs-14);color:var(--c-accent-deep)}

/* ═══════════ WooCommerce — Classical treatment ═══════════ */
.woocommerce-page .section,.woo-wrap{display:flex;justify-content:center;padding:var(--sp-64) var(--sp-40)}
.woo-inner{width:100%;max-width:var(--maxw)}
.woocommerce ul.products{display:flex;flex-wrap:wrap;gap:var(--sp-24);margin:0;padding:0;list-style:none}
.woocommerce ul.products li.product{flex:1 1 260px;max-width:calc(25% - var(--sp-20));
  margin:0;padding:0;text-align:left;display:flex;flex-direction:column;gap:var(--sp-8)}
.woocommerce ul.products li.product a img{margin:0;border:6px solid var(--color-surface);
  outline:1px solid var(--color-divider);filter:sepia(.22) saturate(.82) contrast(1.05);aspect-ratio:3/4;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--ff-head);
  font-weight:var(--fw-head);font-size:var(--fs-17);line-height:1.2;padding:0;margin:0;color:var(--c-ink)}
.woocommerce ul.products li.product .price{color:var(--c-ink-soft);font-family:var(--ff-body);
  font-size:var(--fs-14);font-weight:400;font-feature-settings:"tnum"}
.woocommerce ul.products li.product .price del{opacity:.55}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--c-accent-deep)}
.woocommerce span.onsale{background:var(--c-accent);color:#fff;border-radius:var(--radius-md);
  font-family:var(--ff-head);font-size:var(--fs-12);min-height:0;min-width:0;padding:var(--sp-4) var(--sp-10);line-height:1.4}
.woocommerce .woocommerce-ordering select,.woocommerce-page select{font:inherit;font-size:14px;
  padding:6px 10px;border:1px solid var(--c-divider);border-radius:var(--radius-md);background:transparent}
.woocommerce div.product .product_title{font-family:var(--ff-head);font-weight:var(--fw-normal);font-size:var(--fs-44);line-height:var(--lh-head)}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--c-accent-deep);
  font-family:var(--ff-body);font-size:var(--fs-22);font-feature-settings:"tnum"}
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,
.woocommerce input.button,.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,
.woocommerce button.button.alt,.woocommerce input.button.alt{
  background:transparent;color:var(--c-accent);border:1px solid var(--c-accent);
  border-radius:var(--radius-md);font-family:var(--ff-head);font-weight:var(--fw-head);
  font-size:var(--fs-14);padding:var(--sp-12) var(--sp-24);text-transform:none;line-height:1.2}
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{background:color-mix(in srgb,var(--c-accent) 12%,transparent);color:var(--c-accent)}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{
  border-top-color:var(--c-accent);background:var(--c-surface);color:var(--c-ink);font-size:var(--fs-14)}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{color:var(--c-accent)}
.woocommerce table.shop_table{border-radius:var(--radius-md);border-color:var(--c-divider)}
.woocommerce-breadcrumb{font-size:var(--fs-12);letter-spacing:var(--ls-caps);
  text-transform:uppercase;color:var(--c-ink-soft)}
.woocommerce .quantity .qty{border:1px solid var(--c-divider);border-radius:var(--radius-md);
  background:transparent;font:inherit;padding:6px}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border-color:var(--c-divider);background:transparent;border-radius:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--c-surface)}

/* ═══════════ WordPress editor content ═══════════ */
.entry-content{max-width:var(--maxw-text)}
.entry-content img{margin:var(--sp-20) 0}
.wp-caption{max-width:100%}
.alignleft{float:left;margin:0 var(--sp-20) var(--sp-16) 0}
.alignright{float:right;margin:0 0 var(--sp-16) var(--sp-20)}
.aligncenter{margin-inline:auto}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ═══════════════════════════════════════════════════════════
   TABLET — handoff frame 834px. .lay-t rules, as media queries.
   ═══════════════════════════════════════════════════════════ */
@media (max-width:1024px){
  .site-header{padding:var(--sp-16) var(--sp-24)}
  .nav-links{gap:var(--sp-20)}
  .header-cta{display:none}
  .brand-tag{display:none}
  .section,.woo-wrap{padding:var(--sp-64) var(--sp-24)}
  .headline,.headline-accent{font-size:var(--fs-44)}
  .page-title{font-size:var(--fs-36)}
  .title{font-size:var(--fs-30)}
  .hero{gap:var(--sp-40)}
  .card-service{flex:1 1 40%}
  .value-row{gap:var(--sp-24)}
  .quote{font-size:var(--fs-36)}
  .split{gap:var(--sp-32)}
  .contact-wrap{gap:var(--sp-32)}
  .woocommerce ul.products li.product{max-width:calc(50% - var(--sp-12))}
  .woocommerce div.product .product_title{font-size:var(--fs-36)}
}

/* ═══════════════════════════════════════════════════════════
   MOBILE — handoff frame 390px. .lay-m rules, as media queries.
   ═══════════════════════════════════════════════════════════ */
@media (max-width:640px){
  .brand-logo{height:var(--logo-h-m)}
  .site-header{padding:var(--sp-12) var(--sp-20)}
  .nav-links{display:none}
  .menu-btn{display:flex}
  .site-footer{padding:var(--sp-40) var(--sp-20) var(--sp-24)}
  .footer-cols{flex-direction:column;gap:var(--sp-28)}
  .section,.woo-wrap{padding:var(--sp-48) var(--sp-20)}
  .headline,.headline-accent{font-size:var(--fs-36)}
  .page-title{font-size:var(--fs-30)}
  .title{font-size:var(--fs-26)}
  .prose{text-align:left}
  .hero{flex-direction:column;gap:var(--sp-32);align-items:stretch}
  .card-row{flex-direction:column}
  .card-service{flex:1 1 auto}
  .value-row{flex-direction:column;gap:var(--sp-24)}
  .vline{width:auto;height:var(--line)}
  .band-dark{padding:var(--sp-56) var(--sp-24)}
  .quote{font-size:var(--fs-26)}
  .split,.split-flip{flex-direction:column;gap:var(--sp-24);align-items:stretch}
  .gallery-row{flex-direction:column}
  .gallery-item{flex:1 1 auto}
  .contact-wrap{flex-direction:column;align-items:stretch;gap:var(--sp-32)}
  .form-row{flex-direction:column}
  .contact-form{padding:var(--sp-20)}
  .woocommerce ul.products li.product{max-width:100%;flex:1 1 100%}
  .woocommerce div.product .product_title{font-size:var(--fs-30)}
}
