:root{
  --bg:#16110e;
  --paper:#201814;
  --card:rgba(255,255,255,.05);
  --stroke:rgba(255,255,255,.10);
  --text:#f6f1eb;
  --muted:rgba(246,241,235,.74);
  --muted2:rgba(246,241,235,.56);
  --accent:#d6b07a;
  --accent2:#4f8a73;
  --accent2-deep:#3d6c5a;
  --green-wash: rgba(79,138,115,.08);
  --green-line: rgba(79,138,115,.16);
  --shadow: 0 18px 60px rgba(0,0,0,.38);
  --radius: 18px;
  --radius2: 28px;
  --wrap: 1120px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Manrope, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  /*
    IMPORTANT: Prevent visible "hard lines" on tall mobile pages.
    Some mobile browsers can show a noticeable seam where a long page crosses
    a gradient stop. We use a solid base color + a fixed overlay instead.
  */
  background: var(--bg);
  color:var(--text);
  line-height:1.55;
  overflow-x:hidden;
}

/* Fixed, seamless background overlay (no scroll seams) */
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(1200px 700px at 10% 0%, rgba(214,176,122,.20), transparent 62%),
    radial-gradient(900px 520px at 92% 12%, rgba(79,138,115,.12), transparent 62%),
    linear-gradient(180deg, #130f0d 0%, #16110e 40%, #16110e 60%, #130f0d 100%);
}
a{color:inherit; text-decoration:none}
a:hover{opacity:.92}

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

.skip{
  position:absolute; left:-999px; top:10px;
  background:#fff; color:#000; padding:10px 12px; border-radius:10px;
}
.skip:focus{left:10px; z-index:9999}

/* Header */
.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(14px);
  background: linear-gradient(180deg, rgba(22,17,14,.84), rgba(22,17,14,.62));
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.site-header.simple{position:relative}
.header-inner{display:flex; align-items:center; justify-content:space-between; padding:10px 0}
.brand{display:flex; align-items:center; gap:12px; min-width: 220px}
.brand-mark{
  width:34px; height:34px;
  border-radius: 10px;
  background: transparent;
  box-shadow: none;
  display:grid; place-items:center;
}
.brand-symbol{width:34px; height:auto; display:block; filter: drop-shadow(0 10px 18px rgba(24,18,15,.38));}
.brand-text{display:flex; flex-direction:column; line-height:1.1}
.brand-name{font-family: "Playfair Display", serif; font-weight:600; letter-spacing:.2px; font-size:18px}
.brand-tag{font-size:12px; color:var(--muted2)}

.nav{display:flex; align-items:center; gap:18px}
.nav a{color:rgba(244,246,246,.82); font-size:14px}
.nav a:hover{color:rgba(244,246,246,.95)}
.nav-cta{
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 14px;
  border-radius: 999px;
  border:1px solid rgba(214,176,122,.55);
  background: linear-gradient(180deg, rgba(214,176,122,.16), rgba(79,138,115,.08));
  box-shadow: 0 10px 30px rgba(22,16,13,.22);
}

.nav-toggle{display:none; width:42px; height:42px; border-radius:14px; border:1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.06)}
.nav-toggle span{display:block; height:2px; width:18px; margin:5px auto; background: rgba(244,246,246,.85); border-radius:2px}

.mobile{border-top:1px solid rgba(255,255,255,.08); background: linear-gradient(180deg, rgba(22,17,14,.84), rgba(22,17,14,.72));}
.mobile-inner{display:flex; flex-direction:column; gap:12px; padding:16px 0 18px}
.mobile-inner a{padding:10px 12px; border-radius:14px; background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); border:1px solid rgba(255,255,255,.06)}
.mobile-cta{border-color: rgba(214,176,122,.45)!important; background: rgba(214,176,122,.10)!important}

/* Hero */
.hero{position:relative; padding: 74px 0 28px}
.hero-bg{
  position:absolute; inset:-120px 0 auto 0; height: 640px;
  background:
    linear-gradient(180deg, rgba(22,16,13,.42), rgba(0,0,0,.88)),
    url('hero.jpg');
  background-size: cover; background-position: center;
  filter: saturate(.98) contrast(1.05);
}
.hero-bg::after{
  content:""; position:absolute; inset:0;
  background: radial-gradient(900px 500px at 20% 35%, rgba(214,176,122,.22), transparent 60%),
              radial-gradient(900px 600px at 90% 20%, rgba(79,138,115,.14), transparent 62%);
}
.hero-inner{position:relative; display:grid; grid-template-columns: 1.15fr .85fr; gap:28px; align-items:start}

.pill{
  display:inline-flex; align-items:center; gap:10px;
  padding:8px 12px; border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: rgba(244,246,246,.86);
  font-size:13px;
}

h1{
  margin:14px 0 12px;
  font-family: "Playfair Display", serif;
  font-weight:600;
  letter-spacing:.2px;
  font-size: clamp(36px, 4.2vw, 54px);
  line-height:1.04;
}
.lead{color:rgba(244,246,246,.80); font-size:16px; max-width: 52ch}

.hero-actions{display:flex; flex-wrap:wrap; gap:14px; margin-top:18px}
.link-cta{
  display:inline-flex; align-items:center; gap:10px;
  padding:12px 16px;
  border-radius: 999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
}
.link-cta::after{content:"→"; opacity:.9}
.link-cta.subtle{background: transparent; border-color: rgba(255,255,255,.10); color: rgba(244,246,246,.85)}

.trust{display:flex; gap:12px; margin-top:18px; flex-wrap:wrap}
.trust-item{padding:12px 14px; border-radius:16px; border:1px solid rgba(255,255,255,.12); background: rgba(33,25,21,.34)}
.trust-k{display:block; font-weight:600; font-size:13px}
.trust-v{display:block; font-size:12px; color:var(--muted2)}

.hero-card{
  position:relative;
  margin-top: 10px;
  border-radius: var(--radius2);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.05));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: var(--shadow);
  padding: 22px;
  overflow:hidden;
}
.hero-card::before{
  content:"";
  position:absolute; inset:-1px;
  background: radial-gradient(420px 220px at 20% 20%, rgba(214,176,122,.20), transparent 60%),
              radial-gradient(420px 240px at 80% 10%, rgba(79,138,115,.12), transparent 62%);
  pointer-events:none;
}
.hero-card > *{position:relative}
.badge{
  display:inline-flex; padding:6px 10px; border-radius:999px;
  background: rgba(214,176,122,.14);
  border: 1px solid rgba(214,176,122,.40);
  font-size:12px;
  color: rgba(244,246,246,.90);
}
.hero-card h2{margin:12px 0 4px; font-family:"Playfair Display", serif; font-weight:600; letter-spacing:.2px}
.muted{color:var(--muted)}
.small{color:rgba(244,246,246,.74); font-size:13px}
.tiny{color:rgba(244,246,246,.58); font-size:12px}

.price{display:flex; align-items:baseline; gap:12px; margin:14px 0 10px}
.amount{font-size:34px; font-weight:700; letter-spacing:-.5px}
.duration{color:rgba(244,246,246,.7); font-size:13px}
.card-cta{
  display:flex; justify-content:center; align-items:center;
  padding:12px 14px; border-radius: 14px;
  border: 1px solid rgba(214,176,122,.55);
  background: rgba(214,176,122,.14);
  margin-top: 14px;
}

/* Sections */
.section{padding: 48px 0}
.section.alt{background: linear-gradient(180deg, rgba(79,138,115,.05), rgba(255,255,255,.025)); border-top:1px solid rgba(79,138,115,.10); border-bottom:1px solid rgba(255,255,255,.06)}
.section-head{display:flex; flex-direction:column; gap:8px; max-width: 70ch; margin-bottom: 14px}
.section h2{font-family:"Playfair Display", serif; font-weight:600; margin:0; font-size: clamp(26px, 2.4vw, 36px)}

/* Page hero (inner pages) */
.page-hero{position:relative; padding: 86px 0 34px}
.page-hero .hero-bg{height: 520px; inset:-120px 0 auto 0}
.page-hero h1{margin-top:10px}
.page-hero .lead{max-width: 62ch}

/* Softer, less "price-list" cards */
.soft-cards{grid-template-columns: repeat(3, minmax(0, 1fr))}
.soft{
  border-radius: var(--radius2);
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(79,138,115,.05), rgba(255,255,255,.03));
  padding: 18px;
}
.soft h3{margin:0 0 6px; font-size:15px}
.cta-row{display:flex; gap:14px; flex-wrap:wrap; margin-top: 18px}

.callout{
  margin-top: 18px;
  border-radius: var(--radius2);
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03));
  padding: 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.callout h3{margin:0}

.filters{display:flex; gap:10px; flex-wrap:wrap; margin: 18px 0 16px}
.chip{
  cursor:pointer;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(79,138,115,.05), rgba(255,255,255,.035));
  color: rgba(244,246,246,.86);
  padding: 10px 14px;
  font-size: 13px;
}
.chip[aria-selected="true"]{border-color: rgba(214,176,122,.55); background: rgba(214,176,122,.12)}

.grid{display:grid; gap:14px}
.cards{grid-template-columns: repeat(3, minmax(0, 1fr))}

.card{
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgba(79,138,115,.05), rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.10);
  padding: 18px 18px 16px;
  box-shadow: 0 14px 44px rgba(0,0,0,.22);
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.card:hover{transform: translateY(-2px); border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.065)}
.card-top{display:flex; flex-direction:column; gap:4px}
.card h3{margin:0; font-size:16px}
.tagline{margin:0; font-size:12px; color: var(--muted2)}
.desc{margin: 12px 0 14px; color: rgba(244,246,246,.75); font-size: 13px}
.meta{display:flex; gap:10px; flex-wrap:wrap; align-items:center}
.meta-pill{font-size:12px; padding:8px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background: rgba(41,31,26,.46)}

/* Reviews stars: subtle, not tacky */
.stars{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(41,31,26,.46);
}
.stars svg{
  width:14px;
  height:14px;
  fill: rgba(214,176,122,.92);
  filter: drop-shadow(0 8px 14px rgba(22,16,13,.24));
}

.card-book{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:12px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(214,176,122,.55);
  background: rgba(214,176,122,.10);
  color: rgba(244,246,246,.92);
  white-space:nowrap;
}
.card-book:hover{background: rgba(214,176,122,.14)}

.bookbar{
  margin-top: 18px;
  border-radius: var(--radius2);
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(214,176,122,.12), rgba(79,138,115,.07), rgba(255,255,255,.035));
  padding: 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.bookbar h3{margin:0}
.bookbar-cta{
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(214,176,122,.55);
  background: rgba(214,176,122,.14);
  white-space:nowrap;
}

.two{display:grid; grid-template-columns: 1.05fr .95fr; gap:26px; align-items:start}

.bullets{display:grid; gap:12px; margin-top: 16px}
.bullet{border:1px solid rgba(255,255,255,.10); background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); border-radius: var(--radius); padding: 16px}
.bullet h3{margin:0 0 6px; font-size:15px}
.bullet p{margin:0; color: rgba(244,246,246,.74); font-size: 13px}

.photo-stack{position:relative; min-height: 420px}
.ph{position:absolute; border-radius: 24px; border:1px solid rgba(255,255,255,.12); box-shadow: var(--shadow); background-size:cover; background-position:center}
.ph1{inset:0 18% 34% 0; background-image: url('https://images.unsplash.com/photo-1571137080901-1db3a4050e06?auto=format&fit=crop&w=1400&q=70')}
.ph2{inset:30% 0 16% 34%; background-image: url('https://images.unsplash.com/photo-1591343395902-1adcb0e8fd83?auto=format&fit=crop&w=1400&q=70')}
.ph3{inset:56% 36% 0 0; background-image: url('https://images.unsplash.com/photo-1600334129128-685c5582fd35?auto=format&fit=crop&w=1400&q=70')}
.note{position:absolute; right:12px; bottom:12px; left:12px; border-radius: 18px; border:1px solid rgba(255,255,255,.12); background: rgba(24,18,15,.38); padding: 12px}
.note p{margin:0; font-size:12px; color: rgba(244,246,246,.72)}

.testimonials{margin-top: 22px}
.quote-grid{display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:14px; margin-top: 12px}
.quote{margin:0; border-radius: var(--radius); border:1px solid rgba(255,255,255,.10); background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); padding: 16px}
.quote p{margin:0 0 10px; color: rgba(244,246,246,.78)}
.quote footer{color: rgba(244,246,246,.55); font-size:12px}

/* Accordion */
.accordion{display:grid; gap:10px}
.accordion details{border-radius: var(--radius); border:1px solid rgba(255,255,255,.10); background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); padding: 14px 16px}
.accordion summary{cursor:pointer; font-weight:600}
.accordion .content{padding-top:10px; color: rgba(244,246,246,.74); font-size: 13px}

/* Contact */
.contact-cards{display:grid; grid-template-columns: 1fr 1fr; gap:12px; margin-top: 14px}
.contact-card{border-radius: var(--radius); border:1px solid rgba(255,255,255,.10); background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); padding: 16px}
.contact-card h3{margin:0 0 6px; font-size: 15px}

.form{
  border-radius: var(--radius2);
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(79,138,115,.06), rgba(255,255,255,.035));
  padding: 18px;
  box-shadow: var(--shadow);
}
.field{display:flex; flex-direction:column; gap:6px; margin-bottom:12px}
label{font-size:12px; color: rgba(244,246,246,.72)}
input, textarea{
  width:100%;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(41,31,26,.44);
  color: rgba(244,246,246,.92);
  padding: 12px 12px;
  font: inherit;
  outline:none;
}
input:focus, textarea:focus{border-color: rgba(214,176,122,.55); box-shadow: 0 0 0 4px rgba(214,176,122,.12)}

.submit{
  width:100%;
  padding: 12px 14px;
  border-radius: 14px;
  border:1px solid rgba(214,176,122,.55);
  background: rgba(214,176,122,.14);
  color: rgba(244,246,246,.92);
  font-weight: 600;
  cursor:pointer;
}
.hidden{display:none}

/* Pages */
.page{padding: 62px 0}
.page-inner{display:flex; justify-content:center}
.panel{max-width: 780px; width:100%; border-radius: var(--radius2); border:1px solid rgba(255,255,255,.10); background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); padding: 22px}
.prose h2{margin-top: 18px}
.prose ul{color: rgba(244,246,246,.74)}

/* Footer */
.footer{padding: 28px 0 36px}
.footer-inner{display:flex; align-items:flex-start; justify-content:space-between; gap:18px; border-top:1px solid rgba(255,255,255,.08); padding-top:18px}
.footer-brand{display:flex; gap:12px; align-items:center}
.footer-links{display:flex; gap:14px; flex-wrap:wrap}
.footer-links a{color: rgba(244,246,246,.70); font-size: 13px}

.nowrap{white-space:nowrap}

/* Responsive */
@media (max-width: 980px){
  .hero-inner{grid-template-columns: 1fr;}
  .hero{padding-top: 54px}
  .cards{grid-template-columns: repeat(2, minmax(0, 1fr))}
  .soft-cards{grid-template-columns: repeat(2, minmax(0, 1fr))}
  .two{grid-template-columns: 1fr;}
  .quote-grid{grid-template-columns: 1fr;}
  .photo-stack{min-height: 360px}
}
@media (max-width: 780px){
  .nav{display:none}
  .nav-toggle{display:block}
  .cards{grid-template-columns: 1fr}
  .soft-cards{grid-template-columns: 1fr}
  .contact-cards{grid-template-columns: 1fr}
  .bookbar{flex-direction:column; align-items:flex-start}
}

/* Social link */
.nav-social{display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:999px; border:1px solid rgba(214,176,122,.35); color:rgba(214,176,122,.95); transition: transform .18s ease, background .18s ease, border-color .18s ease;}
.nav-social:hover{transform: translateY(-1px); background: rgba(214,176,122,.08); border-color: rgba(214,176,122,.55);}

.nav a{position:relative;}
.nav a:not(.nav-cta):not(.nav-social)::after{content:""; position:absolute; left:0; right:0; bottom:-8px; height:2px; background: rgba(214,176,122,.75); transform: scaleX(0); transform-origin:left; transition: transform .18s ease; border-radius:2px;}
.nav a:not(.nav-cta):not(.nav-social):hover::after{transform: scaleX(1);}

/* Premium refresh */
.premium-hero .hero-bg{
  height: 700px;
  background:
    linear-gradient(180deg, rgba(22,17,14,.30), rgba(22,17,14,.84)),
    linear-gradient(90deg, rgba(22,17,14,.54) 0%, rgba(22,17,14,.28) 42%, rgba(22,17,14,.20) 100%),
    url('hero.jpg');
  background-size: cover;
  background-position: center center;
}
.trust-soft .trust-item{background: rgba(35,27,22,.34); backdrop-filter: blur(8px)}
.hero-card-premium{background: linear-gradient(180deg, rgba(79,138,115,.08), rgba(255,255,255,.045));}
.mini-review{margin-top:16px; padding-top:14px; border-top:1px solid rgba(255,255,255,.10)}
.section-head-tight{max-width: 72ch}
.premium-soft-cards .soft{padding:22px; background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.03));}
.premium-two{align-items:center; gap:20px}
.premium-feature{display:grid; gap:14px; align-content:start}
.feature-photo{margin:0; overflow:hidden; border-radius:30px; border:1px solid rgba(255,255,255,.12); background:linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); box-shadow:0 26px 70px rgba(22,16,13,.24); min-height:520px}
.feature-photo img{width:100%; height:100%; display:block; object-fit:cover; object-position:center 28%}
.feature-note{
  display:flex; flex-direction:column; gap:4px; padding:18px 20px;
  border-radius:20px; border:1px solid rgba(255,255,255,.12); background: rgba(36,27,23,.52); backdrop-filter: blur(10px);
}
.feature-note span{font-size:12px; color:var(--muted2); text-transform:uppercase; letter-spacing:.12em}
.feature-note strong{font-size:15px; line-height:1.45}
.premium-callout{background: linear-gradient(180deg, rgba(214,176,122,.10), rgba(79,138,115,.07), rgba(255,255,255,.035));}
.studio-grid{display:grid; grid-template-columns: 1.2fr .8fr; gap:16px; align-items:stretch}
.studio-panel{margin:0; overflow:hidden; border-radius:28px; border:1px solid rgba(255,255,255,.10); background:linear-gradient(180deg, rgba(79,138,115,.04), rgba(255,255,255,.03)); box-shadow:0 20px 54px rgba(0,0,0,.22); min-height:240px}
.studio-panel img{width:100%; height:100%; display:block; object-fit:cover}
.studio-panel-large{grid-row: span 2; min-height:520px}
.studio-logo img{object-position:center 24%}
.premium-quotes{grid-template-columns: repeat(3, minmax(0,1fr))}
.quote-featured{padding:20px; background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03)); box-shadow: 0 18px 48px rgba(0,0,0,.18)}
.quote-featured p{font-size:15px; line-height:1.7; margin:14px 0 0}
.reviews-hero .hero-bg{
  height:600px;
  background:
    linear-gradient(180deg, rgba(22,17,14,.48), rgba(22,17,14,.88)),
    linear-gradient(90deg, rgba(7,10,10,.46) 0%, rgba(7,10,10,.22) 52%, rgba(22,17,14,.20) 100%),
    url('room-vintage.jpg');
  background-size: cover;
  background-position:center;
}
.reviews-preview-card{padding:18px}
.review-preview-stack{display:grid; gap:14px}
.review-preview{padding:16px 16px 14px; border-radius:22px; border:1px solid rgba(255,255,255,.10); background: linear-gradient(180deg, rgba(79,138,115,.05), rgba(255,255,255,.035)); box-shadow:0 16px 44px rgba(0,0,0,.18)}
.review-preview p{margin:12px 0 0; font-size:14px; line-height:1.7; color:rgba(244,246,246,.82)}
.review-preview-offset{margin-left:34px}
.review-cards-premium{grid-template-columns: repeat(3, minmax(0,1fr))}
.review-card{padding-top:18px}
.review-card .desc{font-size:14px; line-height:1.75; margin-top:14px; margin-bottom:0}
.footer{background: linear-gradient(180deg, transparent, rgba(79,138,115,.04), rgba(255,255,255,.02));}

@media (max-width: 980px){
  .premium-collage{min-height:420px}
  .collage-room{inset:0 18% 34% 0}
  .collage-bed{inset:12% 0 44% 50%}
  .collage-stretch{inset:50% 8% 0 18%}
  .studio-grid{grid-template-columns:1fr 1fr}
  .studio-panel-large{grid-row:auto; min-height:320px; grid-column:1/-1}
  .premium-quotes{grid-template-columns:1fr}
  .review-cards-premium{grid-template-columns:1fr 1fr}
}
@media (max-width: 780px){
  .premium-hero .hero-bg{height:760px; background-position: 62% center;}
  .reviews-hero .hero-bg{height:720px; background-position: center}
  .premium-collage{min-height:380px}
  .collage-room{inset:0 10% 42% 0}
  .collage-bed{inset:10% 0 50% 52%}
  .collage-stretch{inset:54% 0 0 10%}
  .studio-grid{grid-template-columns:1fr}
  .studio-panel-large{min-height:260px}
  .studio-panel{min-height:220px}
  .review-cards-premium{grid-template-columns:1fr}
}

#intro{position:relative; margin-top:-6px; padding-top:40px;}
#intro::before{content:""; position:absolute; inset:0 0 auto 0; height:120px; background:linear-gradient(180deg, rgba(22,17,14,0), rgba(22,17,14,.70) 58%, rgba(22,17,14,.96) 100%); pointer-events:none;}
#intro .wrap{position:relative; z-index:1;}

@media (max-width: 980px){
  .feature-photo{min-height:420px}
}
@media (max-width: 780px){
  .hero{padding: 68px 0 22px}
  .section{padding: 38px 0}
  .hero-inner{gap:18px}
  .trust{gap:10px; margin-top:16px}
  .trust-item{width:100%}
  .feature-photo{min-height:320px}
  .feature-photo img{object-position:center 20%}
  .feature-note{padding:16px 18px}
  .review-preview-offset{margin-left:0}
  #intro{padding-top:32px}
}


/* Subtle Body1st green theme refresh */
.pill,
.link-cta,
.mobile-inner a,
.bullet,
.quote,
.contact-card,
.accordion details,
.panel,
.studio-panel,
.feature-note,
.trust-item,
.soft,
.card{
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

.trust-item,
.soft,
.bullet,
.quote,
.contact-card,
.accordion details,
.panel{
  border-color: rgba(79,138,115,.12);
}

.hero-bg::after{
  background:
    radial-gradient(900px 500px at 20% 35%, rgba(214,176,122,.20), transparent 60%),
    radial-gradient(900px 600px at 90% 20%, rgba(79,138,115,.12), transparent 62%),
    linear-gradient(180deg, rgba(79,138,115,.05), transparent 38%);
}

.premium-hero .hero-bg{
  background:
    linear-gradient(180deg, rgba(22,17,14,.30), rgba(22,17,14,.84)),
    linear-gradient(90deg, rgba(22,17,14,.54) 0%, rgba(22,17,14,.28) 42%, rgba(22,17,14,.20) 100%),
    radial-gradient(900px 520px at 82% 18%, rgba(79,138,115,.12), transparent 48%),
    url('hero.jpg');
  background-size: cover;
  background-position: center center;
}

.site-header,
.mobile,
#intro::before{
  border-color: rgba(79,138,115,.10);
}

.section.alt .callout,
.bookbar,
.hero-card,
.form{
  border-color: rgba(79,138,115,.12);
}

.feature-photo,
.studio-panel,
.review-preview,
.quote-featured,
.hero-card,
.form,
.bookbar,
.callout{
  box-shadow: 0 18px 52px rgba(0,0,0,.24);
}

.chip[aria-selected="true"],
input:focus,
textarea:focus{
  border-color: rgba(79,138,115,.36);
  box-shadow: 0 0 0 4px rgba(79,138,115,.10);
}

.nav a:not(.nav-cta):not(.nav-social)::after{
  background: linear-gradient(90deg, rgba(214,176,122,.85), rgba(24,185,137,.75));
}

.nav-social{
  border-color: rgba(79,138,115,.24);
  color: rgba(214,176,122,.95);
  background: rgba(79,138,115,.05);
}

.nav-social:hover{
  background: rgba(79,138,115,.10);
  border-color: rgba(79,138,115,.34);
}

.footer-inner{
  border-top-color: rgba(79,138,115,.10);
}

@media (max-width: 780px){
  .site-header{
    background: linear-gradient(180deg, rgba(22,17,14,.92), rgba(22,17,14,.76));
  }
}


/* Brown + green premium rebalance */
body::before{
  background:
    radial-gradient(1200px 700px at 10% 0%, rgba(214,176,122,.18), transparent 62%),
    radial-gradient(900px 520px at 92% 12%, rgba(79,138,115,.11), transparent 62%),
    radial-gradient(1100px 700px at 50% 100%, rgba(73,52,40,.30), transparent 58%),
    linear-gradient(180deg, #120e0c 0%, #16110e 38%, #16110e 65%, #120e0c 100%);
}
.site-header{background: linear-gradient(180deg, rgba(22,17,14,.86), rgba(22,17,14,.64));}
.mobile{background: linear-gradient(180deg, rgba(22,17,14,.86), rgba(22,17,14,.74));}
.hero-bg{background: linear-gradient(180deg, rgba(23,17,14,.40), rgba(23,17,14,.88)), url('hero.jpg');}
.hero-card,
.form,
.bookbar,
.callout,
.panel,
.quote-featured,
.review-preview,
.review-card,
.studio-panel,
.feature-photo,
.soft,
.card,
.bullet,
.quote,
.contact-card,
.accordion details,
.trust-item{background: linear-gradient(180deg, rgba(79,138,115,.045), rgba(58,43,35,.78)); border-color: rgba(255,255,255,.08);}
.hero-card::before{background: radial-gradient(420px 220px at 20% 20%, rgba(214,176,122,.18), transparent 60%), radial-gradient(420px 240px at 80% 10%, rgba(79,138,115,.10), transparent 62%);}
.link-cta,.pill,.mobile-inner a{background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(79,138,115,.03));}
.link-cta.subtle{background: transparent;}
.nav-cta,.card-cta,.bookbar-cta,.submit,.card-book{background: linear-gradient(180deg, rgba(214,176,122,.16), rgba(141,108,78,.18));}
.section.alt{background: linear-gradient(180deg, rgba(79,138,115,.04), rgba(70,52,42,.22));}
.footer{background: linear-gradient(180deg, transparent, rgba(79,138,115,.03), rgba(70,52,42,.18));}
.meta-pill,.stars{background: rgba(42,31,26,.52);}
input, textarea{background: rgba(34,26,22,.56);}
.trust-soft .trust-item{background: rgba(33,25,21,.34);}
.feature-note{background: rgba(31,24,20,.54);}
.hero-card-premium{background: linear-gradient(180deg, rgba(79,138,115,.06), rgba(62,46,38,.82));}
.premium-soft-cards .soft,.quote-featured,.review-preview,.review-card,.review-preview-card{background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(62,46,38,.78));}


/* Subtle green-to-gold premium edging */
.card,
.soft,
.bullet,
.quote,
.contact-card,
.accordion details,
.trust-item,
.hero-card,
.form,
.bookbar,
.callout,
.panel,
.studio-panel,
.feature-note,
.review-preview,
.quote-featured,
.review-card,
.feature-photo{
  position: relative;
  border: 1px solid transparent;
  background:
    linear-gradient(180deg, rgba(79,138,115,.045), rgba(58,43,35,.78)) padding-box,
    linear-gradient(135deg, rgba(79,138,115,.32), rgba(214,176,122,.30)) border-box;
}

.hero-card,
.form,
.bookbar,
.callout,
.panel,
.quote-featured,
.review-preview,
.review-card,
.studio-panel,
.feature-photo{
  background:
    linear-gradient(180deg, rgba(79,138,115,.05), rgba(60,44,36,.80)) padding-box,
    linear-gradient(135deg, rgba(79,138,115,.34), rgba(214,176,122,.32)) border-box;
}

.card:hover,
.soft:hover,
.quote:hover,
.trust-item:hover,
.contact-card:hover,
.review-card:hover,
.review-preview:hover,
.quote-featured:hover,
.studio-panel:hover,
.feature-photo:hover{
  border-color: transparent;
  background:
    linear-gradient(180deg, rgba(79,138,115,.055), rgba(63,47,39,.82)) padding-box,
    linear-gradient(135deg, rgba(79,138,115,.48), rgba(214,176,122,.44)) border-box;
}

.card,
.soft,
.quote,
.contact-card,
.review-card,
.review-preview,
.quote-featured,
.studio-panel,
.feature-photo,
.trust-item{
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}


/* Ensure premium soft cards also get the brand edging clearly */
.premium-soft-cards .soft{
  border: 1px solid transparent;
  background:
    linear-gradient(180deg, rgba(79,138,115,.05), rgba(60,44,36,.80)) padding-box,
    linear-gradient(135deg, rgba(79,138,115,.40), rgba(214,176,122,.34)) border-box;
  box-shadow: 0 16px 40px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.03);
}
.premium-soft-cards .soft:hover{
  background:
    linear-gradient(180deg, rgba(79,138,115,.06), rgba(63,47,39,.82)) padding-box,
    linear-gradient(135deg, rgba(79,138,115,.52), rgba(214,176,122,.46)) border-box;
}
