@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --hero-red: #b22218;
  --accent-red: #dd2b1c;
  --accent-red-hover: #c42518;
  --khaki: #757000;
  --khaki-hover: #5c5900;
  --khaki-light: rgba(117,112,0,0.06);
  --bg: #faf9f6;
  --white: #ffffff;
  --text: #545454;
  --text-muted: #888888;
  --border: #e2e2e2;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.04),0 1px 2px rgba(0,0,0,0.06);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.06);
  --shadow-lg: 0 8px 32px rgba(0,0,0,0.08);
  --radius: 6px;
  --container: 1140px;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Manrope',sans-serif;font-size:15px;line-height:1.65;font-weight:400;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent-red);text-decoration:none;transition:color .2s ease}
a:hover{color:var(--accent-red-hover)}
ul,ol{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
input,select,textarea{font-family:inherit;font-size:inherit}
:focus-visible{outline:2px solid var(--accent-red);outline-offset:2px;border-radius:var(--radius)}

.container{max-width:var(--container);padding:0 20px;margin:0 auto}

h1,h2,h3,h4,h5,h6{color:var(--text);font-weight:700}
h1{font-size:32px;line-height:1.08;letter-spacing:-0.03em;font-weight:800}
h2{font-size:26px;line-height:1.15}
h3{font-size:18px;line-height:1.3;font-weight:600}
.section-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--khaki);margin-bottom:14px;display:block}
.section-sub{color:var(--text-muted);margin-top:14px;max-width:640px}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;font-size:15px;font-weight:600;border-radius:var(--radius);cursor:pointer;transition:all .2s ease;text-decoration:none;font-family:inherit;line-height:1;border:none}
.btn svg{width:18px;height:18px;flex-shrink:0}
.btn-sm{padding:9px 18px;font-size:13px}
.btn-sm svg{width:15px;height:15px}
.btn-red{background:var(--accent-red);color:#fff}
.btn-red:hover{background:var(--accent-red-hover);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn-outline{background:transparent;color:var(--text);border:1.5px solid var(--border)}
.btn-outline:hover{border-color:var(--text);color:var(--text)}
.btn-whatsapp{background:var(--khaki);color:#fff}
.btn-whatsapp:hover{background:var(--khaki-hover);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn-hero-red{background:var(--hero-red);color:#fff}
.btn-hero-red:hover,.btn-hero-white:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn-hero-white{background:#fff;color:var(--hero-red);font-weight:700}
.btn-hero-outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,0.4)}
.btn-hero-outline:hover{border-color:#fff;color:#fff}

/* Reveal */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal.visible{opacity:1;transform:none}
.reveal-delay-1{transition-delay:.08s}
.reveal-delay-2{transition-delay:.16s}
.reveal-delay-3{transition-delay:.24s}
.reveal-delay-4{transition-delay:.32s}

/* Mobile: force product cards always visible — prevent IntersectionObserver misfire */
@media(max-width:768px){
.product-card,.product-card.reveal,.variant-card,.variant-card.reveal{opacity:1!important;transform:none!important;visibility:visible!important}
}

/* Shri Hari */
.shri-hari{text-align:center;font-size:11px;font-weight:500;opacity:.35;color:var(--text);padding:6px 0;background:var(--bg)}

/* Trust Bar */
.trust-bar{background:var(--bg);border-bottom:1px solid var(--border);padding:8px 0}
.trust-bar .container{display:flex;justify-content:space-between;align-items:center}
.trust-bar__gst,.trust-bar__phone{font-size:13px;font-weight:500;color:var(--text)}
.trust-bar__phone a{color:var(--text);text-decoration:none}
.trust-bar__phone a:hover{color:var(--accent-red)}

/* Nav */
.nav{position:sticky;top:0;z-index:100;background:var(--white);transition:box-shadow .3s ease}
.nav.scrolled{box-shadow:var(--shadow-sm)}
.nav .container{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}
.nav__brand{display:flex;flex-direction:column;text-decoration:none;flex-shrink:0}
.nav__brand-name{font-size:18px;font-weight:700;color:var(--accent-red);line-height:1.2}
.nav__brand-tagline{font-size:11px;font-weight:600;color:var(--khaki);text-transform:uppercase;letter-spacing:.05em;line-height:1.3}
.nav__links{display:none;gap:28px}
.nav__links a{font-size:15px;font-weight:500;color:var(--text);text-decoration:none;transition:color .2s ease;white-space:nowrap}
.nav__links a:hover,.nav__links a.active{color:var(--accent-red)}
.nav__cta{display:none}
.nav__cta .btn-whatsapp{padding:10px 20px;font-size:13px}
.nav__hamburger{display:flex;flex-direction:column;gap:5px;padding:8px;cursor:pointer;z-index:110}
.nav__hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:all .3s ease}
.nav__hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav__hamburger.open span:nth-child(2){opacity:0}
.nav__hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.nav__mobile{position:fixed;top:0;right:-100%;width:280px;max-width:80vw;height:100vh;background:var(--white);box-shadow:var(--shadow-lg);z-index:105;padding:80px 28px 40px;transition:right .35s cubic-bezier(.16,1,.3,1);overflow-y:auto}
.nav__mobile.open{right:0}
.nav__mobile a{display:block;font-size:16px;font-weight:500;color:var(--text);padding:14px 0;border-bottom:1px solid var(--border);text-decoration:none;min-height:44px}
.nav__mobile a:hover,.nav__mobile a.active{color:var(--accent-red)}
.nav__mobile .btn-whatsapp{margin-top:24px;width:100%;justify-content:center;box-sizing:border-box;text-align:center}
.nav__overlay{position:fixed;inset:0;background:rgba(84,84,84,0.3);z-index:102;opacity:0;pointer-events:none;transition:opacity .3s ease}
.nav__overlay.open{opacity:1;pointer-events:all}

/* Sections */
section{padding:56px 0}
.bg-white{background:var(--white)}
.bg-off-white{background:var(--bg)}

/* Flower motif SVG pattern for hero/CTA */
.hero::before,.cta-banner::before{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M20 8L23 14 20 17 17 14ZM20 23L23 26 20 32 17 26ZM8 20L14 17 17 20 14 23ZM23 20L26 17 32 20 26 23ZM14 11L17 14 14 17 11 14ZM26 23L29 26 26 29 23 26Z' fill='white' fill-opacity='.06'/%3E%3C/svg%3E");background-size:40px 40px;transform:rotate(15deg) scale(1.3);pointer-events:none}

/* Hero */
.hero{background:var(--hero-red);padding:48px 0 56px;position:relative;overflow:hidden}
.hero .container,.cta-banner .container{position:relative;z-index:1}
.hero__grid{display:grid;gap:32px}
.hero__label{font-size:12px;font-weight:500;color:rgba(255,255,255,0.7);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.hero h1{color:#fff;margin-bottom:16px}
.hero__sub{font-size:15px;color:rgba(255,255,255,0.75);line-height:1.6;max-width:520px;margin-bottom:28px}
.hero__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}
.hero__trust{font-size:12px;font-weight:500;color:rgba(255,255,255,0.55);display:flex;flex-wrap:wrap;gap:12px}

/* Image placeholder */
.hero__image,.page-hero__image,.product-card__image,.bestseller-card__image,.related-card__image,.founder__image{border-radius:var(--radius);min-height:200px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;text-align:center;padding:20px}
.hero__image{background:rgba(255,255,255,0.08);min-height:260px;color:rgba(255,255,255,0.3)}
.page-hero__image,.founder__image{background:rgba(117,112,0,0.06);min-height:260px;color:var(--text-muted)}
.product-card__image,.bestseller-card__image,.related-card__image{background:rgba(117,112,0,0.04);color:var(--text-muted);font-size:12px;padding:16px}
.related-card__image{min-height:120px}
.bestseller-card__image{min-height:180px}
.product-card__image{position:relative}

/* Page Hero */
.page-hero{background:var(--bg);padding:32px 0 48px}
.page-hero__grid{display:grid;gap:32px}
.breadcrumb{font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:16px}
.breadcrumb a{color:var(--text-muted)}
.breadcrumb a:hover{color:var(--accent-red)}
.breadcrumb span{margin:0 6px}
.page-hero__label{font-size:13px;font-weight:600;color:var(--khaki);text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}
.page-hero__sub{font-size:15px;color:var(--text);opacity:.8;line-height:1.6;max-width:540px;margin-top:14px}
.page-hero__emotional{font-size:16px;font-weight:600;color:var(--khaki);opacity:1;font-style:italic;margin-top:12px}
.page-hero__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}

/* Clients Strip */
.clients-strip{background:#545454;padding:16px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.clients-strip__inner{display:flex;gap:24px;white-space:nowrap;min-width:max-content}
.clients-strip__item{font-size:13px;font-weight:500;color:rgba(255,255,255,0.85)}

/* Cards */
.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:28px;transition:transform .2s ease,box-shadow .2s ease}
.card:hover,.product-card:hover,.bestseller-card:hover,.related-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.card__tag,.product-card__tag{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;border-radius:3px;margin-bottom:12px}
.card__tag--khaki,.product-card__tag{background:var(--khaki-light);color:var(--khaki)}
.card__tag--red{background:rgba(221,43,28,0.08);color:var(--accent-red)}
.card__tag--dark{background:rgba(84,84,84,0.08);color:var(--text)}
.card__tag--bestseller,.product-card__badge{background:var(--accent-red);color:#fff}
.card__tag--printed{background:rgba(178,34,24,0.08);color:var(--hero-red)}
.card--accent{border-left:3px solid var(--khaki)}
.card--featured{padding:36px}

/* Product Cards */
.product-card,.bestseller-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.product-card__badge{position:absolute;top:12px;right:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:3px}
.product-card__body,.bestseller-card__body{padding:20px}
.product-card__name{font-size:18px;font-weight:700;margin-bottom:10px}
.product-card__specs{font-size:13px;font-weight:500;color:var(--text);line-height:1.6;margin-bottom:12px}
.product-card__specs span{display:block}
.product-card__badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.spec-badge{font-size:12px;font-weight:600;padding:4px 10px;border-radius:3px;background:var(--bg);color:var(--text)}
.product-card__feature{font-size:13px;color:var(--text-muted);line-height:1.5;margin-bottom:12px}
.product-card__price{font-size:12px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px}

/* Consistent portrait product card images */
.product-card-img{position:relative;width:100%;aspect-ratio:3/4;overflow:hidden;border-radius:8px 8px 0 0;display:block;padding:0;min-height:0}
.product-card-img img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}

/* USP card images */
.usp-card-img{width:100%;aspect-ratio:16/9;max-height:160px;overflow:hidden;border-radius:8px;margin-bottom:.75rem}
.usp-card-img img{width:100%;height:100%;object-fit:cover}

/* Stats */
.stats-grid{display:grid;grid-template-columns:1fr;gap:24px}
.stat{text-align:center}
.stat__number{font-size:36px;font-weight:800;color:var(--hero-red);line-height:1.1}
.stat__label{font-size:12px;font-weight:500;color:var(--text);text-transform:uppercase;letter-spacing:.04em;margin-top:6px}

/* Steps */
.steps-grid{display:grid;gap:32px}
.step__number{font-size:48px;font-weight:800;color:var(--border);line-height:1;margin-bottom:8px}
.step__title{font-size:18px;font-weight:600;margin-bottom:6px}
.step__desc{font-size:14px;color:var(--text-muted);line-height:1.5}

/* Founder */
.founder-section{display:grid;gap:32px}
.founder__quote{font-size:18px;font-weight:500;font-style:italic;color:var(--text);line-height:1.5;margin-bottom:16px}
.founder__name{font-size:15px;font-weight:600;color:var(--text)}
.founder__title{font-size:14px;color:var(--text-muted)}

/* Form */
.form-section{max-width:720px}
.form-grid{display:grid;gap:16px}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-group label{font-size:13px;font-weight:600;color:var(--text)}
.form-group input,.form-group select,.form-group textarea{padding:12px 14px;min-height:48px;border:1px solid var(--border);border-radius:var(--radius);background:var(--white);color:var(--text);font-size:15px;transition:border-color .2s ease;appearance:none;-webkit-appearance:none}
.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-red)}
.form-group input::placeholder{color:var(--text-muted)}
.form-consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer}
.form-consent input[type="checkbox"]{width:18px;height:18px;min-height:auto;margin-top:2px;flex-shrink:0;accent-color:var(--accent-red)}
.form-consent span{font-size:13px;font-weight:500;color:var(--text-muted);line-height:1.4}
.form-below{font-size:13px;font-weight:500;color:var(--text-muted);margin-top:20px}
.form-below a{color:var(--text);font-weight:600}
.form-message{padding:14px 18px;border-radius:var(--radius);font-size:14px;font-weight:500;margin-top:16px;display:none}
.form-message--success{background:rgba(117,112,0,0.08);color:var(--khaki);display:block}
.form-message--error{background:rgba(221,43,28,0.08);color:var(--accent-red);display:block}

/* FAQ */
.faq-list{max-width:780px}
.faq-item{border-bottom:1px solid var(--border)}
.faq-item:first-child{border-top:1px solid var(--border)}
.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;min-height:48px;font-size:15px;font-weight:600;color:var(--text);text-align:left;cursor:pointer;background:none;border:none}
.faq-question:hover{color:var(--accent-red)}
.faq-icon{width:20px;height:20px;flex-shrink:0;position:relative}
.faq-icon::before,.faq-icon::after{content:'';position:absolute;background:var(--text);border-radius:1px;transition:transform .3s ease}
.faq-icon::before{width:14px;height:2px;top:50%;left:50%;transform:translate(-50%,-50%)}
.faq-icon::after{width:2px;height:14px;top:50%;left:50%;transform:translate(-50%,-50%)}
.faq-item.active .faq-icon::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1)}
.faq-answer__inner{padding:0 0 20px;font-size:14px;color:var(--text-muted);line-height:1.65}

/* CTA Banner */
.cta-banner{background:var(--hero-red);padding:28px 0;text-align:center;position:relative;overflow:hidden}
.cta-banner h2{color:#fff;font-size:22px;font-weight:800;margin-bottom:8px}
.cta-banner__sub{font-size:14px;color:rgba(255,255,255,0.6);margin-bottom:20px}
.cta-banner__below{font-size:12px;font-weight:500;color:rgba(255,255,255,0.45);margin-top:14px}
.cta-banner__below a{color:rgba(255,255,255,0.45)}
.cta-banner__below a:hover{color:rgba(255,255,255,0.7)}

/* Related */
.related-grid{display:grid;gap:16px}
.related-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;display:block}
.related-card__body{padding:20px}
.related-card__body p{font-size:14px;color:var(--text-muted);margin-bottom:12px}
.related-card__link{font-size:14px;font-weight:600;color:var(--accent-red)}

/* Specs Table */
.specs-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius)}
.specs-table{width:100%;min-width:600px;border-collapse:collapse;font-size:13px}
.specs-table th{background:var(--bg);font-weight:600;text-align:left;padding:12px 14px;border-bottom:1px solid var(--border);white-space:nowrap;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--text)}
.specs-table td{padding:12px 14px;border-bottom:1px solid var(--border);color:var(--text);font-weight:500}
.specs-table tr:last-child td{border-bottom:none}
.specs-table__note{font-size:13px;color:var(--text-muted);margin-top:16px}
.specs-table__price{font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:12px}

/* Tags */
.tags-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.tag{display:inline-block;font-size:12px;font-weight:600;padding:6px 14px;border-radius:3px;background:var(--khaki-light);color:var(--khaki);text-transform:uppercase;letter-spacing:.04em}

/* Swatches */
.swatches{display:flex;flex-wrap:wrap;gap:16px}
.swatch{display:flex;flex-direction:column;align-items:center;gap:6px}
.swatch__circle{width:32px;height:32px;border-radius:50%;border:2px solid var(--border)}
.swatch__name{font-size:11px;font-weight:500;color:var(--text-muted)}

/* Size Blocks */
.size-group{margin-bottom:20px}
.size-group__title{font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.size-blocks{display:flex;flex-wrap:wrap;gap:8px}
.size-block{padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;font-weight:600;color:var(--text);background:var(--white)}

/* Filter Tabs */
.filter-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.filter-tab{padding:9px 18px;font-size:13px;font-weight:600;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--white);color:var(--text);cursor:pointer;transition:all .2s ease;min-height:44px;display:inline-flex;align-items:center}
.filter-tab:hover{border-color:var(--text)}
.filter-tab.active{background:var(--text);color:#fff;border-color:var(--text)}

/* Emotional Break */
.emotional-break{padding:48px 0;text-align:center}
.emotional-break__main{font-size:18px;font-weight:700;color:var(--text);margin-bottom:12px}
.emotional-break__sub{font-size:14px;color:var(--text-muted);max-width:600px;margin:0 auto;line-height:1.6}

/* Grids */
.grid-3,.grid-2,.why-grid{display:grid;gap:20px}
.grid-2{gap:16px}

/* Why Cards */
.why-card{background:var(--white);border:1px solid var(--border);border-left:3px solid var(--khaki);border-radius:var(--radius);padding:24px}
.why-card h3{margin-bottom:8px}
.why-card p{font-size:14px;color:var(--text-muted);line-height:1.6}

/* Buyer Cards */
.buyer-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:24px}
.buyer-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.buyer-card p{font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:14px}

/* Footer */
.footer{background:#545454;color:rgba(255,255,255,0.65);padding:56px 0 0}
.footer__grid{display:grid;gap:32px;padding-bottom:40px}
.footer__brand-name{font-size:18px;font-weight:700;color:#fff;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.footer__logo{width:36px;height:36px;border-radius:50%}
.footer__brand-desc{font-size:14px;line-height:1.6;margin-bottom:20px}
.footer h3{color:#fff;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px}
.footer__links a{display:block;color:rgba(255,255,255,0.65);font-size:14px;font-weight:500;padding:4px 0;text-decoration:none;transition:color .2s ease}
.footer__links a:hover,.footer__contact a:hover{color:#fff}
.footer__contact p{font-size:14px;font-weight:500;margin-bottom:8px;line-height:1.5}
.footer__contact a{color:rgba(255,255,255,0.65);text-decoration:none}
.footer__bottom{border-top:1px solid rgba(255,255,255,0.1);padding:20px 0;font-size:13px;font-weight:500;text-align:center}

/* Mobile Bottom Bar */
.mobile-bar{display:flex;flex-direction:row-reverse;position:fixed;bottom:0;left:0;right:0;z-index:999;background:rgba(250,249,246,0.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid rgba(0,0,0,0.06);padding:8px 12px;gap:8px}
.mobile-bar__btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 10px;border-radius:var(--radius);font-size:14px;font-weight:600;text-decoration:none;color:#fff;min-height:44px}
.mobile-bar__btn--whatsapp{background:var(--khaki)}
.mobile-bar__btn--quote{background:var(--hero-red)}
.mobile-bar__btn svg{width:18px;height:18px;flex-shrink:0}
.wa-icon{width:18px;height:18px;fill:currentColor;flex-shrink:0}

/* Contact Form + Map layout */
.contact-form-map{display:grid;grid-template-columns:1fr;gap:32px}
.contact-form-map__map iframe{width:100%;height:300px;border:0;border-radius:var(--radius)}

/* Tablet 768px+ */
@media(min-width:768px){
  body{font-size:16px}
  section{padding:80px 0}
  h2{font-size:32px}
  .section-label{font-size:13px}
  .form-grid{grid-template-columns:1fr 1fr}
  .stats-grid{grid-template-columns:repeat(4,1fr)}
  .stat__number{font-size:42px}
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .grid-2,.related-grid{grid-template-columns:repeat(2,1fr)}
  .hero__grid{grid-template-columns:55% 1fr;align-items:center;gap:40px}
  .page-hero__grid{grid-template-columns:60% 1fr;align-items:center;gap:40px}
  .founder-section{grid-template-columns:1fr 1.2fr;align-items:center;gap:48px}
  .contact-form-map{grid-template-columns:55% 1fr;gap:40px;align-items:start}
  .contact-form-map__map iframe{height:100%;min-height:480px}
  .footer__grid{grid-template-columns:1.3fr 1fr 1fr 1.2fr}
  .swatch__circle{width:40px;height:40px}
}

/* Desktop 1024px+ */
@media(min-width:1024px){
  section{padding:96px 0}
  h1{font-size:48px}
  h2{font-size:36px}
  h3{font-size:20px}
  .nav__links{display:flex}
  .nav__cta{display:block}
  .nav__hamburger,.mobile-bar{display:none}
  .grid-3{grid-template-columns:repeat(3,1fr)}
  .steps-grid{grid-template-columns:repeat(4,1fr);gap:24px}
  .stat__number{font-size:48px}
  .cta-banner{padding:36px 0}
  .cta-banner h2{font-size:24px}
  .emotional-break{padding:80px 0}
  .emotional-break__main{font-size:20px}
  .why-grid{grid-template-columns:1fr 1fr;gap:20px}
  .why-grid .why-card:first-child{grid-row:1/3;display:flex;flex-direction:column;justify-content:center;padding:36px}
  .hero__sub{font-size:16px}
  .page-hero{padding:48px 0 64px}
}

/* Large Desktop 1440px+ */
@media(min-width:1440px){
  .hero__grid,.page-hero__grid{gap:64px}
}

/* Mobile body padding for fixed bar */
@media(max-width:1023px){
  body{padding-bottom:72px}
}

/* WhatsApp Modal */
.wa-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0);z-index:9999;display:none;align-items:center;justify-content:center;transition:background .2s ease}
.wa-modal-overlay.open{display:flex;background:rgba(0,0,0,0.5)}
.wa-modal{background:var(--white);border-radius:var(--radius);max-width:420px;width:calc(100% - 32px);overflow:hidden;opacity:0;transform:translateY(10px);transition:opacity .2s ease-out,transform .2s ease-out;max-height:90vh;overflow-y:auto}
.wa-modal-overlay.open .wa-modal{opacity:1;transform:translateY(0)}
.wa-modal__header{background:var(--hero-red);padding:18px 24px;position:relative;overflow:hidden}
.wa-modal__header-flowers{position:absolute;right:-10px;top:-5px;width:200px;height:70px;opacity:.12;pointer-events:none}
.wa-modal__close{position:absolute;top:10px;right:10px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;font-weight:700;cursor:pointer;z-index:1;background:none;border:none;border-radius:var(--radius)}
.wa-modal__close:hover{background:rgba(255,255,255,0.1)}
.wa-modal__title{display:flex;align-items:center;gap:10px;color:#fff;font-size:17px;font-weight:700;position:relative;z-index:1}
.wa-modal__title svg{width:22px;height:22px;flex-shrink:0}
.wa-modal__subtitle{font-size:12px;color:rgba(255,255,255,0.65);margin-top:4px;position:relative;z-index:1}
.wa-modal__body{padding:22px 24px}
.wa-modal__form{display:grid;gap:14px}
.wa-modal__group{display:flex;flex-direction:column;gap:5px}
.wa-modal__group label{font-size:13px;font-weight:500;color:var(--text)}
.wa-modal__group input,.wa-modal__group select{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;color:var(--text);background:var(--white);min-height:44px;transition:border-color .2s ease;appearance:none;-webkit-appearance:none}
.wa-modal__group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.wa-modal__group input:focus,.wa-modal__group select:focus{outline:none;border-color:var(--hero-red)}
.wa-modal__group input::placeholder{color:var(--text-muted)}
.wa-modal__row{display:flex;gap:12px}
.wa-modal__row .wa-modal__group{flex:1}
.wa-modal__submit{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;font-size:15px;font-weight:600;border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:inherit;border:none;background:var(--khaki);color:#fff;min-height:48px}
.wa-modal__submit:hover{background:var(--khaki-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.wa-modal__submit svg{width:18px;height:18px;flex-shrink:0}

/* Print */
@media print{
  *,*::before,*::after{background:transparent!important;color:#333!important;box-shadow:none!important}
  .nav,.mobile-bar,.cta-banner,.nav__overlay,.nav__mobile{display:none!important}
  body{font-size:12pt;line-height:1.5;padding-bottom:0}
  section{padding:20px 0;page-break-inside:avoid}
  a{text-decoration:underline}
  .reveal{opacity:1!important;transform:none!important}
  .footer{padding:20px 0}
}
