/* About pages reuse the existing Leaf type, colours and Tabler grid container. */
.leaf-site .about-page {padding:32px 28px 88px;}
.leaf-site .about-hero {display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);overflow:hidden;border-radius:24px;background:radial-gradient(ellipse at 12% 0,#40614c 0,transparent 65%),var(--leaf-deep);color:#fff;}
html:root .leaf-site .about-hero {padding:0;}
.leaf-site .about-intro {min-width:0;padding:48px;align-self:center;}
.leaf-site .about-intro .breadcrumb-line {margin-bottom:38px;flex-wrap:wrap;}
.leaf-site .about-intro .breadcrumb-line a,.leaf-site .about-intro .breadcrumb-line span {color:#e2eae2;}
.leaf-site .about-intro .kicker {color:#e8c5b5;}
.leaf-site .about-intro h1 {color:#fff;font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.12;margin:16px 0 24px;}
.leaf-site .about-intro p {color:#f1f3eb;font-size:1.0625rem;line-height:1.8;max-width:52ch;margin:0 0 28px;}
.leaf-site .about-intro .btn {min-height:48px;white-space:normal;}
.leaf-site .about-photo {position:relative;min-width:0;min-height:340px;margin:0;}
.leaf-site .about-photo img {position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;border-radius:0;box-shadow:none;border:0;}
.leaf-site .about-photo--team {overflow:hidden;background:transparent;}
.leaf-site .about-photo--team .team-shirt-pattern {object-fit:contain;padding:0;background:transparent;}
.leaf-site .about-content {display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.52fr);gap:64px;padding:64px 24px 0;align-items:start;}
.leaf-site .about-copy {max-width:68ch;min-width:0;}
.leaf-site .about-copy section+section {margin-top:48px;}
.leaf-site .about-copy h2 {color:var(--leaf-deep);font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.3;margin:0 0 24px;}
.leaf-site .about-copy p {font-size:1.0625rem;line-height:1.85;margin:0 0 22px;}
.leaf-site .about-questions {background:linear-gradient(140deg,#f2f5ed,var(--leaf-sage));padding:28px;border-radius:24px;min-width:0;}
.leaf-site .about-arches {height:76px;width:140px;background:url('assets/leaf-three-arches.svg') center/contain no-repeat;filter:brightness(.65);margin-bottom:24px;}
.leaf-site .about-questions h2 {font-size:1.4rem;line-height:1.35;margin:0 0 20px;}
.leaf-site .about-questions details {border-top:1px solid #bfccbd;}
.leaf-site .about-questions summary {padding:16px 0;min-height:48px;cursor:pointer;font-weight:600;line-height:1.6;}
.leaf-site .about-questions details p {font-size:1rem;line-height:1.75;margin:0;padding:0 0 20px;}
.leaf-site .about-page :is(a,summary):focus-visible {outline:3px solid #b57c6c;outline-offset:5px;}
@media(max-width:991px) {
 .leaf-site .about-page {padding:24px 20px 64px;}
 .leaf-site .about-intro {padding:32px;}
 .leaf-site .about-content {gap:32px;padding:40px 0 0;grid-template-columns:minmax(0,1fr);}
 .leaf-site .about-copy {max-width:none;}
 .leaf-site .about-questions {max-width:68ch;}
}
.about-related-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin-top:38px;padding-top:24px;border-top:1px solid var(--leaf-line,#c8cec7)}
.about-related-links a{display:flex;align-items:center;min-height:48px;color:var(--leaf-green,#006438);font-weight:600;text-underline-offset:5px}
.about-related-links a:hover{text-decoration:underline}
@media(max-width:640px){.about-related-links{grid-template-columns:1fr;gap:2px}}
@media(max-width:767px) {
 .leaf-site .about-page {padding:20px 16px 48px;}
 .leaf-site .about-hero {grid-template-columns:minmax(0,1fr);}
 .leaf-site .about-intro {padding:28px 24px;}
 .leaf-site .about-intro .breadcrumb-line {margin-bottom:28px;}
 .leaf-site .about-photo {aspect-ratio:4/3;min-height:0;overflow:hidden;}
 .leaf-site .about-photo img {min-height:0;}
 .leaf-site .about-questions {padding:24px;}
}

/* The philosophy page follows the room: warm paper, green depth and one recurring arch. */
.leaf-site .philosophy-page {padding:32px 28px 0;overflow:hidden;background:#f7f4ec;}
.leaf-site .philosophy-page :is(h1,h2,h3,p,li,strong) {overflow-wrap:normal;word-break:normal;hyphens:auto;}
.leaf-site .philosophy-page :is(h1,h2,p,figure) {margin-top:0;}
.leaf-site .philosophy-page h2 {color:var(--leaf-deep);font-size:clamp(1.75rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.025em;}
.leaf-site .philosophy-page p {font-size:1.0625rem;line-height:1.82;}
.leaf-site .philosophy-hero {display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);min-height:650px;padding:0;overflow:hidden;border:1px solid #ddd4c5;border-radius:32px;background:#f1ecdf;}
.leaf-site .philosophy-hero-copy {position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:52px 6vw 52px 52px;}
.leaf-site .philosophy-hero-copy::before {content:"";position:absolute;inset:-8% -14% -10% -8%;z-index:-1;background:url('assets/leaf-rose-silk-veil.webp') center/112% auto no-repeat;opacity:.32;pointer-events:none;}
.leaf-site .philosophy-hero .breadcrumb-line {margin:0 0 72px;}
.leaf-site .philosophy-hero .breadcrumb-line a {display:inline-flex;align-items:center;min-width:44px;min-height:44px;}
.leaf-site .philosophy-hero h1 {max-width:10ch;margin:18px 0 28px;color:var(--leaf-deep);font-size:clamp(2.8rem,5vw,5.5rem);line-height:.98;letter-spacing:-.045em;}
.leaf-site .philosophy-hero-copy>p {max-width:54ch;margin-bottom:30px;}
.leaf-site .philosophy-hero .btn {align-self:flex-start;min-height:48px;}
.leaf-site .philosophy-hero-photo {position:relative;min-width:0;margin:24px 24px 24px 0;overflow:hidden;border-radius:360px 360px 26px 26px;}
.leaf-site .philosophy-hero-photo img {width:100%;height:100%;min-height:600px;object-fit:cover;object-position:center 42%;border:0;border-radius:0;box-shadow:none;}
.leaf-site .philosophy-mobile-intro {display:none;}
.leaf-site .philosophy-manifest {position:relative;max-width:980px;padding:128px 24px 120px 150px;}
.leaf-site .philosophy-manifest .manifest-mark {position:absolute;left:32px;top:132px;width:72px;height:110px;border:2px solid #b87b68;border-bottom:0;border-radius:48px 48px 0 0;opacity:.78;}
.leaf-site .philosophy-manifest h2 {max-width:18ch;margin-bottom:28px;font-size:clamp(2rem,4.2vw,4rem);}
.leaf-site .philosophy-manifest p {max-width:64ch;}
.leaf-site .philosophy-materials {display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.15fr);gap:clamp(48px,8vw,112px);align-items:center;padding:0 24px 120px;}
.leaf-site .philosophy-materials figure {height:610px;margin:0;overflow:hidden;border-radius:260px 260px 20px 20px;}
.leaf-site .philosophy-materials figure img {width:100%;height:100%;object-fit:cover;border:0;border-radius:0;box-shadow:none;}
.leaf-site .philosophy-materials>div {max-width:660px;}
.leaf-site .philosophy-materials h2 {margin:16px 0 30px;}
.leaf-site .philosophy-materials p {margin-bottom:22px;}
.leaf-site .material-notes {display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:40px 0 0;padding:0;border-top:1px solid #bda98e;border-bottom:1px solid #bda98e;list-style:none;}
.leaf-site .material-notes li {padding:16px 8px;color:#76594b;font-size:.79rem;font-weight:700;letter-spacing:.1em;text-align:center;text-transform:uppercase;}
.leaf-site .material-notes li+li {border-left:1px solid #d5c9b6;}
.leaf-site .philosophy-comfort {position:relative;display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1fr);gap:clamp(36px,7vw,96px);align-items:center;padding:10px 11vw 130px;}
.leaf-site .philosophy-comfort>div:last-child {max-width:650px;}
.leaf-site .philosophy-comfort h2 {margin:16px 0 26px;}
.leaf-site .comfort-portrait {position:relative;justify-self:end;width:min(100%,330px);height:390px;margin:0;overflow:hidden;border-radius:210px 210px 22px 22px;background:#e8e0d3;}
.leaf-site .comfort-portrait img {width:100%;height:100%;object-fit:cover;border:0;border-radius:0;box-shadow:none;}
.leaf-site .comfort-arch-lines {position:absolute;inset:18px 14px -1px 32px;border:1px solid rgba(244,229,208,.72);border-bottom:0;border-radius:170px 170px 0 0;pointer-events:none;}
.leaf-site .philosophy-okey {position:relative;isolation:isolate;margin:0 -28px;padding:104px 28px;background:#123f35;color:#f8f4e9;}
.leaf-site .philosophy-okey::before {content:"";position:absolute;inset:0;z-index:-1;background:url('assets/leaf-floral-wall-pattern.svg') right 18% center/420px auto repeat;opacity:.2;pointer-events:none;}
.leaf-site .philosophy-okey>.container-xl {display:grid;grid-template-columns:minmax(0,.85fr) minmax(380px,1.15fr);gap:clamp(50px,8vw,112px);align-items:center;}
.leaf-site .philosophy-okey-copy {max-width:590px;padding-left:24px;}
.leaf-site .philosophy-okey .kicker {color:#e6b8a6;}
.leaf-site .philosophy-okey h2 {margin:16px 0 28px;color:#fff;}
.leaf-site .philosophy-okey p {color:#eef1e8;}
.leaf-site .philosophy-okey figure {width:100%;aspect-ratio:5/4;margin:0;overflow:hidden;border-radius:260px 260px 20px 20px;}
.leaf-site .philosophy-okey figure img {width:100%;height:100%;object-fit:cover;border:0;border-radius:0;box-shadow:none;}
.leaf-site .philosophy-community {display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1fr);gap:clamp(48px,8vw,120px);align-items:start;padding:128px 24px;}
.leaf-site .community-signature {display:flex;flex-direction:column;gap:30px;align-items:flex-start;}
.leaf-site .community-line {max-width:15ch;margin:0;color:#a26454;font-family:Georgia,serif;font-size:clamp(2rem,3.8vw,3.8rem)!important;line-height:1.13!important;}
.leaf-site .community-signature .community-photo {position:relative;width:min(100%,500px);aspect-ratio:4/3;margin:2px 0 0;overflow:hidden;border-radius:180px 180px 22px 22px;background:#173f34;}
.leaf-site .community-signature .community-photo img {display:block;width:100%;height:100%;object-fit:cover;border:0;border-radius:0;box-shadow:none;}
.leaf-site .community-photo-line {position:absolute;inset:18px 16px -1px 28px;border:1px solid rgba(248,233,214,.76);border-bottom:0;border-radius:160px 160px 0 0;pointer-events:none;}
.leaf-site .philosophy-community>div {max-width:650px;}
.leaf-site .philosophy-community h2 {margin-bottom:28px;}
.leaf-site .philosophy-community p {margin-bottom:22px;}
.leaf-site .philosophy-values {position:relative;isolation:isolate;overflow:hidden;padding:76px max(24px,5vw) 104px;background:linear-gradient(125deg,#edf1e9,#f7f3ea);border-radius:30px 30px 0 0;}
.leaf-site .philosophy-values::before {content:"";position:absolute;z-index:-1;right:-13%;bottom:-14%;width:min(720px,64vw);aspect-ratio:1680/900;background:url('assets/leaf-shirt-pattern-summer.webp') center/contain no-repeat;opacity:.07;pointer-events:none;}
.leaf-site .philosophy-values>:is(.kicker,h2,ul) {position:relative;z-index:1;}
.leaf-site .philosophy-values h2 {margin:16px 0 44px;}
.leaf-site .philosophy-values ul {margin:0;padding:0;border-top:1px solid #bfad92;list-style:none;}
.leaf-site .philosophy-values li {display:grid;grid-template-columns:minmax(210px,.55fr) minmax(0,1fr);gap:clamp(36px,8vw,120px);padding:30px 4vw;border-bottom:1px solid #d4c8b5;}
.leaf-site .philosophy-values .value-title {display:flex;align-items:center;gap:14px;min-width:0;}
.leaf-site .philosophy-values .value-icon {display:block;flex:0 0 auto;width:30px;height:30px;fill:none;stroke:#a36a59;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;}
.leaf-site .philosophy-values strong {color:var(--leaf-deep);font-size:1.25rem;line-height:1.45;}
.leaf-site .philosophy-values li p {max-width:66ch;margin:0;}
.leaf-site .philosophy-invitation {position:relative;isolation:isolate;overflow:hidden;margin:0 -28px;padding:74px 28px;background:linear-gradient(120deg,#16493d,#0e332b);color:#fff;}
.leaf-site .philosophy-invitation>.container-xl {position:relative;z-index:1;display:flex;gap:48px;align-items:center;justify-content:space-between;}
.leaf-site .philosophy-invitation .summer-love-print {position:absolute;z-index:0;right:-102px;bottom:-172px;display:block;width:390px;height:auto;opacity:.14;pointer-events:none;}
.leaf-site .philosophy-invitation h2 {margin:14px 0 12px;color:#fff;}
.leaf-site .philosophy-invitation p {margin-bottom:0;color:#ecf2e9;}
.leaf-site .philosophy-invitation .kicker {color:#e7b8a3;}
.leaf-site .philosophy-invitation .btn {flex:0 0 auto;min-height:48px;}

@media(max-width:991px) {
 .leaf-site .philosophy-hero {grid-template-columns:minmax(0,1fr) minmax(310px,.78fr);min-height:580px;}
 .leaf-site .philosophy-hero-copy {padding:42px;}
 .leaf-site .philosophy-hero .breadcrumb-line {margin-bottom:46px;}
 .leaf-site .philosophy-hero-photo img {min-height:532px;}
 .leaf-site .philosophy-materials {gap:44px;}
 .leaf-site .philosophy-okey>.container-xl {gap:48px;}
}

@media(max-width:767px) {
 .leaf-site .philosophy-page {padding:16px 16px 0;}
 .leaf-site .philosophy-hero {position:relative;isolation:isolate;grid-template-columns:minmax(0,1fr);min-height:calc(100svh - 98px);border-radius:26px;background:var(--leaf-deep);}
 .leaf-site .philosophy-hero::after {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0b2d25d9 0%,#0b2d25ed 44%,#0b2d25fa 100%);pointer-events:none;}
 .leaf-site .philosophy-hero-copy {position:relative;z-index:1;justify-content:flex-end;padding:28px 24px 34px;color:#fff;}
 .leaf-site .philosophy-hero .breadcrumb-line {margin-bottom:34px;}
 .leaf-site .philosophy-hero :is(.breadcrumb-line a,.breadcrumb-line span,.kicker,.hero-copy>p) {color:#f5f1e8;}
 .leaf-site .philosophy-hero h1 {font-size:clamp(2.5rem,13vw,4.1rem);color:#fff;}
 .leaf-site .philosophy-hero-copy>p {display:none;}
 .leaf-site .philosophy-hero .btn {background:#f7f4ec;color:var(--leaf-deep);border-color:#f7f4ec;}
 .leaf-site .philosophy-hero-photo {position:absolute;inset:0;z-index:-2;display:block;order:initial;aspect-ratio:auto;margin:0;border-radius:0;}
 .leaf-site .philosophy-hero-photo img {position:absolute;inset:0;width:100%;height:100%;min-height:0;object-position:48% 40%;}
 .leaf-site .philosophy-mobile-intro {display:block;padding:32px 20px 14px;}
 .leaf-site .philosophy-mobile-intro p {max-width:32ch;margin:0;color:var(--leaf-deep);font-size:1rem;line-height:1.72;}
 .leaf-site .philosophy-manifest {padding:58px 12px 76px;}
 .leaf-site .philosophy-manifest .manifest-mark {position:static;display:block;width:40px;height:62px;margin:0 0 22px 4px;}
 .leaf-site .philosophy-materials {grid-template-columns:minmax(0,1fr);gap:38px;padding:0 0 84px;}
 .leaf-site .philosophy-materials figure {height:auto;aspect-ratio:4/5;border-radius:180px 180px 18px 18px;}
 .leaf-site .philosophy-materials>div {padding:0 8px;}
 .leaf-site .material-notes {grid-template-columns:repeat(2,1fr);}
 .leaf-site .material-notes li:nth-child(3) {border-left:0;border-top:1px solid #d5c9b6;}
 .leaf-site .material-notes li:nth-child(4) {border-top:1px solid #d5c9b6;}
 .leaf-site .philosophy-comfort {display:grid;grid-template-columns:minmax(0,1fr);gap:34px;padding:0 8px 84px;}
 .leaf-site .comfort-portrait {justify-self:start;width:min(100%,330px);height:auto;aspect-ratio:4/5;}
 .leaf-site .philosophy-okey {margin:0 -16px;padding:72px 16px;}
 .leaf-site .philosophy-okey::before {background-size:310px auto;opacity:.16;}
 .leaf-site .philosophy-okey>.container-xl {display:flex;flex-direction:column;gap:36px;padding:0;}
 .leaf-site .philosophy-okey-copy {padding:0 8px;}
 .leaf-site .philosophy-okey figure {order:2;width:100%;height:auto;aspect-ratio:4/3;border-radius:180px 180px 18px 18px;}
 .leaf-site .philosophy-okey figure img {object-position:center 32%;}
 .leaf-site .philosophy-community {grid-template-columns:minmax(0,1fr);gap:54px;padding:84px 8px;}
 .leaf-site .community-line {font-size:clamp(2rem,10vw,3.15rem)!important;}
 .leaf-site .community-signature .community-photo {width:100%;}
 .leaf-site .philosophy-values {padding:48px 22px 72px;border-radius:26px 26px 0 0;}
 .leaf-site .philosophy-values::before {right:-35%;bottom:-8%;width:460px;opacity:.075;}
 .leaf-site .philosophy-values h2 {margin-bottom:30px;}
 .leaf-site .philosophy-values li,.leaf-site .philosophy-values li:nth-child(even) {grid-template-columns:minmax(0,1fr);gap:12px;padding:26px 0;}
 .leaf-site .philosophy-values .value-title {gap:12px;}
 .leaf-site .philosophy-invitation {margin:0 -16px;padding:58px 24px;}
 .leaf-site .philosophy-invitation>.container-xl {display:block;padding:0;}
 .leaf-site .philosophy-invitation .summer-love-print {right:-88px;bottom:-112px;width:270px;opacity:.11;}
 .leaf-site .philosophy-invitation .btn {margin-top:28px;width:100%;}
}

/* Philosophy stays spacious, but mobile transitions no longer consume a whole extra screen. */
@media(max-width:767px) {
 .leaf-site .philosophy-manifest {padding-bottom:58px;}
 .leaf-site .philosophy-materials {gap:26px;padding-bottom:62px;}
 .leaf-site .philosophy-comfort {gap:26px;padding-bottom:62px;}
 .leaf-site .philosophy-okey {padding-block:58px;}
 .leaf-site .philosophy-okey>.container-xl {gap:28px;}
 .leaf-site .philosophy-community {gap:36px;padding-block:62px;}
 .leaf-site .philosophy-values {padding-bottom:62px;}
}

/* On phones the About arrival keeps the room visible as a real first scene.
   Copy now has its own deep-green reading stage instead of dimming the whole
   photograph into a generic background. */
@media(max-width:767px) {
 .leaf-site .philosophy-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:clamp(252px,39svh,334px) auto;
  min-height:0;
  background:var(--leaf-deep);
 }
 .leaf-site .philosophy-hero::after {display:none;}
 .leaf-site .philosophy-hero-photo {
  position:relative;
  inset:auto;
  z-index:0;
  grid-row:1;
  display:block;
  height:100%;
  margin:0;
  overflow:hidden;
  border-radius:0;
 }
 .leaf-site .philosophy-hero-photo::after {
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:34%;
  background:linear-gradient(transparent,#0b2d25b8);
  pointer-events:none;
 }
 .leaf-site .philosophy-hero-photo img {
  position:static;
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-position:48% 43%;
  filter:brightness(1.1) saturate(1.04);
 }
 .leaf-site .philosophy-hero-copy {
  grid-row:2;
  display:flex;
  min-height:0;
  padding:28px 24px 34px;
  background:linear-gradient(135deg,#123f35,#0b2d25);
 }
 .leaf-site .philosophy-hero-copy::before {
  inset:-34px -52px -20px -48px;
  background-image:url('assets/leaf-rose-silk-veil-small.webp');
  background-position:center top;
  background-size:145% auto;
  opacity:.22;
 }
 .leaf-site .philosophy-hero .breadcrumb-line {display:none;}
 .leaf-site .philosophy-hero h1 {
  margin:0 0 16px;
  font-size:clamp(2.35rem,11vw,3.45rem);
  line-height:1.06;
 }
 .leaf-site .philosophy-hero-copy>p {
  display:block;
  max-width:31ch;
  margin:0 0 22px;
  font-size:.98rem;
  line-height:1.62;
 }
 .leaf-site .philosophy-hero .kicker {margin-bottom:12px;}
 .leaf-site .philosophy-hero .btn {align-self:flex-start;}
}
