/* LandMaXx mineral grounds: the CRL material language, in charcoal and forest. */
:root {
  --ground-texture:url('/assets/mineral-ground-20260922.webp');
  --color-bg:#111917;
  --color-border:#7d918052;
  --color-divider:#a5b2a332;
}
body {
  position:relative;isolation:isolate;
  background-color:#111917;
}
/* A single viewport-sized surface avoids repeating seams or stretching the
   grain to the entire page height when a gallery/plan section is expanded. */
body::before {
  content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(115deg,#17332638,#07110cb0 64%,#0a121966),var(--ground-texture);
  background-size:auto,cover;
  background-repeat:no-repeat;
  background-position:center top;
}
.header {
  background-color:#111917;
  background-image:linear-gradient(105deg,#25312bd9,#0c1312f5),var(--ground-texture);
  background-size:auto,cover;
  border-bottom-color:#9faf9e38;
  box-shadow:inset 0 1px 0 #e2ebdb0a;
}
.header.is-scrolled {box-shadow:0 10px 32px #0005,inset 0 1px 0 #e2ebdb0a}
.hero::before {
  content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:var(--ground-texture);background-size:cover;
  opacity:.65;mask-image:linear-gradient(90deg,#000 0%,#0009 26%,transparent 67%);
}
.hero::after {
  background:linear-gradient(90deg,#0a1414a3,transparent 82%),linear-gradient(0deg,#111917e8,transparent 35%);
}
.booking__panel {
  background-color:#24312a;
  background-image:radial-gradient(ellipse at 100% 0,#a428252b,transparent 58%),linear-gradient(120deg,#2d4032d9,#0f1a17ef),var(--ground-texture);
  background-size:auto,auto,cover;
  border-color:#a0b19766;border-radius:20px 32px 16px 16px;
  box-shadow:0 24px 50px #0005,inset 0 1px 0 #e0ecd021;
}
.section-head .eyebrow,.plan-band__intro .eyebrow,.closing .eyebrow,.service-detail__hero .eyebrow {
  display:flex;gap:13px;align-items:center;
}
.section-head .eyebrow::before,.plan-band__intro .eyebrow::before,.closing .eyebrow::before,.service-detail__hero .eyebrow::before {
  content:'';width:27px;height:2px;flex:none;background:#df3040;
}
.plan-band {
  background-color:#19271f;
  background-image:linear-gradient(110deg,#34533b85,#102017d9 68%,#17222199),var(--ground-texture);
  background-size:auto,cover;
  border-color:#9faf943e;
  box-shadow:inset 0 1px 0 #d9e9cc0d,0 14px 45px #0002;
}
.plan {
  background:linear-gradient(130deg,#26362af0,#101b16ee);
  border-color:#a2b69b45;box-shadow:inset 0 1px 0 #e9f2df0b;
}
.closing {
  margin-top:48px;margin-bottom:32px;padding:40px 42px;
  background-color:#18221c;
  background-image:radial-gradient(ellipse at 100% 0,#a52d2c40,transparent 60%),linear-gradient(120deg,#2d3e31b8,#0d1613e3),var(--ground-texture);
  background-size:auto,auto,cover;
  border:1px solid #a6b3994f;border-top-color:#b9a49c72;border-radius:26px 46px 18px 18px;
  box-shadow:inset 0 1px 0 #f6e7cf0d,0 15px 40px #0003;
}
.footer {
  background-color:#0d1511;
  background-image:linear-gradient(115deg,#112016d6,#060c0bee),var(--ground-texture);
  background-size:auto,cover;border-top-color:#9eab9638;
}
.quote-dialog {
  background-color:#1a2720;
  background-image:linear-gradient(120deg,#263b2de8,#101a15f5),var(--ground-texture);
  background-size:auto,cover;box-shadow:0 30px 100px #0009,inset 0 1px 0 #dce8cf18;
}
.service-detail__hero {
  isolation:isolate;background-color:#1b2921;
  background-image:radial-gradient(ellipse at 90% 10%,#5d282733,transparent 55%),linear-gradient(112deg,#203e296e,#0c1713bb 75%),var(--ground-texture);
  background-size:auto,auto,cover;border-bottom-color:#92a28b50;
}
.service-detail__hero::after {
  content:'';position:absolute;inset:0;z-index:-1;width:auto;height:auto;aspect-ratio:auto;
  border:0;border-radius:0;pointer-events:none;
  background:linear-gradient(125deg,transparent 69.7%,#a7b69d24 69.8%,#233b2852 70%,#0a140e17);
}
.service-detail__card {
  background:linear-gradient(125deg,#29392db8,#152119e8);
  border-color:#a2b3983f;box-shadow:inset 0 1px 0 #e9e5d70b;
}
.service-detail__aside {
  background-color:#203025;
  background-image:radial-gradient(ellipse at 100% 0,#92342d24,transparent 68%),linear-gradient(125deg,#35503ab8,#152218eb),var(--ground-texture);
  background-size:auto,auto,cover;
  border:1px solid #9aae9154;box-shadow:inset 0 1px 0 #eff2e310,0 18px 40px #0003;
}
.service-detail__note {background:linear-gradient(110deg,#314b339e,#1c291ead);border-left-color:#e9656b}
.thanks-page {background:transparent}
.thanks-card {
  background-color:#1d2b22;
  background-image:radial-gradient(ellipse at 100% 0,#a72b2d33,transparent 60%),linear-gradient(125deg,#304834da,#112016ef),var(--ground-texture);
  background-size:auto,auto,cover;box-shadow:0 24px 65px #0006,inset 0 1px 0 #eff2e314;
}
@media(max-width:899px){
  .closing{padding:32px;column-gap:26px}
}
@media(max-width:620px){
  .hero::before{opacity:.35;mask-image:linear-gradient(90deg,#000,transparent 85%)}
  .hero::after{background:linear-gradient(90deg,#0e1c19b8,#0e1c1920),linear-gradient(0deg,#111917e6,transparent 48%)}
  .booking__panel{border-radius:16px 26px 12px 12px}
  .closing{margin-top:30px;margin-bottom:28px;padding:28px 24px;border-radius:22px 32px 12px 12px}
}
@media(forced-colors:active){
  body::before,.hero::before,.hero::after,.service-detail__hero::after{display:none}
}
