/* paginas.css — generado por seo/generar-paginas.mjs (2026-10-27).
   1) Fuentes y estilos copiados de la portada (index.html)  2) Componentes de las páginas SEO */

  @font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/fraunces-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
  @font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/fraunces-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
  @font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/inter-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
  @font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/inter-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}


  :root{
    --bg:        #FBF7F1;
    --surface:   #FFFFFF;
    --surface-2: #F4EFE7;
    --border:    #E9E0D1;
    --border-strong: #D6C8B0;
    --fg:        #1A1611;
    --fg-muted:  #5C5343;
    --fg-subtle: #6E624F;
    --primary:       #1F5A3A;
    --primary-hover: #164028;
    --primary-soft:  #E3EEDE;
    --primary-fg:    #FBF7F1;
    --accent:        #C73A2F;
    --accent-soft:   #FBE6E2;
    --gold:          #C89B3C;
    --radius:    12px;
    --radius-lg: 18px;
  }
  *{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
  html{scroll-behavior:smooth}
  body{font-family:'Inter',ui-sans-serif,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--fg);overflow-x:hidden}
  .font-display{font-family:'Fraunces','Inter',serif;letter-spacing:-0.02em}
  .font-italic{font-family:'Fraunces','Inter',serif;font-style:italic;letter-spacing:-0.01em}
  .tnum{font-variant-numeric:tabular-nums}
  .eyebrow{font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:500;letter-spacing:-.005em;border-radius:10px;transition:all .22s ease;font-size:14px}
  .btn-primary{height:44px;padding:0 24px;background:var(--primary);color:var(--primary-fg)}
  .btn-primary:hover{background:var(--primary-hover)}
  .btn-primary:active{transform:scale(.98)}
  .btn-secondary{height:44px;padding:0 24px;background:transparent;color:var(--fg);border:1px solid var(--border-strong)}
  .btn-secondary:hover{background:var(--surface-2);border-color:var(--fg-subtle)}
  .btn-ghost{height:36px;padding:0 12px;color:var(--fg-muted);border-radius:6px}
  .btn-ghost:hover{color:var(--fg);background:var(--surface-2)}
  .btn-whatsapp{height:44px;padding:0 24px;background:#25D366;color:#fff}
  .btn-whatsapp:hover{background:#1EBE5B}
  .btn-whatsapp:active{transform:scale(.98)}
  .btn-accent{height:44px;padding:0 22px;background:var(--accent);color:#fff}
  .btn-accent:hover{background:#B5332A}
  .btn-accent:active{transform:scale(.98)}
  @media (max-width:767px){ .btn-primary, .btn-secondary, .btn-whatsapp, .btn-accent{height:48px} }
  /* Visibilitat responsive robusta per a botons (.btn força display i guanyava a .hidden de Tailwind) */
  .btn.from-md, .btn.from-lg{ display:none; }
  @media (min-width:768px){ .btn.from-md{ display:inline-flex; } }
  @media (min-width:1024px){ .btn.from-lg{ display:inline-flex; } }
  .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color .3s ease, transform .35s cubic-bezier(.16,1,.3,1)}
  .card:hover{border-color:var(--border-strong);transform:translateY(-2px)}
  a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
    outline:2px solid var(--primary); outline-offset:2px; border-radius:6px;
  }
  @keyframes fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
  .reveal.is-armed{opacity:0}
  .reveal.in{animation:fade-up .6s cubic-bezier(.16,1,.3,1) forwards}
  @media (prefers-reduced-motion:reduce){
    .reveal,.reveal.in,.reveal.is-armed{animation:none!important;opacity:1!important;transform:none!important}
    html{scroll-behavior:auto}
  }
  details > summary{list-style:none;cursor:pointer}
  details > summary::-webkit-details-marker{display:none}
  details[open] .chev{transform:rotate(45deg)}
  .chev{transition:transform .25s ease}
  header.sticky{background:rgba(251,247,241,.85)}
  .sticky-bar{box-shadow:0 -8px 24px -12px rgba(15,23,42,.18); background:rgba(251,247,241,.95); padding-bottom:env(safe-area-inset-bottom)}
  body{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}
  @media(min-width:768px){body{padding-bottom:0}}
  .hz-weekend{background:rgba(227,238,222,.4)}
  .skip-link{position:fixed;top:.75rem;left:.75rem;z-index:100;transform:translateY(-160%);background:var(--primary);color:var(--primary-fg);padding:.6rem 1rem;border-radius:10px;font-size:14px;font-weight:600;box-shadow:0 8px 24px -8px rgba(0,0,0,.4);transition:transform .2s cubic-bezier(.16,1,.3,1)}
  .skip-link:focus{transform:translateY(0)}
  main[tabindex]:focus{outline:none}
  .hairline{border-color:var(--border)}
  .star{color:var(--gold)}

  .it-ribbon{height:3px;background:linear-gradient(90deg, #1F5A3A 0%, #1F5A3A 33%, #FBF7F1 33%, #FBF7F1 66%, #C73A2F 66%, #C73A2F 100%);border-radius:2px}

  .hero-photo-wrap{ perspective:1000px; }
  .hero-photo{ will-change:transform; transition:transform .25s cubic-bezier(.16,1,.3,1); }


  .scroll-progress{ position:fixed; top:0; left:0; height:2px; width:0; background:var(--accent); z-index:60; transition:width .1s linear; pointer-events:none; }
  @media (prefers-reduced-motion: reduce){ .scroll-progress{ display:none; } .hero-photo{ transform:none !important; transition:none; } }

  .menu-item{ display:flex; align-items:baseline; gap:.75rem; }
  .menu-item .dots{ flex:1; min-width:24px; border-bottom:1px dotted var(--border-strong); transform:translateY(-4px); }
  .menu-item > span:last-child{ white-space:nowrap; }

  /* ---------- Custom date / time pickers ---------- */
  .picker-pop{ box-shadow:0 24px 48px -16px rgba(15,23,42,.22); }
  .dp-day{ min-height:44px; border-radius:9px; font-size:14px; font-variant-numeric:tabular-nums; color:var(--fg); transition:background .15s ease, color .15s ease; }
  .dp-day:hover:not(:disabled){ background:var(--surface-2); }
  .dp-day:disabled{ color:var(--fg-subtle); opacity:.38; cursor:default; }
  .dp-day.is-sel{ background:var(--primary); color:var(--primary-fg); font-weight:600; }
  .dp-day.is-today:not(.is-sel){ box-shadow:inset 0 0 0 1px var(--border-strong); }
  .time-chip{ min-height:44px; border-radius:10px; border:1px solid var(--border); font-size:14px; font-variant-numeric:tabular-nums; color:var(--fg); transition:border-color .15s ease, color .15s ease, background .15s ease; }
  .time-chip:hover{ border-color:var(--primary); color:var(--primary); }
  .time-chip.is-sel{ background:var(--primary); color:var(--primary-fg); border-color:var(--primary); font-weight:600; }

  /* ---------- Carta tabs ---------- */
  .carta-tab{ padding:.6rem .5rem; border-radius:12px; font-weight:600; font-size:.9rem; color:var(--fg-muted); white-space:nowrap; transition:background .2s ease, color .2s ease, box-shadow .2s ease; cursor:pointer; }
  @media (min-width:640px){ .carta-tab{ padding:.65rem 1.5rem; font-size:.95rem; } }
  .carta-tab[aria-selected="true"]{ background:var(--primary); color:var(--primary-fg); box-shadow:0 8px 18px -8px rgba(31,90,58,.55); }
  .carta-tab[aria-selected="false"]:hover{ color:var(--fg); background:var(--surface); }
  .carta-panel[hidden]{ display:none; }
  .carta-panel:hover{ transform:none; border-color:var(--border); }
  @keyframes carta-fade{ from{ opacity:0; transform:translateY(8px); } to{ opacity:1; transform:none; } }
  .carta-panel{ animation:carta-fade .35s cubic-bezier(.16,1,.3,1); }
  @media (prefers-reduced-motion:reduce){ .carta-panel{ animation:none; } }

  /* ---------- Carta deslizable (data-driven) ---------- */
  .carta-tabs-scroll{ overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; -ms-overflow-style:none; padding-bottom:2px; }
  .carta-tabs-scroll::-webkit-scrollbar{ display:none; }
  .carta-tablist{ display:inline-flex; gap:.3rem; padding:.4rem; border-radius:16px; background:var(--surface-2); border:1px solid var(--border); }
  .carta-hint{ margin-top:1rem; text-align:center; font-size:.78rem; letter-spacing:.04em; color:var(--fg-subtle); display:flex; align-items:center; justify-content:center; gap:.4rem; }
  .carta-hint svg{ width:15px; height:15px; animation:carta-nudge 1.8s ease-in-out infinite; }
  @keyframes carta-nudge{ 0%,100%{ transform:translateX(0); } 50%{ transform:translateX(4px); } }
  @media (prefers-reduced-motion:reduce){ .carta-hint svg{ animation:none; } }

  .carta-panel2[hidden]{ display:none; }
  .carta-panel2{ animation:carta-fade .35s cubic-bezier(.16,1,.3,1); }
  .carta-group{ margin-top:2.25rem; }
  .carta-group:first-child{ margin-top:1.5rem; }
  .carta-group-head{ display:flex; align-items:baseline; gap:.9rem; padding:0 .15rem; }
  .carta-group-title{ font-family:'Fraunces','Inter',serif; letter-spacing:-0.02em; font-size:1.4rem; font-weight:600; color:var(--fg); }
  .carta-group-note{ font-size:.82rem; color:var(--fg-muted); }
  .carta-group .it-ribbon{ width:2.5rem; margin:.55rem 0 .25rem; }
  .carta-shapes{ display:flex; flex-wrap:wrap; gap:.4rem; margin:.85rem 0 .25rem; }
  .carta-shape{ font-size:.78rem; padding:.32rem .7rem; border-radius:999px; background:var(--surface); border:1px solid var(--border); color:var(--fg-muted); white-space:nowrap; }

  .carta-rail{ display:flex; gap:.85rem; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-left:.15rem; padding:1rem .15rem 1.35rem; -webkit-overflow-scrolling:touch; scrollbar-width:none; -ms-overflow-style:none; }
  .carta-rail::-webkit-scrollbar{ display:none; }
  .carta-dish{ scroll-snap-align:start; flex:0 0 84%; max-width:340px; background:var(--surface); border:1px solid var(--border); border-radius:18px; padding:1.2rem 1.3rem 1.3rem; display:flex; flex-direction:column; box-shadow:0 1px 2px rgba(15,23,42,.05); transition:transform .28s cubic-bezier(.16,1,.3,1), box-shadow .28s ease, border-color .28s ease; }
  @media (min-width:560px){ .carta-dish{ flex-basis:310px; } }
  .carta-dish:hover{ transform:translateY(-3px); box-shadow:0 20px 38px -20px rgba(15,23,42,.28); border-color:var(--border-strong); }
  .carta-dish-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:.7rem; }
  .carta-dish-name{ font-family:'Fraunces','Inter',serif; letter-spacing:-0.01em; font-weight:600; font-size:1.06rem; line-height:1.22; color:var(--fg); }
  .carta-dish-price{ flex:0 0 auto; font-variant-numeric:tabular-nums; font-weight:600; font-size:.85rem; color:var(--primary); background:var(--primary-soft); padding:.22rem .56rem; border-radius:999px; white-space:nowrap; }
  .carta-dish-desc{ margin-top:.65rem; font-size:.86rem; line-height:1.5; color:var(--fg-muted); }
  .carta-badge{ display:inline-block; margin-top:.7rem; align-self:flex-start; font-size:.66rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); background:var(--accent-soft); padding:.2rem .5rem; border-radius:6px; }
  .carta-foot{ margin-top:1rem; padding:0 .25rem; font-size:.82rem; color:var(--fg-muted); }

  .lightbox::backdrop{ background:rgba(0,0,0,0); transition:background .25s ease; }
  .lightbox[open]::backdrop{ background:rgba(0,0,0,.88); }
  .lightbox{ border:0; max-width:none; max-height:none; margin:0; }
  .lightbox[open]{ animation: lb-pop .25s cubic-bezier(.16,1,.3,1); }
  @keyframes lb-pop { from{ opacity:0; transform:scale(.98); } to{ opacity:1; transform:scale(1); } }
  .lightbox-img{ box-shadow:0 30px 60px -20px rgba(0,0,0,.6); }

  @media (pointer:fine){ .btn-primary{ transition: background .22s ease, transform .15s ease-out, box-shadow .22s ease; } }

  /* ---------- Language switcher ---------- */
  .flag{ display:inline-block; width:22px; height:15px; border-radius:3px; overflow:hidden; box-shadow:0 0 0 1px rgba(0,0,0,.08); flex-shrink:0; }
  .flag svg{ display:block; width:100%; height:100%; }
  .lang-menu{ position:absolute; right:0; top:calc(100% + 8px); min-width:200px; background:var(--surface); border:1px solid var(--border); border-radius:14px; box-shadow:0 24px 48px -16px rgba(15,23,42,.18); overflow:hidden; opacity:0; transform:translateY(-6px) scale(.97); pointer-events:none; transition:opacity .18s ease, transform .18s ease; z-index:80; }
  .lang-menu.open{ opacity:1; transform:none; pointer-events:auto; }
  .lang-menu button{ display:flex; align-items:center; gap:12px; width:100%; padding:10px 16px; font-size:14px; text-align:left; color:var(--fg); }
  .lang-menu button:hover{ background:var(--surface-2); }
  .lang-menu button.is-active{ background:var(--primary-soft); color:var(--primary); font-weight:600; }
  .lang-menu button .check{ margin-left:auto; opacity:0; }
  .lang-menu button.is-active .check{ opacity:1; }

  /* ---------- Native date/time picker styling ---------- */
  input[type="date"], input[type="time"], input[type="number"]{
    font-family:'Inter',sans-serif; font-size:16px; /* 16px to prevent iOS zoom */
  }
  input[type="date"]::-webkit-calendar-picker-indicator,
  input[type="time"]::-webkit-calendar-picker-indicator{
    cursor:pointer; opacity:.5; transition:opacity .15s ease;
  }
  input[type="date"]:hover::-webkit-calendar-picker-indicator,
  input[type="time"]:hover::-webkit-calendar-picker-indicator{
    opacity:.85;
  }

  /* ---- Kit motion premium + embudo de resenyes (skills) ---- */
  .btn-sheen{ position:relative; overflow:hidden; isolation:isolate; }
  .btn-sheen::after{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(110deg,transparent 32%,rgba(255,255,255,.28) 50%,transparent 68%); transform:translateX(-130%); transition:transform .7s cubic-bezier(.16,1,.3,1); }
  .btn-sheen:hover::after{ transform:translateX(130%); }
  .rev{ text-align:center; max-width:34rem; margin:0 auto; }
  .rev-stars{ display:inline-flex; gap:.4rem; margin-top:1.1rem; }
  .rev-star{ background:none; border:0; padding:.15rem; cursor:pointer; line-height:0; }
  .rev-star svg{ width:2.5rem; height:2.5rem; display:block; transition:transform .18s cubic-bezier(.16,1,.3,1); }
  .rev-star .s{ fill:none; stroke:var(--border-strong); stroke-width:1.4; transition:fill .15s ease, stroke .15s ease; }
  .rev-star.on .s{ fill:#E0A22E; stroke:#E0A22E; filter:drop-shadow(0 2px 6px rgba(224,162,46,.4)); }
  .rev-star:hover{ transform:scale(1.12); }
  .rev-star.pop{ animation:revpop .42s cubic-bezier(.16,1,.3,1); }
  @keyframes revpop{ 0%,100%{transform:scale(1)} 45%{transform:scale(1.32)} }
  .rev-bad{ margin-top:1.25rem; background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:1.25rem 1.4rem; text-align:left; display:none; }
  .rev-bad.show{ display:block; animation:carta-fade .35s ease; }
  @media (prefers-reduced-motion:reduce){ .btn-sheen::after{display:none} .rev-star svg,.rev-star{transition:none} .rev-star.pop{animation:none} }

/* ── Componentes de las páginas SEO (carta, domicilio, restaurante) ── */
.pg-wrap{width:100%;max-width:80rem;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem;box-sizing:border-box}
@media(min-width:768px){.pg-wrap{padding-left:2rem;padding-right:2rem}}
main section[id]{scroll-margin-top:5rem}
.btn-ghost[aria-current="page"]{color:var(--primary)}
.pg-movil{}
@media(min-width:768px){.pg-movil{display:none!important}}
.pg-crumbs{padding-top:1.1rem;font-size:13px;color:var(--fg-subtle)}
.pg-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;list-style:none;margin:0;padding:0}
.pg-crumbs li+li::before{content:"/";margin-right:.4rem;color:var(--border-strong)}
.pg-crumbs a{color:var(--fg-muted);text-decoration:none}
.pg-crumbs a:hover{color:var(--primary);text-decoration:underline}
.pg-langs{margin:.35rem 0 0;font-size:13px;line-height:1.6;color:var(--fg-subtle)}
.pg-langs a{color:var(--primary);text-decoration:underline;text-underline-offset:2px}
.pg-hero{display:grid;gap:2rem;align-items:center;padding-top:1.75rem;padding-bottom:3rem}
.pg-hero>figure{justify-self:center;width:100%}
@media(min-width:900px){.pg-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:3.5rem;padding-top:2.5rem;padding-bottom:4.5rem}}
.pg-h1{font-size:clamp(2.05rem,5.4vw,3.5rem);line-height:1.05;font-weight:600;color:var(--fg);margin:.8rem 0 0;text-wrap:balance}
.pg-lead{margin:1.2rem 0 0;max-width:38rem;font-size:1.0625rem;line-height:1.65;color:var(--fg-muted)}
.pg-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.pg-ctas.is-flat{margin-top:0}
.pg-ctas.is-near{margin-top:.5rem}
.pg-note{margin:1rem 0 0;max-width:38rem;font-size:13px;line-height:1.55;color:var(--fg-subtle)}
.pg-rating{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin:1.25rem 0 0;padding:.45rem .9rem;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:14px;color:var(--fg)}
.pg-figure{position:relative;margin:0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);background:var(--surface-2);aspect-ratio:4/3;box-shadow:0 18px 40px -24px rgba(26,22,17,.35)}
.pg-figure img{display:block;width:100%;height:100%;object-fit:cover}
.pg-figure.is-cutout{background:var(--primary-soft)}
.pg-figure.is-cutout img{object-fit:contain}
.pg-figure .it-ribbon{position:absolute;left:0;right:0;bottom:0}
.pg-section{padding-top:3.5rem;padding-bottom:3.5rem;border-top:1px solid var(--border)}
@media(min-width:768px){.pg-section{padding-top:4.5rem;padding-bottom:4.5rem}}
.pg-section.is-tight{padding-top:2.5rem;padding-bottom:2.5rem}
.pg-h2{font-size:clamp(1.6rem,3.6vw,2.4rem);line-height:1.1;font-weight:600;color:var(--fg);margin:.6rem 0 0;text-wrap:balance}
.pg-h3{font-size:1.4rem;line-height:1.2;font-weight:600;color:var(--fg);margin:2.5rem 0 0}
.pg-sub{margin:.75rem 0 0;max-width:42rem;color:var(--fg-muted);line-height:1.6}
.pg-index{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.25rem 0 0;padding:0;list-style:none}
.pg-chip{display:inline-flex;align-items:center;min-height:40px;padding:.35rem 1rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--fg);font-size:14px;text-decoration:none;transition:border-color .2s,color .2s}
.pg-chip:hover{border-color:var(--primary);color:var(--primary)}
.pg-shapes{display:flex;flex-wrap:wrap;gap:.4rem;margin:.9rem 0 0;padding:0;list-style:none}
.pg-shape{font-size:12px;padding:.2rem .65rem;border-radius:999px;background:var(--primary-soft);color:var(--primary)}
.pg-menu{list-style:none;margin:1rem 0 0;padding:0;display:grid}
@media(min-width:900px){.pg-menu{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:3.5rem}}
.pg-dish{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px dashed var(--border-strong)}
.pg-dish>div{flex:1;min-width:0}
.pg-dish-name{margin:0;font-size:1.1rem;font-weight:600;color:var(--fg);line-height:1.3}
.pg-dish-desc{margin:.3rem 0 0;font-size:14px;line-height:1.55;color:var(--fg-muted)}
.pg-price{flex:none;font-variant-numeric:tabular-nums;font-weight:600;color:var(--primary);white-space:nowrap}
.pg-foot{margin:1rem 0 0;font-size:13px;color:var(--fg-subtle);line-height:1.6}
.pg-link{color:var(--primary);text-decoration:underline;text-underline-offset:2px}
.pg-grid{display:grid;gap:1rem;margin-top:1.75rem}
@media(min-width:768px){.pg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}
@media(min-width:1100px){.pg-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.pg-card{padding:1.5rem;display:flex;flex-direction:column;gap:.65rem;margin:0}
.pg-card h3{margin:0;font-size:1.2rem;font-weight:600;line-height:1.2;color:var(--fg)}
.pg-card p{margin:0;color:var(--fg-muted);font-size:15px;line-height:1.6}
.pg-more{margin-top:auto;padding-top:.4rem;color:var(--primary);font-weight:500;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem}
.pg-more:hover{text-decoration:underline}
.pg-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.75rem;background:var(--primary-soft);color:var(--primary)}
.pg-quote{margin:0}
.pg-quote p{color:var(--fg);font-size:15px;line-height:1.65}
.pg-cap{margin-top:auto}
.pg-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1.75rem}
.pg-strip img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border)}
.pg-steps{counter-reset:pg;list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:1rem}
@media(min-width:900px){.pg-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pg-steps li{counter-increment:pg;position:relative;padding:1.2rem 1.25rem 1.2rem 3.75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);line-height:1.55;color:var(--fg)}
.pg-steps li::before{content:counter(pg);position:absolute;left:1.1rem;top:1.05rem;width:1.8rem;height:1.8rem;border-radius:999px;background:var(--primary);color:var(--primary-fg);font-weight:600;font-size:14px;display:flex;align-items:center;justify-content:center}
.pg-band{margin-top:1.75rem;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border-radius:var(--radius-lg);background:var(--primary);color:var(--primary-fg)}
@media(min-width:768px){.pg-band{flex-direction:row;align-items:center;justify-content:space-between;padding:2rem 2.25rem}}
.pg-band p{margin:0;font-size:1.05rem;line-height:1.5}
.pg-band-t{display:block;font-size:1.4rem;font-weight:600;margin-bottom:.2rem}
.pg-hours{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:1rem;background:var(--surface);overflow:hidden}
.pg-hours li{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1.25rem;border-top:1px solid var(--border);font-size:15px}
.pg-hours li:first-child{border-top:0}
.pg-hours li span:first-child{font-weight:500;color:var(--fg)}
.pg-hours li span:last-child{color:var(--fg-muted);text-align:right}
.pg-hours li.is-closed span:last-child{color:var(--accent)}
.pg-two{display:grid;gap:1.5rem;margin-top:1.75rem}
@media(min-width:900px){.pg-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem;align-items:start}}
.pg-address{font-style:normal;line-height:1.6;color:var(--fg)}
.pg-faqs{margin-top:1.5rem;max-width:52rem;border-bottom:1px solid var(--border)}
.pg-faq{border-top:1px solid var(--border)}
.pg-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;font-weight:500;font-size:1.05rem;color:var(--fg)}
.pg-faq summary::-webkit-details-marker{display:none}
.pg-faq .chev{flex:none;transition:transform .2s}
.pg-faq[open] .chev{transform:rotate(180deg)}
.pg-faq-a{padding:0 0 1.2rem;color:var(--fg-muted);line-height:1.65;max-width:46rem}
.pg-faq-a p{margin:0}
