:root {
  --ink:#1e2624; --muted:#65706d; --cream:#f4efe8; --paper:#fbfaf7;
  --sage:#a8b6a7; --sage-dark:#718879; --peach:#dc9d79; --line:#d9ddd5;
  --serif:'Playfair Display', Georgia, serif; --sans:'DM Sans', Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;max-width:100%;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55}
a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 48px));margin:0 auto}
.topbar{background:var(--ink);color:#dbe3dd;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.topbar__inner{display:flex;justify-content:space-between;gap:16px;padding:9px 0}.topbar a{color:#f0bb97;font-weight:700}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,250,247,.95);border-bottom:1px solid rgba(30,38,36,.08);backdrop-filter:blur(14px)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:77px;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-size:15px;line-height:1.05}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--sage-dark);color:#fff;font-size:11px;font-weight:700;letter-spacing:-.08em}.brand strong,.brand em{display:block}.brand em{font-family:var(--serif);font-size:16px;font-style:normal;color:var(--peach)}.nav{display:flex;gap:30px;font-size:13px;color:#4c5954}.nav a:hover,.social-links a:hover,.arrow-link:hover{color:var(--peach)}.nav-actions{display:flex;align-items:center;gap:18px;font-size:13px}.phone-link{font-weight:700}.menu-toggle{display:none;background:none;border:0;color:var(--ink);font-size:25px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:14px 20px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.02em;transition:.2s ease}.button span{font-size:16px;font-weight:400}.button--small{padding:11px 15px}.button--dark{background:var(--ink);color:#fff}.button--dark:hover{background:var(--sage-dark);transform:translateY(-2px)}.button--outline{border-color:var(--ink);background:transparent}.button--outline:hover{background:var(--ink);color:#fff}.button--whatsapp{background:#dfe9de;color:#3d6048}.button--whatsapp:hover{background:#c9ddca}
.section-pad{padding:100px 0}.hero{background:var(--cream);padding-top:82px;padding-bottom:86px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.eyebrow{margin:0 0 18px;color:var(--sage-dark);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero h1,h2{font-family:var(--serif);font-weight:600;line-height:1.05;letter-spacing:-.04em}.hero h1{margin:0 0 25px;font-size:clamp(52px,6vw,84px)}.hero h1 span,h2 em{color:var(--peach);font-style:normal}.hero-lead{max-width:470px;color:var(--muted);font-size:17px}.hero-actions{display:flex;align-items:center;gap:26px;margin:34px 0}.text-link{padding-bottom:4px;border-bottom:1px solid var(--peach);font-size:12px;font-weight:700}.text-link span{padding-left:8px;color:var(--peach)}.hero-note{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:12px}.note-icon{color:var(--peach);font-size:25px}.hero-note strong{color:var(--ink)}.hero-visual{position:relative;padding:0 30px 30px 0}.hero-image{height:510px;overflow:hidden;background:var(--sage)}.hero-image img,.card-image img,.story-image img{display:block;width:100%;height:100%;object-fit:cover}.hero-badge{position:absolute;right:0;bottom:0;padding:24px 25px;background:var(--peach);color:#fff;font-family:var(--serif);font-size:20px;line-height:1.1}.hero-stamp{position:absolute;top:28px;left:0;display:grid;place-content:center;width:94px;height:94px;border-radius:50%;background:var(--sage-dark);color:#fff;text-align:center;font-family:var(--serif);font-size:12px;line-height:1.05;transform:rotate(-10deg)}.hero-stamp strong{font-size:27px}
.trust-strip{background:var(--sage-dark);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:27px 0}.trust-grid>div{padding:0 32px;border-right:1px solid rgba(255,255,255,.2)}.trust-grid>div:first-child{padding-left:0}.trust-grid>div:last-child{border:0}.trust-grid strong,.trust-grid span{display:block}.trust-grid strong{font-size:13px}.trust-grid span{margin-top:3px;color:#d2dfd2;font-size:12px}
.section-heading,.reviews-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:48px}.section-heading h2,.reviews h2,.visit h2,.story h2{margin:0;font-size:clamp(38px,4.3vw,62px)}.section-intro{max-width:300px;color:var(--muted);font-size:14px}.cards-grid{display:grid;grid-template-columns:1.17fr .83fr;gap:24px}.feature-card{display:flex;flex-direction:column;min-height:390px;background:#e3ebe2}.feature-card--large{grid-row:span 2}.feature-card--large .card-image{height:360px}.feature-card .card-image{height:210px;overflow:hidden}.feature-content{padding:27px 29px 31px;flex:1;display:flex;flex-direction:column}.card-number{color:var(--sage-dark);font-size:11px;letter-spacing:.08em}.feature-content h3{max-width:340px;margin:10px 0 11px;font-family:var(--serif);font-size:27px;line-height:1.1;font-weight:600}.feature-content p{max-width:380px;margin:0 0 20px;color:#5d6c63;font-size:13px}.feature-extra{max-width:380px;margin:14px 0 20px;color:#5d6c63;font-size:12px;line-height:1.55}.arrow-link{font-size:12px;font-weight:700;margin-top:auto}.arrow-link span{margin-left:8px;color:var(--peach);font-size:16px}.feature-card--warm{position:relative;min-height:230px;background:#f0d6c5}.mini-pattern{position:absolute;right:34px;bottom:28px;color:rgba(255,255,255,.7);font-size:68px}
.story{background:var(--cream)}.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:95px}.story-image{position:relative;height:510px;padding:0 0 34px 34px}.image-caption{position:absolute;bottom:0;left:0;padding:19px 23px;background:var(--sage-dark);color:#fff;font-family:var(--serif);font-size:18px;line-height:1.15}.story-copy>p:not(.eyebrow){max-width:475px;color:var(--muted);font-size:15px}.signature{display:flex;align-items:center;gap:14px;margin-top:35px}.signature-line{width:50px;height:1px;background:var(--peach)}.signature strong,.signature small{display:block}.signature strong{font-family:var(--serif);font-size:18px}.signature small{color:var(--muted);font-size:11px}
.reviews{background:var(--paper)}.reviews-head{align-items:center}.reviews-panel{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px;border:1px solid var(--line);background:#fff}.rating-summary{display:flex;align-items:flex-start;gap:20px}.google-g{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;background:var(--ink);color:#fff;font-size:23px;font-weight:700}.rating-summary strong{font-family:var(--serif);font-size:22px}.rating-summary p{margin:5px 0 10px;color:var(--muted);font-size:13px}.rating-summary a{color:var(--sage-dark);font-size:12px;font-weight:700}.review-placeholder{display:flex;align-items:center;gap:15px;max-width:350px;padding-left:30px;border-left:1px solid var(--line);color:var(--muted);font-size:12px}.review-placeholder span{color:var(--peach);font-size:22px}
.visit{background:#dfe9de}.visit-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.visit-lead{max-width:410px;color:#53675a;font-size:15px}.contact-list{margin:30px 0}.contact-list>div{display:flex;gap:15px;padding:13px 0;border-bottom:1px solid rgba(113,136,121,.25);font-size:13px}.contact-list a{font-weight:700}.contact-icon{width:21px;color:var(--peach);font-size:19px}.contact-list strong{font-size:11px;letter-spacing:.1em;text-transform:uppercase}.opening-hours{display:inline-block;color:#53675a;line-height:1.65}.opening-hours b{color:var(--ink);font-size:11px;letter-spacing:0;text-transform:none}.visit-actions{display:flex;flex-wrap:wrap;gap:12px}.map-card{position:relative;height:420px;overflow:hidden;border:12px solid rgba(255,255,255,.45);background:#c8d2c6;box-shadow:0 14px 40px rgba(56,77,61,.13)}.map-card__top{position:absolute;top:18px;left:18px;z-index:2;display:flex;align-items:center;gap:9px;padding:11px 15px;background:#fff;box-shadow:0 4px 12px rgba(30,38,36,.1);font-size:11px;font-weight:700}.map-pin{color:var(--peach);font-size:17px}.map-card__body{position:relative;height:100%;overflow:hidden}.map-card__body img{display:block;width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;object-position:center}
.site-footer{padding:58px 0 20px;background:var(--ink);color:#fff}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;gap:30px}.brand--footer .brand-mark{background:var(--peach)}.footer-cta p{margin:0 0 7px;color:#aebcb1;font-size:12px}.footer-cta a{font-family:var(--serif);font-size:25px}.footer-cta a span,.social-links a span{margin-left:8px;color:var(--peach);font-family:var(--sans)}.social-links{display:flex;justify-content:flex-end;gap:20px;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:48px;padding-top:17px;border-top:1px solid rgba(255,255,255,.15);color:#84958a;font-size:10px;letter-spacing:.04em}.footer-bottom span:last-child{color:#efb18d}
@media (max-width:1100px){.container{width:min(100% - 40px,960px)}.nav{gap:18px}.hero-grid{gap:42px}.story-grid{gap:54px}.visit-grid{gap:50px}.hero h1{font-size:clamp(48px,6.2vw,72px)}}
@media (max-width:900px){.container{width:min(100% - 36px,720px)}.nav{display:none}.menu-toggle{display:block;order:3}.nav-actions .phone-link{display:none}.nav-wrap{position:relative}.nav.active{display:flex;position:absolute;top:77px;left:0;right:0;flex-direction:column;gap:18px;padding:22px;border:1px solid var(--line);background:var(--paper);box-shadow:0 12px 20px rgba(0,0,0,.07)}.hero-grid,.story-grid,.visit-grid{grid-template-columns:1fr;gap:48px}.hero{padding-top:64px}.hero-copy,.hero-visual,.story-image{width:100%;max-width:650px}.section-pad{padding:78px 0}.cards-grid{grid-template-columns:1fr}.feature-card--large{grid-row:auto}.feature-card--large .card-image{height:360px}.feature-card .card-image{height:235px}.section-heading,.reviews-head{display:block}.section-intro{max-width:480px;margin-top:20px}.reviews-head .button{margin-top:25px}.reviews-panel{display:block}.review-placeholder{max-width:none;margin-top:25px;padding:20px 0 0;border-top:1px solid var(--line);border-left:0}.map-card{height:380px}.footer-top{grid-template-columns:1fr;gap:28px}.social-links{justify-content:flex-start}.footer-bottom{flex-direction:column}.trust-grid{grid-template-columns:1fr;gap:18px}.trust-grid>div{padding:0!important;border:0}.hero h1{font-size:clamp(48px,9vw,70px)}}
@media (max-width:560px){.container{width:calc(100% - 32px)}.topbar__inner{gap:12px;font-size:9px}.topbar__inner span{max-width:190px;line-height:1.25}.nav-wrap{min-height:68px}.brand{font-size:14px}.brand-mark{width:32px;height:32px}.nav.active{top:68px}.nav-actions .button{padding:10px 12px;font-size:11px}.hero{padding-top:52px;padding-bottom:62px}.hero h1{margin-bottom:20px;font-size:clamp(45px,14vw,62px)}.hero-lead{font-size:15px}.hero-actions{align-items:stretch;flex-direction:column;gap:16px;margin:28px 0}.hero-actions .button{justify-content:space-between}.hero-visual{padding:0 18px 20px 0}.hero-image{height:360px}.hero-badge{right:0;padding:18px;font-size:17px}.hero-stamp{top:18px;left:-5px;width:76px;height:76px;font-size:10px}.hero-stamp strong{font-size:22px}.trust-grid{padding:22px 0}.section-pad{padding:62px 0}.section-heading h2,.reviews h2,.visit h2,.story h2{font-size:clamp(38px,11vw,52px)}.feature-card--large .card-image{height:270px}.feature-card .card-image{height:235px}.feature-content{padding:23px 22px 26px}.feature-content h3{font-size:24px}.story-image{height:360px;padding:0 0 27px 18px}.image-caption{padding:15px 18px;font-size:16px}.story-copy>p:not(.eyebrow),.visit-lead{font-size:14px}.reviews-panel{padding:22px 18px}.rating-summary{gap:13px}.rating-summary strong{font-size:19px}.rating-summary p{font-size:12px}.contact-list{margin:24px 0}.contact-list>div{font-size:12px}.visit-actions{display:grid;grid-template-columns:1fr;gap:10px}.visit-actions .button{width:100%;justify-content:center}.map-card{height:300px;border-width:8px}.map-card__top{top:12px;left:12px;padding:9px 11px;font-size:10px}.footer-cta a{font-size:22px}.social-links{flex-wrap:wrap;gap:13px}.footer-bottom{font-size:9px}}

/* ==========================================================
   TABLET Y MÓVIL · composición centrada, limpia y cómoda
   ========================================================== */
@media (max-width:900px){
  .topbar__inner{justify-content:center;text-align:center}
  .topbar__inner span{display:none}
  .nav.active{align-items:center;text-align:center;gap:0;padding:8px 20px;border-radius:0 0 14px 14px}
  .nav.active a{width:100%;padding:16px 0;font-size:15px;border-bottom:1px solid var(--line)}
  .nav.active a:last-child{border-bottom:0}

  /* Hero */
  .hero-grid{justify-items:center}
  .hero-copy{max-width:600px;margin-inline:auto;text-align:center}
  .hero-lead{margin-inline:auto}
  .hero-actions{justify-content:center;flex-wrap:wrap}
  .hero-note{justify-content:center;text-align:left}
  .hero-visual{width:100%;max-width:560px;margin-inline:auto}
  .hero-image{height:clamp(320px,62vw,460px)}

  /* Franja de confianza */
  .trust-grid{grid-template-columns:1fr;gap:0;padding:8px 0;text-align:center}
  .trust-grid>div{padding:20px 0!important;border:0;border-bottom:1px solid rgba(255,255,255,.18)}
  .trust-grid>div:last-child{border-bottom:0}

  /* Encabezados de sección */
  .section-heading,.reviews-head{text-align:center}
  .section-intro{margin:20px auto 0;text-align:center}
  .reviews-head .button{margin:26px auto 0}

  /* Tarjetas: grande arriba, dos pequeñas debajo */
  .cards-grid{grid-template-columns:1fr 1fr;max-width:760px;margin-inline:auto}
  .feature-card--large{grid-column:1/-1}
  .feature-card{min-height:0;text-align:center}
  .feature-content{display:flex;flex-direction:column;align-items:center;flex:1}
  .feature-content h3,.feature-content p{margin-left:auto;margin-right:auto}
  .feature-card--warm{justify-content:center}
  .mini-pattern{display:none}

  /* Historia */
  .story-grid{justify-items:center}
  .story-image{width:100%;max-width:560px;height:clamp(340px,62vw,460px);padding:0 0 30px;margin-inline:auto}
  .image-caption{left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:92%;text-align:center}
  .story-copy{text-align:center;max-width:600px;margin-inline:auto}
  .story-copy>p:not(.eyebrow){margin-inline:auto}
  .signature{justify-content:center;text-align:left}

  /* Reseñas */
  .reviews-panel{text-align:center}
  .rating-summary{flex-direction:column;align-items:center;gap:14px}
  .review-placeholder{justify-content:center;text-align:center}

  /* Visítanos */
  .visit-grid{justify-items:center}
  .visit-grid>div:first-child{text-align:center;width:100%;max-width:600px;margin-inline:auto}
  .visit-lead{margin-inline:auto}
  .contact-list{text-align:center}
  .contact-list>div{flex-direction:column;align-items:center;gap:6px;padding:18px 0}
  .contact-icon{width:auto}
  .visit-actions{justify-content:center}
  .map-card{width:100%;max-width:600px;margin-inline:auto}

  /* Footer */
  .footer-top{justify-items:center;text-align:center;gap:26px}
  .social-links{justify-content:center}
  .footer-bottom{align-items:center;text-align:center}
}

@media (max-width:560px){
  .container{width:calc(100% - 40px)}
  .section-pad{padding:56px 0}
  .hero{padding-top:44px;padding-bottom:56px}
  .hero-actions{flex-direction:column;align-items:center;gap:18px}
  .hero-actions .button{width:100%;max-width:340px;justify-content:center}
  .hero-note{flex-direction:column;gap:6px;text-align:center}
  .hero-visual{padding:0 14px 18px 0}
  .hero-image{height:320px}
  .hero-stamp{left:-4px}

  .section-heading,.reviews-head{margin-bottom:34px}
  .cards-grid{grid-template-columns:1fr;gap:18px}
  .feature-card--large .card-image,.feature-card .card-image{height:220px}
  .feature-content{padding:24px 20px 28px}

  .story-image{height:340px;padding-bottom:26px}
  .reviews-panel{padding:26px 18px}
  .visit-actions{display:flex;flex-direction:column;align-items:center}
  .visit-actions .button{width:100%;max-width:340px;justify-content:center}
  .reviews-head .button{width:100%;max-width:340px}
  .map-card{height:300px;border-width:8px}
  .footer-cta a{font-size:22px}
  .social-links{flex-wrap:wrap;gap:18px}
}

/* Identidad y fotografías reales de la tienda */
.brand-logo{display:block;width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:center;flex:0 0 42px}.brand--footer .brand-logo{width:42px;height:42px}
.store-look{background:#f4efe8}.store-look-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:42px}.store-look-head h2{margin:0;font-size:clamp(38px,4.3vw,62px)}.store-look-head>p{max-width:350px;margin:0;color:var(--muted);font-size:14px}.store-look-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}.store-look-main,.store-look-side,.store-look-wide{position:relative;overflow:hidden;background:#dfe9de}.store-look-main{grid-row:span 2;min-height:560px}.store-look-main>img,.store-look-side>img,.store-look-wide>img{display:block;width:100%;height:100%;object-fit:cover}.store-look-main>img{position:absolute;inset:0}.store-look-label{position:absolute;right:22px;bottom:22px;left:22px;display:flex;flex-direction:column;gap:3px;padding:18px 20px;background:rgba(30,38,36,.88);color:#fff}.store-look-label strong{font-family:var(--serif);font-size:23px}.store-look-label span{font-size:12px;color:#d8e1db}.store-look-side{display:grid;grid-template-columns:1fr 1fr;min-height:260px}.store-look-side>img{min-height:260px}.store-look-copy{padding:25px 22px}.store-look-copy h3,.store-look-wide h3{margin:10px 0 22px;font-family:var(--serif);font-size:23px;line-height:1.15}.store-look-wide{display:grid;grid-template-columns:1.25fr .75fr;min-height:260px}.store-look-wide>img{min-height:260px}.store-look-wide>div{padding:27px 24px}
@media(max-width:900px){.brand-logo{width:38px;height:38px;flex-basis:38px}.store-look-head{display:block}.store-look-head>p{margin-top:20px;max-width:520px}.store-look-grid{grid-template-columns:1fr}.store-look-main{grid-row:auto;min-height:430px}.store-look-side,.store-look-wide{min-height:240px}}
@media(max-width:560px){.brand-logo{width:34px;height:34px;flex-basis:34px}.store-look-head{text-align:center}.store-look-head>p{margin-right:auto;margin-left:auto}.store-look-main{min-height:360px}.store-look-label{right:12px;bottom:12px;left:12px;padding:14px 15px;text-align:center}.store-look-label strong{font-size:19px}.store-look-side,.store-look-wide{display:block;min-height:0}.store-look-side>img,.store-look-wide>img{height:220px;min-height:0}.store-look-copy,.store-look-wide>div{text-align:center;padding:22px 18px 25px}.store-look-copy h3,.store-look-wide h3{margin-bottom:17px;font-size:21px}}

/* Evita que la tarjeta principal herede el alto de dos filas en tablet */
@media (max-width:900px){
  .cards-grid{align-items:start}
  .feature-card--large{grid-row:auto!important;align-self:start}
}

/* Tarjeta principal: altura basada en contenido, sin hueco heredado de la rejilla */
.feature-points{display:flex;flex-wrap:wrap;gap:7px 16px;margin:0 0 22px;color:#53675a;font-size:12px}.feature-points span{white-space:nowrap}
@media (max-width:900px){
  .cards-grid{grid-auto-rows:max-content}
  .feature-card--large{display:block!important;grid-column:1/-1;grid-row:auto!important;height:auto!important;min-height:0!important;align-self:start}
  .feature-card--large .card-image{height:360px!important}
  .feature-card--large .feature-content{height:auto!important;min-height:0!important;flex:none}
}
@media (max-width:560px){
  .feature-card--large .card-image{height:270px!important}
  .feature-points{justify-content:center;gap:6px 12px}
  .feature-points span{white-space:normal}
}
