/* Förbättringar 2026-11: stark hero, omdömen, paket, om oss, 3 steg, Ring oss. */
/* ---- Hero med stort foto */
.hero-pro{background:#fbf6ea}
.hero-pro .hero-bg{opacity:.55}
.hero-photo{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block;animation:hpZoom 22s ease-out both}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,246,234,.97) 0%,rgba(251,246,234,.93) 34%,rgba(251,246,234,.55) 56%,rgba(251,246,234,.08) 78%,rgba(0,0,0,.08) 100%)}
@keyframes hpZoom{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero-pro .hero-grid{z-index:1}
@media (min-width:860px){.hero-pro .hero-grid{max-height:none;min-height:min(64vh,600px);padding:44px 0 40px}}
.hero-lead{font-size:1.08rem;line-height:1.55;color:#2c3530;max-width:40ch;margin:.2em 0 .9em}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 14px}
.hero-pro .hero-actions .btn-ghost{color:var(--g-dk,#0f4d2c);background:rgba(255,255,255,.75);border-color:currentColor}
.hero-pro .hero-actions .btn-ghost:hover{background:#fff}
.hero-order{box-shadow:0 12px 26px -10px rgba(194,47,31,.75)}
.hero-trust{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 14px;font-size:.92rem;font-weight:600;color:#3a4540}
.hero-trust>span{display:inline-flex;align-items:center;gap:6px}
.hero-trust .ht-rating span[aria-hidden]{color:#e2a400}
.hero-pro .paylater{background:rgba(255,255,255,.88);backdrop-filter:blur(4px)}
@media (max-width:859px){
  .hero-photo{position:relative;inset:auto;height:210px}
  .hero-photo::after{background:linear-gradient(180deg,rgba(251,246,234,0) 45%,rgba(251,246,234,.85) 85%,#fbf6ea 100%)}
  .hero-pro .hero-grid{margin-top:-34px}
  .hero-lead{font-size:.95rem;margin:.1em 0 .8em}
  .hero-actions{gap:8px}.hero-actions .btn-lg{font-size:.98rem;padding:.8em 1.2em;flex:1 1 auto}
  .hero-trust{font-size:.8rem;gap:4px 12px}
}
@media (prefers-reduced-motion:reduce){.hero-photo img{animation:none}}

/* ---- Omdömen */
.reviews{padding:26px 0;background:#fff;border-bottom:1px solid #efe6cf}
.reviews-band{display:grid;grid-template-columns:auto 1fr auto;gap:18px 28px;align-items:center;background:linear-gradient(135deg,#fffaf0,#f6edd2);border:1px solid #ecdcae;border-radius:22px;padding:20px 26px;box-shadow:0 14px 30px -22px rgba(90,70,20,.5)}
.reviews-score{display:flex;flex-direction:column;align-items:center;gap:2px;padding-right:26px;border-right:1px solid #e5d29a}
.rs-stars{color:#e2a400;font-size:1.5rem;letter-spacing:2px;line-height:1}
.rs-num{font-size:.95rem;color:#3a4540}.rs-num strong{font:700 1.6rem/1.1 var(--serif);color:var(--g-dk,#0f4d2c);margin-right:4px}
.reviews-text h2{font-size:clamp(1.25rem,2.4vw,1.6rem);margin:0 0 .2em}
.reviews-text p{margin:0;color:#4a5550}
.reviews-cta{background:var(--mango,#ffb703);color:var(--ink,#1c2420);box-shadow:0 8px 18px -10px rgba(160,110,0,.8)}
.reviews-cta:hover{background:#ffc933}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:18px}
.reviews-grid[hidden]{display:none}
.review{margin:0;background:#fff;border:1px solid #efe6cf;border-radius:18px;padding:18px 20px;box-shadow:var(--shadow)}
.review-stars{color:#e2a400;letter-spacing:2px}.review-stars span{color:#ddd}
.review blockquote{margin:8px 0 10px;font-size:.98rem;line-height:1.55}
.review figcaption{font-size:.85rem;color:var(--muted)}
@media (max-width:759px){
  .reviews{padding:16px 0}
  .reviews-band{grid-template-columns:auto 1fr;padding:16px;gap:12px 16px}
  .reviews-score{padding-right:14px}.rs-stars{font-size:1.05rem}.rs-num strong{font-size:1.25rem}.rs-num{font-size:.8rem}
  .reviews-text p{font-size:.88rem}
  .reviews-cta{grid-column:1/-1}
}

/* ---- Paket */
.packages{padding:40px 0 34px;background:linear-gradient(180deg,#fff 0%,#fbf6ea 100%)}
.pkg-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:18px}
.pkg-kicker{margin:0 0 4px;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dk,#9a7618)}
.pkg-head h2{font-size:clamp(1.45rem,3vw,2.1rem);margin:0 0 .25em}
.pkg-lead{margin:0;color:#4a5550;max-width:60ch}
.pkg-guests{background:#fff;border:1px solid #ecdcae;border-radius:99px;padding:6px 8px 6px 16px}
.pkg-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.pkg{display:flex;flex-direction:column;background:#fff;border:1px solid #efe6cf;border-radius:20px;overflow:hidden;box-shadow:0 18px 36px -24px rgba(20,40,30,.45);transition:transform .2s,box-shadow .2s}
.pkg:hover{transform:translateY(-3px);box-shadow:0 24px 40px -22px rgba(20,40,30,.5)}
.pkg-img{position:relative;aspect-ratio:4/3;overflow:hidden;background:#f6edd2}
.pkg-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.pkg:hover .pkg-img img{transform:scale(1.04)}
.pkg-body{display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px;flex:1}
.pkg-body h3{margin:0;font-size:1.3rem}
.pkg-price{margin:0;color:var(--terra-d,#c22f1f);font-size:.95rem}.pkg-price strong{font:700 1.35rem var(--serif)}
.pkg-desc{margin:0;font-size:.92rem;color:#4a5550;line-height:1.5}
.pkg-items{font-size:.86rem;color:#4a5550}.pkg-items summary{cursor:pointer;font-weight:600;color:var(--g-dk,#0f4d2c)}
.pkg-items ul{margin:6px 0 0;padding-left:18px}
.pkg-actions{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin-top:auto;padding-top:8px}
.pkg-actions .btn.is-added{background:var(--green,#15703f)}
.pkg-total{margin:0;font-size:.8rem;color:var(--muted)}
.pkg-note{margin:14px 0 0}
@media (max-width:1099px){.pkg-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .packages{padding:26px 0 22px}
  .pkg-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:4px 16px 10px;scrollbar-width:none}
  .pkg-list::-webkit-scrollbar{display:none}
  .pkg{flex:0 0 78%;scroll-snap-align:start}
  .pkg-head{align-items:flex-start}
}

/* ---- 3 steg + svarslöfte */
@media (min-width:760px){.steps-3{grid-template-columns:repeat(3,1fr)}}
.promise{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px auto 12px;padding:12px 18px;max-width:640px;background:#e9f6ee;border:1px solid #bfe3cc;border-radius:16px;color:#0f4d2c;text-align:center}
.promise-ic{font-size:1.3rem}
.promise-order{justify-content:flex-start;text-align:left;margin:0 0 18px;max-width:none}
.promise-order a{color:#0f4d2c;font-weight:600}

/* ---- Om oss */
.about-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:center}
.about-img{margin:0;border-radius:24px;overflow:hidden;box-shadow:0 24px 50px -28px rgba(20,40,30,.55);aspect-ratio:1/1}
.about-img img{width:100%;height:100%;object-fit:cover;display:block}
.about-text h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.about-text p{color:#3a4540;font-size:1.02rem}
.about-points{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.about-points li{background:#fbf6ea;border:1px solid #efe6cf;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.about-points strong{color:var(--g-dk,#0f4d2c);font-family:var(--serif);font-size:1.05rem}
.about-points span{font-size:.86rem;color:#4a5550}
@media (max-width:859px){.about-grid{grid-template-columns:1fr;gap:20px}.about-img{aspect-ratio:16/10}.about-points{grid-template-columns:1fr}}

/* ---- Ring oss (alltid synlig på mobil) */
.call-fab{position:fixed;left:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:52;display:inline-flex;align-items:center;gap:8px;height:52px;padding:0 18px 0 16px;border-radius:99px;background:#0f4d2c;color:#fff;border:2px solid #d4af37;font:700 .98rem var(--sans);text-decoration:none;box-shadow:0 10px 26px -8px rgba(10,30,20,.6)}
.call-fab:focus-visible{outline:3px solid #d4af37;outline-offset:2px}
body.has-cart .call-fab{bottom:calc(104px + env(safe-area-inset-bottom))}
body.cart-open .call-fab,body.lb-open .call-fab,body.nav-open .call-fab{display:none}
@media (min-width:1000px){.call-fab{display:none}}
@media print{.call-fab{display:none}}
@media (max-width:859px){
  .hero-photo{height:180px}
  .hero-pro .hero-pics{position:absolute;top:-134px;right:0;z-index:2}
  .hero-pro .hero-grid{grid-template-columns:1fr}
  .hero-actions .btn-lg{flex:1 1 0;white-space:nowrap}
  .hide-sm{display:none}
}

.pkg-premium{position:absolute;left:10px;top:10px;z-index:3;padding:5px 10px;border-radius:99px;background:#d4af37;color:#3a2e0a;font:700 .68rem/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 2px 8px -2px rgba(0,0,0,.35);pointer-events:none}
.pkg-premium-inline{display:inline-block;margin-left:8px;padding:3px 8px;border-radius:99px;background:#f6edd2;color:#7a5c10;border:1px solid #e0c56a;font:700 .62rem/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}
