
    :root {
      --cream: #f7f2e9;
      --paper: #fffdf8;
      --ink: #213129;
      --forest: #244536;
      --forest-2: #315844;
      --sage: #7f947b;
      --sage-soft: #dfe6da;
      --sand: #eae2d3;
      --terra: #c86d43;
      --line: rgba(33,49,41,.13);
      --shadow: 0 20px 55px rgba(36,69,54,.13);
      --radius: 28px;
    }

    * { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: "DM Sans", sans-serif;
      color: var(--ink);
      background: var(--cream);
      line-height: 1.6;
      overflow-x: hidden;
    }
    img { display: block; width: 100%; }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    section { scroll-margin-top: 86px; }

    .container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
    .eyebrow {
      text-transform: uppercase;
      letter-spacing: .16em;
      font-size: .76rem;
      font-weight: 700;
      color: var(--terra);
      margin-bottom: 14px;
    }
    h1, h2, h3 { font-family: "Playfair Display", serif; line-height: 1.12; }
    h2 { font-size: clamp(2.5rem, 4.3vw, 4.25rem); font-weight: 500; letter-spacing: -.025em; }
    p { color: rgba(33,49,41,.75); }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 48px;
      padding: 12px 20px;
      border-radius: 999px;
      border: 1px solid var(--forest);
      background: var(--forest);
      color: white;
      font-weight: 700;
      cursor: pointer;
      transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .btn:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(36,69,54,.16); }
    .btn.outline { background: transparent; color: var(--forest); }
    .btn.terra { background: var(--terra); border-color: var(--terra); }
    .btn.light { background: white; border-color: white; color: var(--forest); }
    .text-link { font-weight: 700; color: var(--terra); }

    /* Header */
    .site-header {
      position: sticky;
      top: 0;
      z-index: 50;
      backdrop-filter: blur(16px);
      background: rgba(247,242,233,.91);
      border-bottom: 1px solid var(--line);
    }
    .nav {
      min-height: 78px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 22px;
    }
    .brand {
      display: flex;
      align-items: center;
      gap: 12px;
      color: var(--forest);
      flex-shrink: 0;
    }
    .brand-mark {
      width: 42px;
      height: 42px;
      display: grid;
      place-items: center;
      border: 1px solid var(--forest);
      border-radius: 50%;
      font-size: 1.25rem;
      transform: rotate(12deg);
    }
    .brand-name { font-family: "Playfair Display", serif; font-size: 1.35rem; font-weight: 600; line-height: 1.05; }
    .brand small { display: block; margin-top: 3px; font-size: .59rem; letter-spacing: .31em; text-transform: uppercase; font-family: "DM Sans", sans-serif; }
    .nav-links { display: flex; align-items: center; gap: 23px; font-size: .92rem; }
    .nav-links > a:not(.btn):hover { color: var(--terra); }
    .menu-toggle { display: none; background: transparent; border: 0; color: var(--forest); font-size: 1.5rem; cursor: pointer; }

    /* Hero */
    .hero { padding: 58px 0 72px; }
    .hero-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 52px; align-items: center; }
    .hero h1 {
      font-size: clamp(3.4rem, 6vw, 6.4rem);
      font-weight: 500;
      letter-spacing: -.045em;
      margin-bottom: 24px;
    }
    .hero h1 em { font-weight: 500; }
    .hero-copy { font-size: 1.08rem; max-width: 620px; margin-bottom: 28px; }
    .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
    .hero-note { margin-top: 20px; font-size: .9rem; color: rgba(33,49,41,.61); }
    .hero-photo-wrap { position: relative; }
    .hero-photo {
      height: 690px;
      object-fit: cover;
      object-position: 52% center;
      border-radius: 220px 220px 30px 30px;
      box-shadow: var(--shadow);
    }
    .hero-badge {
      position: absolute;
      left: -26px;
      bottom: 42px;
      background: rgba(255,253,248,.94);
      backdrop-filter: blur(8px);
      border: 1px solid var(--line);
      border-radius: 22px;
      padding: 18px 20px;
      width: 232px;
      box-shadow: var(--shadow);
    }
    .hero-badge strong { display: block; margin-bottom: 3px; color: var(--forest); }
    .hero-badge span { font-size: .85rem; color: rgba(33,49,41,.66); }

    /* Services */
    .support { background: var(--paper); padding: 88px 0; }
    .section-head { max-width: 760px; margin-bottom: 40px; }
    .section-head.center { text-align: center; margin-inline: auto; }
    .section-head p { margin-top: 14px; font-size: 1.02rem; }
    .service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .service-card {
      background: #fffdf9;
      border: 1px solid var(--line);
      border-radius: 24px;
      padding: 28px;
      transition: transform .2s ease, box-shadow .2s ease;
    }
    .service-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
    .service-icon {
      width: 58px; height: 58px; border-radius: 50%;
      display: grid; place-items: center;
      background: var(--sage-soft); color: var(--forest); margin-bottom: 20px;
    }
    .service-icon svg { width: 29px; height: 29px; }
    .service-card h3 { font-size: 1.7rem; margin-bottom: 10px; }
    .service-card p { margin-bottom: 18px; }

    /* Retreat */
    .retreats { padding: 96px 0; background: linear-gradient(135deg, #ece7db, #f8f4ec); position: relative; overflow: hidden; }
    .retreats::before, .retreats::after {
      content: ""; position: absolute; width: 260px; height: 260px; border: 1px solid rgba(36,69,54,.08); border-radius: 50%;
    }
    .retreats::before { left: -150px; top: 70px; }
    .retreats::after { right: -120px; bottom: 30px; }
    .retreat-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 56px; align-items: center; position: relative; z-index: 1; }
    .retreat-copy h2 { margin-bottom: 20px; }
    .retreat-copy > p { max-width: 590px; }
    .retreat-features { display: grid; grid-template-columns: 1fr 1fr; gap: 13px 22px; margin: 28px 0 30px; }
    .retreat-feature { border-top: 1px solid var(--line); padding: 14px 0; }
    .retreat-feature strong { display: block; color: var(--forest); }
    .retreat-feature span { color: rgba(33,49,41,.66); font-size: .91rem; }
    .mountain-art {
      min-height: 550px;
      border-radius: 240px 240px 28px 28px;
      border: 1px solid rgba(36,69,54,.11);
      overflow: hidden;
      background:
        radial-gradient(circle at 50% 22%, rgba(255,251,235,.95) 0 10%, transparent 10.5%),
        linear-gradient(160deg, transparent 0 46%, rgba(94,121,101,.34) 46.4% 59%, transparent 59.4%),
        linear-gradient(200deg, transparent 0 47%, rgba(70,101,82,.36) 47.4% 62%, transparent 62.4%),
        linear-gradient(160deg, transparent 0 61%, rgba(49,88,68,.72) 61.4% 73%, transparent 73.4%),
        linear-gradient(200deg, transparent 0 63%, rgba(36,69,54,.92) 63.4% 78%, transparent 78.4%),
        linear-gradient(#bcc8b7, #768f7c 53%, #315844);
      position: relative;
      box-shadow: var(--shadow);
    }
    .mountain-art::after {
      content: "INDIA • YOUR DESTINATION";
      position: absolute; left: 30px; right: 30px; bottom: 28px;
      text-align: center; letter-spacing: .18em; font-size: .78rem; font-weight: 700; color: rgba(255,255,255,.84);
    }
    .retreat-seal {
      position: absolute; left: 50%; top: 57%; transform: translate(-50%,-50%);
      width: min(76%, 360px); border-radius: 24px;
      display: grid; place-items: center; align-content: center; gap: 7px; text-align: center;
      background: rgba(255,253,248,.91); color: var(--forest);
      border: 1px solid rgba(255,255,255,.72); box-shadow: 0 18px 45px rgba(20,48,36,.18);
      backdrop-filter: blur(8px); padding: 24px 28px;
    }
    .retreat-seal .seal-mark { color: var(--terra); font-size: 1.45rem; line-height: 1; }
    .retreat-seal strong { font-family: "Playfair Display", serif; font-size: 1.32rem; line-height: 1.18; }
    .retreat-seal span:last-child { font-size: .62rem; font-weight: 700; letter-spacing: .12em; line-height: 1.5; text-transform: uppercase; color: rgba(33,49,41,.62); }

    /* Corporate */
    .corporate { background: var(--paper); padding: 96px 0; }
    .corporate-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
    .corporate-copy p { margin: 18px 0 28px; }
    .program-panel { background: var(--sand); padding: 34px; border-radius: var(--radius); }
    .program { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 18px 0; border-bottom: 1px solid var(--line); }
    .program:last-child { border-bottom: 0; }
    .program strong { color: var(--forest); }
    .program small { color: rgba(33,49,41,.64); }
    .program span { flex-shrink: 0; font-size: .86rem; font-weight: 700; color: var(--forest); background: rgba(255,255,255,.55); padding: 6px 10px; border-radius: 999px; }

    /* Private online */
    .private { padding: 96px 0; }
    .private-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 54px; align-items: center; }
    .private-card {
      background: var(--forest); color: white; border-radius: 30px; padding: 42px;
      position: relative; overflow: hidden; min-height: 390px;
    }
    .private-card::after {
      content: "✦"; position: absolute; right: 24px; bottom: -60px; font-size: 13rem; color: rgba(255,255,255,.055); transform: rotate(14deg);
    }
    .private-card h3 { font-size: 2.3rem; max-width: 520px; margin-bottom: 16px; }
    .private-card p { color: rgba(255,255,255,.76); max-width: 520px; margin-bottom: 26px; }
    .private-list { display: grid; gap: 12px; }
    .private-list div { padding: 13px 0; border-top: 1px solid rgba(255,255,255,.15); }
    .private-copy p { margin: 18px 0 26px; }

    /* About */
    .about { background: var(--paper); padding: 96px 0; }
    .about-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: 54px; align-items: center; }
    .about-photo {
      height: 570px;
      object-fit: cover;
      object-position: center 46%;
      border-radius: 30px;
      box-shadow: var(--shadow);
    }
    .about-copy h2 { margin-bottom: 18px; }
    .about-copy > p { margin-bottom: 16px; }
    .cred-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 26px; margin-top: 28px; }
    .cred { padding-top: 15px; border-top: 1px solid var(--line); }
    .cred strong { display: block; color: var(--forest); margin-bottom: 4px; }
    .cred span { color: rgba(33,49,41,.66); font-size: .9rem; }

    /* Why / worldwide */
    .worldwide { padding: 88px 0; background: linear-gradient(180deg, var(--cream), #f1ebdf); }
    .world-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 34px; }
    .world-item { background: rgba(255,253,248,.75); border: 1px solid var(--line); border-radius: 22px; padding: 24px; }
    .world-item strong { display: block; color: var(--forest); margin-bottom: 8px; }
    .world-item p { font-size: .91rem; }

    /* Reviews */
    .reviews { padding: 96px 0; background: var(--paper); }
    .reviews-summary { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-bottom: 34px; }
    .rating-lockup { flex-shrink: 0; text-align: right; }
    .rating-lockup strong { display: block; color: var(--forest); font-family: "Playfair Display", serif; font-size: 2.7rem; line-height: 1; }
    .stars { color: #b76a48; letter-spacing: .14em; margin: 8px 0 3px; }
    .rating-lockup span { color: rgba(33,49,41,.64); font-size: .84rem; }
    .review-carousel { position: relative; padding: 0 58px; }
    .review-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: #fffdf9; color: var(--forest); font-size: 1.15rem; cursor: pointer; box-shadow: 0 10px 28px rgba(33,49,41,.12); }
    .review-arrow:hover { background: var(--forest); color: white; }
    #reviews-prev { left: 0; }
    #reviews-next { right: 0; }
    .review-grid { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(310px, 42%); gap: 20px; overflow-x: auto; padding: 2px; scroll-snap-type: x mandatory; scrollbar-width: none; -ms-overflow-style: none; }
    .review-grid::-webkit-scrollbar { display: none; }
    .review-card { background: #fffdf9; border: 1px solid var(--line); border-radius: 24px; padding: 30px; scroll-snap-align: start; min-height: 220px; }
    .review-card blockquote { color: var(--forest); font-family: "Playfair Display", serif; font-size: 1.42rem; line-height: 1.45; margin: 0 0 24px; }
    .review-card cite { display: block; color: rgba(33,49,41,.68); font-style: normal; font-size: .85rem; }
    .review-tag { display: inline-block; margin-bottom: 18px; color: var(--terra); font-size: .69rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
    .reviews-action { margin-top: 28px; text-align: center; }

    /* FAQ */
    .faq { padding: 96px 0; background: var(--paper); }
    .faq-wrap { display: grid; grid-template-columns: .8fr 1.2fr; gap: 60px; align-items: start; }
    details { border-top: 1px solid var(--line); padding: 18px 0; }
    details:last-child { border-bottom: 1px solid var(--line); }
    summary { cursor: pointer; font-weight: 700; color: var(--forest); list-style: none; display: flex; justify-content: space-between; gap: 20px; }
    summary::after { content: "+"; font-size: 1.3rem; font-weight: 400; }
    details[open] summary::after { content: "−"; }
    details p { margin-top: 12px; padding-right: 40px; }

    /* Contact */
    .contact { padding: 96px 0; background: var(--forest); color: white; }
    .contact .eyebrow { color: #efb093; }
    .contact h2 { margin-bottom: 16px; }
    .contact p { color: rgba(255,255,255,.74); }
    .contact-grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 56px; align-items: start; }
    .contact-links { display: grid; gap: 12px; margin-top: 28px; }
    .contact-link { display: flex; align-items: center; gap: 12px; color: white; font-weight: 700; }
    .contact-link span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.11); }
    .form-card { background: var(--paper); color: var(--ink); border-radius: 28px; padding: 32px; }
    .form-card h3 { font-size: 2rem; margin-bottom: 8px; }
    .form-card > p { color: rgba(33,49,41,.67); margin-bottom: 22px; }
    .field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .field { display: grid; gap: 7px; margin-bottom: 14px; }
    .field label { font-size: .84rem; font-weight: 700; color: var(--forest); }
    .field input, .field select, .field textarea {
      width: 100%; border: 1px solid rgba(33,49,41,.17); background: #fff; color: var(--ink); border-radius: 14px; padding: 13px 14px; outline: none;
    }
    .field input:focus, .field select:focus, .field textarea:focus { border-color: var(--sage); box-shadow: 0 0 0 3px rgba(127,148,123,.14); }
    .field textarea { min-height: 126px; resize: vertical; }
    .form-note { font-size: .78rem; color: rgba(33,49,41,.55); margin-top: 10px; }

    footer { background: #193428; color: rgba(255,255,255,.72); padding: 38px 0 28px; }
    .footer-grid { display: grid; grid-template-columns: 1.35fr .8fr .8fr; gap: 36px; }
    footer .brand { color: white; }
    footer h4 { color: white; margin-bottom: 10px; }
    footer a:hover { color: white; }
    .copyright { border-top: 1px solid rgba(255,255,255,.11); margin-top: 28px; padding-top: 18px; font-size: .82rem; }

    @media (max-width: 980px) {
      .menu-toggle { display: block; }
      .nav-links {
        position: absolute; top: 78px; left: 0; right: 0; background: var(--cream);
        display: none; flex-direction: column; align-items: stretch; padding: 20px 24px 26px; border-bottom: 1px solid var(--line);
      }
      .nav-links.open { display: flex; }
      .nav-links .btn { width: 100%; }
      .hero-grid, .retreat-grid, .corporate-grid, .private-grid, .about-grid, .faq-wrap, .contact-grid { grid-template-columns: 1fr; }
      .hero-photo { height: 600px; }
      .hero-badge { left: 18px; }
      .service-grid { grid-template-columns: 1fr; }
      .world-grid { grid-template-columns: 1fr 1fr; }
      .about-photo { height: 520px; }
      .reviews-summary { align-items: flex-start; }
    }

    @media (max-width: 640px) {
      .container { width: min(100% - 36px, 1180px); }
      .hero { padding-top: 38px; }
      .hero h1 { font-size: clamp(3rem, 16vw, 4.4rem); }
      .hero-photo { height: 470px; border-radius: 130px 130px 24px 24px; }
      .hero-badge { position: static; width: 100%; margin-top: 14px; }
      .retreat-features, .cred-grid, .field-grid, .world-grid { grid-template-columns: 1fr; }
      .reviews-summary { display: block; }
      .rating-lockup { text-align: left; margin-top: 24px; }
      .review-grid { grid-auto-columns: 88%; }
      .review-carousel { padding: 0 44px; }
      .mountain-art { min-height: 400px; border-radius: 160px 160px 24px 24px; }
      .retreat-seal { width: min(78%, 300px); padding: 20px 22px; }
      .program { align-items: flex-start; flex-direction: column; }
      .private-card, .form-card { padding: 28px 22px; }
      .about-photo { height: 430px; }
      .footer-grid { grid-template-columns: 1fr; }
    }
  
/* Shared multi-page additions, preserving the original palette and typography. */
.nav{gap:18px}.nav-links{gap:18px;font-size:.875rem}.nav-links [aria-current=page]{text-decoration:underline;text-underline-offset:7px}.brand small{font-size:.65rem}.eyebrow{font-size:.875rem;color:#a6522e}.text-link{color:#a6522e}.page-intro{padding:70px 0 64px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(3rem,5.5vw,5.5rem);font-weight:500;letter-spacing:-.035em;max-width:880px;margin-bottom:24px}.page-intro h1 em{font-weight:500}.lead{font-size:1.15rem;max-width:760px}.page-intro .hero-actions{margin-top:28px}.intro-grid{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:70px}.intro-photo{height:430px;object-fit:cover;border-radius:180px 180px 24px 24px}.page-section{padding:72px 0}.page-section.paper{background:var(--paper)}.page-section h2{font-size:clamp(2.2rem,4vw,3.7rem)}.two-grid,.three-grid{display:grid;gap:22px}.two-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.three-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-card{padding:30px;border:1px solid var(--line);border-radius:24px;background:var(--paper)}.content-card h3{font-size:1.8rem;font-weight:500;margin-bottom:16px}.content-card p{margin-bottom:18px}.content-card .btn{margin-top:12px}.clean-list{padding-left:20px;margin:18px 0 24px}.clean-list li{margin-bottom:10px;color:rgba(33,49,41,.83)}.meta{font-size:.9rem;color:#52604e;margin:12px 0}.retreat-card .duration{font-family:'Playfair Display',serif;font-size:2.5rem;line-height:1.1;margin-bottom:8px;color:var(--forest)}.retreat-card h3{font-size:1.6rem}.retreat-card{display:flex;flex-direction:column}.retreat-card .card-actions{margin-top:auto}.retreat-card .card-actions a{display:inline-flex}.retreat-card .card-actions .text-link{display:block;margin:14px 0 0}.notice{border-left:3px solid var(--terra);padding:2px 0 2px 22px;max-width:850px;margin-top:30px}.notice p+p{margin-top:10px}.notice a,.prose a,.sources a{color:#944624;text-decoration:underline;text-underline-offset:3px}.itinerary{margin:24px 0;border:1px solid var(--line);border-radius:20px;background:var(--paper);overflow:hidden}.itinerary summary{padding:24px;cursor:pointer;font-size:1.15rem;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:15px}.itinerary summary::after{content:'+';font-size:1.4rem}.itinerary[open] summary::after{content:'−'}.itinerary-body{padding:0 26px 26px}.day{display:grid;grid-template-columns:180px 1fr;gap:26px;padding:26px 0;border-top:1px solid var(--line)}.day h3{font-size:1.35rem}.day ul{list-style:none}.day li{margin:0 0 12px;color:rgba(33,49,41,.8)}.day li strong{color:var(--ink)}.callout{background:var(--sage-soft);border-radius:28px;padding:44px;display:flex;align-items:center;gap:44px;justify-content:space-between}.callout h2{font-size:2.8rem}.callout p{margin-top:18px;max-width:720px}.callout .btn{flex-shrink:0}.prose{max-width:820px}.prose p+p{margin-top:18px}.prose h3{font-size:1.8rem;margin:30px 0 12px}.steps{counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.step:before{counter-increment:step;content:'0' counter(step);display:block;color:#a6522e;font-family:'Playfair Display',serif;font-size:2.5rem;margin-bottom:12px}.step h3{font-size:1.55rem;margin-bottom:12px}.page-section .section-head p{margin-top:18px}.sources{font-size:.9rem;border-top:1px solid var(--line);padding-top:22px;margin-top:32px}.sources a{margin-right:24px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--forest);color:white;padding:12px 20px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #a6522e;outline-offset:5px}.contact .form-note{font-size:.875rem}.homepage-meet{padding:70px 0}.homepage-meet .about-photo{height:380px;object-position:center 50%}.about-photo{object-position:center 50%}.homepage-meet .btn{margin-top:22px}.homepage-meet h2{font-size:clamp(2.2rem,4vw,3.5rem)}.nav-links .btn{padding:10px 16px}.btn.terra{background:#a6522e;border-color:#a6522e}.footer-grid p a:hover{text-decoration:underline}.menu-toggle{width:44px;min-height:44px}.page-section[id]{scroll-margin-top:95px}
@media(max-width:1180px){.menu-toggle{display:block}.nav-links{position:absolute;top:78px;left:0;right:0;background:var(--cream);display:none;flex-direction:column;align-items:stretch;padding:20px 24px 26px;border-bottom:1px solid var(--line);max-height:calc(100dvh - 78px);overflow:auto}.nav-links.open{display:flex}.nav-links a{padding:8px 0}.nav-links .btn{width:100%}}
@media(max-width:800px){.intro-grid{grid-template-columns:1fr;gap:36px}.intro-photo{height:380px;max-width:550px}.three-grid,.two-grid,.steps{grid-template-columns:1fr}.callout{align-items:flex-start;flex-direction:column;gap:22px;padding:30px}.day{grid-template-columns:1fr;gap:16px}.page-section{padding:52px 0}.page-intro{padding:44px 0}.content-card{padding:26px}.page-intro h1{font-size:clamp(2.7rem,10vw,4rem)}.section-head{margin-bottom:28px}.page-section .callout h2{font-size:2.3rem}}
@media(max-width:430px){.brand-name{font-size:1.1rem}.brand-mark{width:36px;height:36px}.nav{gap:10px}.brand{gap:9px}.container{width:calc(100% - 32px)}.itinerary summary{padding:20px}.itinerary-body{padding:0 20px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.corporate-photo-section{padding-top:0}.corporate-photo-wrap{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.corporate-photo-pair{display:grid;grid-template-columns:1fr;gap:14px;height:360px}.corporate-photo-pair img{height:100%!important}.corporate-photo-wrap img{width:100%;height:360px;object-fit:cover;object-position:center 40%;border-radius:26px;box-shadow:var(--shadow)}.studio-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:4px 0 8px}.studio-gallery-card{margin:0;min-width:0}.studio-gallery-card img{display:block;width:100%;height:400px;object-fit:cover;object-position:center;border-radius:24px}.studio-gallery-card:nth-child(1) img{object-position:center 52%}.studio-gallery-card:nth-child(2) img{height:400px;object-position:center center}.studio-gallery-card:nth-child(3) img{object-position:center 45%}.studio-gallery-card figcaption{padding:12px 4px 0;color:var(--forest);font-weight:700}.why-yoga-photo{padding-top:32px}.why-yoga-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.why-yoga-photo-grid img{width:100%;height:380px;object-fit:cover;object-position:center 44%;border-radius:28px}.why-yoga-photo h2{font-size:clamp(2.2rem,4vw,3.4rem)}.retreat-card{padding:0;overflow:hidden}.retreat-card-image{display:block;width:100%;height:220px;object-fit:cover}.retreat-card:nth-child(1) .retreat-card-image{object-position:center 58%}.retreat-card:nth-child(2) .retreat-card-image{object-position:center 52%}.retreat-card:nth-child(3) .retreat-card-image{object-position:center 48%}.retreat-card-body{display:flex;flex-direction:column;flex:1;padding:26px 28px 30px}.retreat-hero-photo{object-position:center 38%}.retreat-scene-images{display:grid;grid-template-rows:1.35fr .65fr;gap:14px;height:430px}.retreat-scene-images img{height:100%;min-height:0}.retreat-scene{padding-top:28px}.retreat-scene-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center}.retreat-scene img{width:100%;height:430px;object-fit:cover;object-position:center 55%;border-radius:28px}.retreat-scene h2{font-size:clamp(2.2rem,4vw,3.5rem)}.retreat-jump{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}.retreat-jump span{font-weight:700;margin-right:8px}.retreat-jump a{display:inline-flex;align-items:center;min-height:42px;padding:9px 16px;border:1px solid var(--line);border-radius:999px;color:var(--forest);background:var(--cream);font-weight:700;transition:background .2s ease,border-color .2s ease,transform .2s ease}.retreat-jump a:hover{background:var(--sage-soft);border-color:var(--terra);transform:translateY(-1px)}.retreat-itinerary{padding-top:58px;padding-bottom:58px}.retreat-itinerary .section-head{max-width:820px;margin-bottom:26px}.itinerary{box-shadow:0 8px 24px rgba(36,69,54,.05);transition:box-shadow .2s ease}.itinerary[open]{box-shadow:0 14px 32px rgba(36,69,54,.1)}.itinerary summary{background:rgba(247,242,233,.72);align-items:center}.itinerary summary .summary-hint{font-size:.8rem;font-weight:500;color:#52604e;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.itinerary[open] summary .summary-hint{color:#a6522e}.itinerary-body>.meta{max-width:720px;padding-top:2px}.retreat-itinerary+.retreat-itinerary{border-top:1px solid var(--line)}@media(max-width:900px){.retreat-card-image{height:240px}.studio-gallery{grid-template-columns:1fr 1fr}.studio-gallery-card img{height:340px}.studio-gallery-card:nth-child(2) img{height:400px}}@media(max-width:600px){.why-yoga-photo-grid{grid-template-columns:1fr;gap:26px}.why-yoga-photo-grid img{height:300px}.corporate-photo-pair{grid-template-columns:1fr;height:auto}.corporate-photo-pair img{height:260px!important}.retreat-card-image{height:220px}.retreat-scene-images{height:auto;grid-template-rows:none;grid-template-columns:1fr}.retreat-scene-images img{height:280px}.retreat-scene-grid{grid-template-columns:1fr;gap:26px}.retreat-scene img{height:330px}.corporate-photo-wrap{grid-template-columns:1fr;gap:24px}.corporate-photo-wrap img{height:300px}.studio-gallery{grid-template-columns:1fr;gap:24px}.studio-gallery-card img{height:320px}.studio-gallery-card:nth-child(2) img{height:380px}.retreat-jump{align-items:flex-start;flex-direction:column;gap:10px}.retreat-jump span{margin:0 0 2px}.retreat-jump a{width:100%;justify-content:center}.itinerary summary .summary-hint{font-size:.68rem}.retreat-itinerary{padding-top:46px;padding-bottom:46px}}.contact-title{font-size:clamp(2.8rem,5vw,4.3rem);font-weight:500;line-height:1.1}
