/* Deep True Rise — lavender / plum visual identity. Colors are provisional pending exact reference values from beckymundt.com. */
:root{--ink:#440B60;--green:#563276;--cream:#fbf9fd;--pale:#eee5f5;--gold:#a77bc7;--muted:#675675}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial, Helvetica, sans-serif;line-height:1.75}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.narrow{max-width:790px}.skip{position:absolute;top:-60px;left:20px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.site-header{position:relative;z-index:10;background:#fbf9fdeb;border-bottom:1px solid #e7ddec}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:25px}.brand{text-decoration:none;font:700 14px Arial,Helvetica,sans-serif;letter-spacing:.19em;white-space:nowrap}.brand-mark{font-size:28px;color:var(--gold);vertical-align:middle;margin-right:8px}.nav{display:flex;gap:30px;align-items:center}.nav a{text-decoration:none;font-size:13px;font-weight:600}.nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{border:1px solid var(--green);border-radius:50px;padding:9px 19px}.menu-toggle{display:none}.hero{overflow:hidden;background:linear-gradient(118deg,#fcfaff 0%,#f6f0fb 57%,#e7d9f2 100%);position:relative}.hero-grid{min-height:640px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:55px}.hero-copy{position:relative;z-index:2;padding:80px 0}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:700;color:#775394;margin:0 0 23px}.hero h1,h2,.quote{font-family:Arial,Helvetica,sans-serif;font-weight:600;line-height:1.16}.hero h1{font-size:clamp(55px,7.2vw,98px);letter-spacing:-.055em;margin:0 0 12px;white-space:nowrap}.hero-dot{color:var(--gold)}.hero-tagline{font-size:clamp(23px,3vw,36px);font-family:Arial,Helvetica,sans-serif;margin:0 0 24px}.hero-tagline em,h2 em{color:#8755a9;font-weight:400}.lead{font-size:18px;max-width:560px;line-height:1.85;color:#544461;margin:0 0 34px}.button{display:inline-flex;align-items:center;gap:22px;border-radius:40px;background:var(--green);color:#fff;padding:15px 25px;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.02em;transition:transform .2s,background .2s}.button:hover{background:#41245e;transform:translateY(-2px)}.hero-art{height:535px;position:relative;display:flex;align-items:center;justify-content:center}.arch{width:78%;height:88%;border-radius:250px 250px 12px 12px;background:linear-gradient(140deg,#bea2d6,#e8d8f5 46%,#ad8bc9);padding:15px;box-shadow:22px 25px 80px #52327424;transform:rotate(-3deg);position:relative}.arch-inner{width:100%;height:100%;border-radius:240px 240px 5px 5px;overflow:hidden;position:relative;background:radial-gradient(circle at 50% 37%,#fff3fa 0%,#ead6f8 18%,#ae8cc9 46%,#634183 100%)}.arch-inner:before,.arch-inner:after{content:"";position:absolute;bottom:-50px;border-radius:50%;width:150%;height:48%;background:#68418b;left:-40%;transform:rotate(13deg)}.arch-inner:after{background:#9772b6;left:10%;bottom:-100px;transform:rotate(-14deg)}.arch-light{position:absolute;left:46%;top:28%;width:48px;height:48px;border-radius:50%;background:#fff0fc;box-shadow:0 0 50px 35px #ffe4ff88}.orb{position:absolute;border-radius:50%;background:#bda1d875}.orb-one{width:120px;height:120px;top:40px;right:-8px}.orb-two{width:65px;height:65px;bottom:50px;left:-20px}.orb-three{width:25px;height:25px;top:95px;left:12px}.plant{position:absolute;color:#aa85c4;font-size:80px}.plant-left{bottom:40px;left:0}.plant-right{top:30px;right:20px;color:#b38ed1}.art-caption{position:absolute;bottom:0;right:10px;font-family:Arial,Helvetica,sans-serif;font-style:normal;color:#7a5a92;font-size:16px}.section{padding:110px 0}.intro{text-align:center}.intro h2{font-size:clamp(35px,5vw,57px);margin:0 0 35px}.intro p:not(.eyebrow){font-size:18px;color:#61526d}.intro .statement{font-family:Arial,Helvetica,sans-serif;font-size:26px!important;color:var(--green)!important;margin-top:42px}.method{background:#f0e8f7}.section-head{max-width:690px;margin:0 auto 55px;text-align:center}.section-head h2{font-size:clamp(36px,4.7vw,59px);margin:0 0 22px}.section-head>p:last-child{color:#685777}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step{padding:42px 34px 48px;background:#fffdfd;border:1px solid #e5d8ed;min-height:385px;box-shadow:0 14px 40px #48305f12}.step-num{font-size:11px;letter-spacing:.17em;color:#906aaf;font-weight:700}.step-symbol{font-size:49px;color:#a27cc1;margin:26px 0 6px;line-height:1}.step h3{font:600 31px Arial,Helvetica,sans-serif;letter-spacing:.1em;margin:10px 0 16px}.step p{color:#64536e;font-size:15px}.quote-section{background:#563276;color:#fff9ff;text-align:center}.quote{font-size:clamp(29px,4.0vw,49px);font-style:normal;margin:0}.quote-line{display:block;width:60px;height:1px;background:#d6b7ea;margin:42px auto 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.about h2,.closing h2{font-size:clamp(36px,4.5vw,56px);margin:0 0 27px}.about p:not(.eyebrow){color:#61536c}.about-visual{min-height:450px;position:relative;overflow:hidden;border-radius:230px 230px 8px 8px;background:linear-gradient(#e8d9f2,#c2a3db 58%,#9472b6);box-shadow:18px 20px 60px #56327621}.sun{position:absolute;width:130px;height:130px;background:#fff0fc;border-radius:50%;top:18%;left:37%;box-shadow:0 0 90px #ffe3fa}.hill{position:absolute;width:150%;height:65%;border-radius:50%;bottom:-37%;left:-20%;background:#8c66ac;transform:rotate(10deg)}.hill-two{left:25%;bottom:-44%;background:#603e85;transform:rotate(-18deg)}.hill-three{left:-45%;bottom:-53%;background:#b18bc9;transform:rotate(-8deg)}.closing{text-align:center;background:#35204d;color:#fcf8ff}.closing .eyebrow{color:#d8b9e9}.closing p{color:#e7d9f0;font-size:18px}.closing .small-note{font-size:15px;margin:28px auto;max-width:610px}.button-light{background:#f6eafc;color:#3f235c;margin-top:10px}.button-light:hover{background:#ead9f5}.closing .placeholder-note{font-size:12px;opacity:.7;margin-top:15px}footer{background:#261536;color:#e2d4ed}.footer-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.08em}@media(max-width:850px){.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:80px 0 10px}.hero-art{height:450px;max-width:500px;width:100%;margin:auto}.hero h1{white-space:normal}.cards{grid-template-columns:1fr}.step{min-height:auto}.about-grid{grid-template-columns:1fr;gap:55px}.about-visual{max-width:550px;width:100%;margin:auto}.nav{gap:14px}.nav a{font-size:12px}}@media(max-width:610px){.wrap{width:min(100% - 36px,1160px)}.header-inner{min-height:72px}.brand{font-size:11px}.menu-toggle{display:block;border:1px solid #d9c7e6;background:transparent;padding:8px 12px;border-radius:6px;color:var(--ink)}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fbf9fd;flex-direction:column;align-items:stretch;padding:20px 24px 28px;box-shadow:0 20px 30px #321d4820}.nav.open{display:flex}.nav a{font-size:15px}.nav-cta{text-align:center}.hero-copy{padding:65px 0 0}.hero-art{height:370px}.arch{height:88%;width:72%}.section{padding:78px 0}.intro p:not(.eyebrow){font-size:16px}.intro .statement{font-size:23px!important}.step{padding:32px 26px}.about-visual{min-height:340px}.footer-inner{flex-direction:column;justify-content:center;padding:26px 0;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Accessibility and tone refinements */
.hero-tagline{font-weight:400;letter-spacing:-.025em}.hero-tagline em,h2 em{font-style:normal;font-weight:400}.intro .statement{font-weight:500}.quote{font-weight:400;line-height:1.3}.art-caption{font-weight:400}.brand{letter-spacing:.15em}


/* Hero photograph: irregular, softly feathered transition into the original lavender background.
   The transparent mask is a separate PNG, keeping the garden photograph unmodified. */
.hero{isolation:isolate}
.hero-grid{position:relative}
.hero-copy{z-index:2}
.hero-photo{
  position:absolute;
  z-index:1;
  top:0;
  bottom:0;
  right:0;
  width:76%;
  height:100%;
  background-image:url('images/sacred-garden-arbor.png');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:54% center;
  -webkit-mask-image:url('images/garden-fade-mask.png');
  mask-image:url('images/garden-fade-mask.png');
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  pointer-events:none;
}
@media(max-width:850px){
  .hero-photo{width:78%;opacity:.85;background-position:55% center}
}
@media(max-width:610px){
  .hero-grid{display:flex;flex-direction:column;gap:0}
  .hero-copy{padding:65px 0 20px}
  .hero-photo{
    position:relative;
    width:calc(100% + 36px);
    height:320px;
    flex:none;
    margin:0 -18px;
    opacity:1;
    background-position:center center;
    -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 19%,#000 100%);
    mask-image:linear-gradient(to bottom,transparent 0%,#000 19%,#000 100%);
  }
}


/* Garden hero: approved overcast garden, diagonal editorial title, and trademark. */
.hero-grid{min-height:720px}
.hero-copy{padding:40px 0 48px}
.hero .garden-hero-title{
  display:flex;flex-direction:column;align-items:flex-start;
  font-family:'Bodoni MT',Didot,Georgia,serif;
  font-size:clamp(74px,7.1vw,132px);
  font-weight:400;line-height:.87;letter-spacing:-.065em;
  white-space:normal;margin:0 0 30px;
}
.garden-hero-title span:nth-child(2){padding-left:.30em;color:#8a61a1}
.garden-hero-title span:nth-child(3){padding-left:.64em}
.garden-hero-title .hero-tm{display:inline-block;font-family:Arial,sans-serif;font-size:.17em;font-weight:600;line-height:1;letter-spacing:0;vertical-align:baseline;position:relative;top:-2.25em;margin-left:.38em;padding:0}
.hero-photo{background-image:url('images/garden-overcast-arbor.webp');background-position:52% center}
.hero .hero-tagline{margin-bottom:24px}
.hero .lead{line-height:1.65;margin-bottom:28px}
@media(max-width:850px){
 .hero-grid{min-height:0}
 .hero .garden-hero-title{font-size:clamp(70px,10vw,106px)}
 .hero-photo{background-position:55% center}
}
@media(max-width:610px){
 .hero .garden-hero-title{font-size:clamp(63px,15vw,90px);margin-bottom:25px}
 .hero-copy{padding:52px 0 28px}
 .hero-photo{background-position:center center}
}


/* 2026-10-30 repair: keep the garden image visible without an external mask PNG. */
.hero .hero-photo {
  background-image: url('images/garden-overcast-arbor.webp');
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 17%, rgba(0,0,0,.72) 36%, #000 55%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 17%, rgba(0,0,0,.72) 36%, #000 55%);
}
@media (max-width: 610px) {
  .hero .hero-photo {
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 19%, #000 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, #000 19%, #000 100%);
  }
}
/* Underwater trademark: small superscript, without altering the diagonal heading. */
.water-theme .water-hero h1 .hero-tm {
  display: inline-block;
  font-family: Arial, Helvetica, sans-serif;
  font-size: .16em;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  vertical-align: baseline;
  position: relative;
  top: -2.35em;
  margin-left: .40em;
  padding: 0;
}

/* Restore the three garden journey cards after the hero stylesheet update. */
.method .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.method .step { min-width: 0; }
.method .step-image { display:block; width:100%; max-width:100%; height:auto; aspect-ratio:1.65 / 1; object-fit:cover; border-radius:14px; margin:28px 0 24px; }
@media (max-width:850px) { .method .cards { grid-template-columns:1fr; } }


/* Garden hero final layout: match underwater title scale while keeping CTA visible. */
@media (min-width: 851px) {
  .hero .garden-hero-title {
    font-size: clamp(80px, 7.9vw, 136px);
    line-height: .83;
    margin-bottom: 22px;
  }
  .hero-grid { min-height: min(710px, calc(100svh - 115px)); }
  .hero-copy { padding-top: 20px; padding-bottom: 20px; }
  .hero .hero-tagline { margin-bottom: 18px; }
  .hero .lead { margin-bottom: 20px; line-height: 1.55; }
}
/* Preserve readable proportions on narrower displays. */
@media (max-width: 850px) {
  .hero .garden-hero-title { margin-top: 0; }
}


/* Personal guide introduction — development branch */
.hero-guide{font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#775394;margin:0 0 13px}
.about-portrait{background:#e9e0f0 url('images/garden-sanctuary-bench.webp') center / cover no-repeat;border-radius:210px 210px 14px 14px;min-height:0;aspect-ratio: 0.78;overflow:hidden}
.about-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.about-copy p:not(.eyebrow){font-size:17px;line-height:1.8}
@media(max-width:850px){.about-portrait{max-width:480px}}
@media(max-width:610px){.about-portrait{min-height:0;aspect-ratio:.83}.hero-guide{font-size:11px}}

/* Keep hero description inside the clear lavender area, away from garden detail. */
@media (min-width: 851px) {
  .hero .lead { max-width: 425px; }
}
@media (min-width: 611px) and (max-width: 850px) {
  .hero .lead { max-width: 420px; }
}


/* Tablet and compact laptop hero: separate copy from photo for reliable contrast.
   Keep the approved overlapping composition on wider desktops. */
@media (min-width: 611px) and (max-width: 950px) {
  .hero .hero-grid {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    gap: 0;
  }
  .hero .hero-copy {
    width: 100%;
    padding: 55px 0 24px;
  }
  .hero .lead {
    max-width: 600px;
  }
  .hero .hero-photo {
    position: relative;
    inset: auto;
    display: block;
    flex: none;
    width: calc(100% + 48px);
    height: clamp(300px, 43vw, 470px);
    margin: 0 -24px;
    opacity: 1;
    background-position: center 53%;
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 23%, #000 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, #000 23%, #000 100%);
  }
}
