/*
Theme Name: Grindelwald Massage Gutenberg
Theme URI: https://grindelwaldmassage.com/
Author: Grindelwald Massage
Description: Native Gutenberg block theme for Grindelwald Massage. Designed to work with the Grindelwald Massage Booking plugin without Elementor.
Version: 4.0.0
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: grindelwald-massage
*/

:root{
  --gm-green:#31483c;
  --gm-dark:#1f2924;
  --gm-cream:#f8f6f1;
  --gm-sand:#eee8db;
  --gm-text:#26312b;
  --gm-muted:#6f766f;
  --gm-border:#dedbd2;
  --gm-white:#fff;
}
html{scroll-behavior:smooth}
body{color:var(--gm-text)}
a{text-underline-offset:3px}
.gmv4-header-shell{
  position:sticky;top:0;z-index:1000;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(222,219,210,.8)
}
.admin-bar .gmv4-header-shell{top:32px}
.gmv4-header-row{min-height:76px}
.gmv4-header-row .wp-block-site-title a{text-decoration:none}
.gmv4-header-row .wp-block-navigation-item__content{text-decoration:none;font-size:13px;font-weight:650}
.gmv4-book-button .wp-block-button__link{white-space:nowrap}
.gmv4-hero{min-height:680px;display:flex;align-items:center}
.gmv4-hero .wp-block-cover__background{background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.26),rgba(0,0,0,.12))!important;opacity:1!important}
.gmv4-hero h1{max-width:820px;font-size:clamp(44px,6vw,74px);line-height:1.02}
.gmv4-hero-copy{max-width:650px;font-size:18px;line-height:1.7}
.gmv4-kicker{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.gmv4-hero-badge{
  display:inline-block;border:1px solid rgba(255,255,255,.36);
  background:rgba(255,255,255,.1);border-radius:999px;padding:8px 14px
}
.gmv4-hero-chips{font-size:13px;opacity:.9}
.gmv4-section{padding-top:88px!important;padding-bottom:88px!important}
.gmv4-section-alt{background:rgba(238,232,219,.58)}
.gmv4-section-dark{background:var(--gm-green);color:#fff}
.gmv4-section-title{font-size:clamp(34px,5vw,54px);line-height:1.06}
.gmv4-section-intro{max-width:680px;color:var(--gm-muted);line-height:1.7}
.gmv4-section-dark .gmv4-section-intro{color:rgba(255,255,255,.78)}
.gmv4-service-card,.gmv4-card{
  background:#fff;border:1px solid var(--gm-border);border-radius:20px;
  padding:28px;height:100%;box-shadow:0 10px 34px rgba(31,41,36,.045)
}
.gmv4-service-card p,.gmv4-card p{color:var(--gm-muted);line-height:1.65}
.gmv4-service-card .gmb-service-price-block{color:var(--gm-green);font-weight:800;margin:14px 0 18px}
.gmv4-step-number{
  width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--gm-green);color:#fff;font-weight:800
}
.gmv4-round-image img{border-radius:22px;min-height:420px;object-fit:cover;width:100%}
.gmv4-philosophy{background:var(--gm-cream)}
.gmv4-philosophy-copy{padding:24px 0}
.gmv4-philosophy-signature{font-family:Georgia,"Times New Roman",serif;font-size:24px;font-style:italic;color:var(--gm-green)}
.gmv4-review-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:26px}
.gmv4-review-card p{color:#fff}
.gmv4-stars{letter-spacing:.08em}
.gmv4-faq details{background:#fff;border:1px solid var(--gm-border);border-radius:14px;padding:18px 20px;margin:12px 0}
.gmv4-faq summary{font-weight:750;cursor:pointer}
.gmv4-faq details p{color:var(--gm-muted);line-height:1.7}
.gmv4-legal{max-width:900px;margin-inline:auto}
.gmv4-legal p,.gmv4-legal li{line-height:1.75;color:#535d57}
.gmv4-footer{border-top:1px solid var(--gm-border)}
.gmv4-footer a{text-decoration:none}
.gmv4-footer-bottom{border-top:1px solid var(--gm-border);padding-top:18px}
.wp-block-button__link{transition:transform .15s ease,opacity .15s ease}
.wp-block-button__link:hover{transform:translateY(-1px);opacity:.94}
@media(max-width:782px){.admin-bar .gmv4-header-shell{top:46px}}
@media(max-width:700px){
  .gmv4-section{padding-top:64px!important;padding-bottom:64px!important}
  .gmv4-hero{min-height:580px}
  .gmv4-hero-copy{font-size:16px}
  .gmv4-header-row{min-height:68px}
}
