

  *,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
  :root{
    --forest:      #163126;
    --forest-light:#1e3d30;
    --forest-muted:#2a5040;
    --ivory:       #f9f5ee;
    --cream:       #f0e9d8;
    --beige:       #F4EFE5;
    --warm-white:  #faf8f3;
    --gold:        #c4a96b;
    --gold-light:  #d4bc89;
    --gold-muted:  #a8904f;
    --text-dark:   #1a1f16;
    --text-muted:  #5a5a50;
    --text-light:  #8a8a7a;
    --matte-black: #0d0d0b;
  }
  html{scroll-behavior:smooth;}
  body{font-family:'Jost',sans-serif;background:var(--warm-white);color:var(--text-dark);overflow-x:hidden;}
  h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;font-weight:400;}

  /* ══════════════════════════════════════════════
     NAVBAR
  ══════════════════════════════════════════════ */
  nav{
    position:fixed;top:0;left:0;right:0;z-index:100;
    background:transparent;
    overflow:visible;
    transition:background 0.55s ease, box-shadow 0.45s ease;
  }
  nav.scrolled{
    background:rgba(244,239,229,0.97);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    box-shadow:0 1px 0 rgba(196,169,107,0.15);
  }
  .nav-inner{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    padding:1.2rem 3rem;
    gap:2rem;
    overflow:visible;
  }

  /* Navbar logo: true RGBA transparent PNG — no blend modes, no filters */
  .nav-brand{text-decoration:none;display:flex;align-items:center;justify-content:flex-start;overflow:visible;}
  .nav-logo-img{
    display:block;
    height:64px;
    width:auto;
    object-fit:contain;
    object-position:center;
    overflow:visible;
    transition:opacity 0.3s;
  }
  .nav-brand:hover .nav-logo-img{opacity:0.75;}

  .nav-center{display:flex;flex-direction:column;align-items:center;gap:0.3rem;}
  .nav-links{display:flex;gap:3rem;list-style:none;align-items:center;}
  .nav-links a{
    font-family:'Jost',sans-serif;font-weight:300;font-size:0.68rem;
    letter-spacing:0.22em;text-transform:uppercase;
    color:var(--forest);text-decoration:none;opacity:0.78;
    transition:opacity 0.3s,color 0.3s;
  }
  .nav-links a:hover{opacity:1;color:var(--gold-muted);}
  .nav-sublabel{display:flex;align-items:center;gap:0.9rem;}
  .nav-sublabel-rule{display:block;width:26px;height:1px;background:rgba(196,169,107,0.5);}
  .nav-sublabel-text{
    font-family:'Jost',sans-serif;font-weight:200;font-size:0.5rem;
    letter-spacing:0.52em;text-transform:uppercase;color:var(--gold-muted);
  }
  .nav-right{display:flex;justify-content:flex-end;}
  .nav-cta{
    font-family:'Jost',sans-serif;font-weight:400;font-size:0.6rem;
    letter-spacing:0.22em;text-transform:uppercase;
    color:#fff;background:var(--forest);border:none;
    padding:0.9rem 1.8rem;cursor:pointer;white-space:nowrap;
    transition:background 0.3s,letter-spacing 0.4s;
  }
  .nav-cta:hover{background:var(--forest-light);letter-spacing:0.28em;}

  /* ══════════════════════════════════════════════
     HERO
  ══════════════════════════════════════════════ */
  .hero{
    min-height:100vh;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    /* overflow:visible so logo is never clipped at edges */
    overflow:visible;
    background:#F4EFE5;
  }
  /* Palm shadow contained separately so hero can be overflow:visible */
  .hero-bg-clip {
    position:absolute;
    inset:0;
    overflow:hidden;
    pointer-events:none;
    z-index:0;
  }

  /* Palm shadow */
  .hero-palm{
    position:absolute;left:-3%;top:-8%;width:40%;height:118%;
    pointer-events:none;z-index:0;
    background:
      radial-gradient(ellipse  9% 75% at 36% 58%, rgba(22,49,38,0.13) 0%, transparent 100%),
      radial-gradient(ellipse 62% 22% at 68% 13%, rgba(22,49,38,0.10) 0%, transparent 100%),
      radial-gradient(ellipse 72% 18% at 78% 28%, rgba(22,49,38,0.09) 0%, transparent 100%),
      radial-gradient(ellipse 76% 17% at 82% 43%, rgba(22,49,38,0.08) 0%, transparent 100%),
      radial-gradient(ellipse 70% 17% at 80% 57%, rgba(22,49,38,0.07) 0%, transparent 100%),
      radial-gradient(ellipse 64% 18% at 74% 70%, rgba(22,49,38,0.06) 0%, transparent 100%),
      radial-gradient(ellipse 52% 22% at 62% 83%, rgba(22,49,38,0.05) 0%, transparent 100%);
    filter:blur(22px);
  }

  /*
   * WATERMARK — genuine RGBA transparent PNG at 5% opacity.
   * True alpha: no blend modes, no filters.
   * The forest green mark shows softly through the low opacity.
   */
  .hero-watermark{
    position:absolute;
    top:50%;left:50%;
    transform:translate(-50%,-50%);
    width:min(86vw,880px);
    height:auto;
    object-fit:contain;
    object-position:center;
    overflow:visible;
    opacity:0.045;
    pointer-events:none;
    z-index:1;
  }

  /* Hero content */
  .hero-content{
    position:relative;z-index:2;
    text-align:center;
    display:flex;flex-direction:column;align-items:center;
    padding:9rem 2rem 8rem;
    width:100%;max-width:1000px;
    overflow:visible;
  }

  /*
   * HERO LOGO — genuine RGBA transparent PNG.
   * No blend mode, no filter, no container.
   * Forest green mark floats directly on the beige background.
   */
  .hero-logo-wrap{
    margin-bottom:2.2rem;
    opacity:0;
    overflow:visible;
    display:flex;
    align-items:center;
    justify-content:center;
    animation:fadeUp 1.2s cubic-bezier(0.16,1,0.3,1) 0.15s forwards;
  }
  .hero-logo-img{
    display:block;
    height:172px;
    width:auto;
    object-fit:contain;
    object-position:center;
    overflow:visible;
    margin:0 auto;
  }

  /* Headline */
  .hero-title{
    display:block;opacity:0;
    animation:fadeUp 1.4s cubic-bezier(0.16,1,0.3,1) 0.32s forwards;
  }
  .hero-title-line1{
    display:block;
    font-family:'Cormorant Garamond',serif;font-weight:400;
    font-size:clamp(4rem,9vw,9.5rem);
    line-height:0.95;color:var(--forest);letter-spacing:-0.01em;
  }
  .hero-title-line2{
    display:block;
    font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;
    font-size:clamp(4rem,9vw,9.5rem);
    line-height:0.95;color:var(--forest);letter-spacing:-0.01em;
  }
  .hero-divider-group{
    display:flex;align-items:center;justify-content:center;
    width:200px;margin:2.8rem auto 2.5rem;
    opacity:0;animation:fadeUp 1.4s cubic-bezier(0.16,1,0.3,1) 0.5s forwards;
  }
  .hero-divider-rule{flex:1;height:1px;background:var(--gold-muted);opacity:0.5;}
  .hero-divider-diamond{
    width:6px;height:6px;background:var(--gold-muted);opacity:0.62;
    transform:rotate(45deg);margin:0 0.7rem;flex-shrink:0;
  }
  .hero-subtitle{
    font-family:'Jost',sans-serif;font-weight:300;
    font-size:0.86rem;letter-spacing:0.13em;
    color:var(--text-muted);line-height:2.0;
    opacity:0;animation:fadeUp 1.4s cubic-bezier(0.16,1,0.3,1) 0.58s forwards;
  }
  .hero-actions{
    display:flex;align-items:center;justify-content:center;
    gap:3.5rem;margin-top:3.2rem;flex-wrap:wrap;
    opacity:0;animation:fadeUp 1.4s cubic-bezier(0.16,1,0.3,1) 0.74s forwards;
  }
  .btn-primary{
    font-family:'Jost',sans-serif;font-weight:400;font-size:0.6rem;
    letter-spacing:0.26em;text-transform:uppercase;
    color:#fff;background:var(--forest);border:none;
    padding:1.15rem 2.8rem;cursor:pointer;
    transition:background 0.4s,letter-spacing 0.4s cubic-bezier(0.16,1,0.3,1);
    text-decoration:none;display:inline-block;
  }
  .btn-primary:hover{background:var(--forest-light);letter-spacing:0.32em;}
  .btn-text-link{
    font-family:'Jost',sans-serif;font-weight:300;font-size:0.6rem;
    letter-spacing:0.26em;text-transform:uppercase;
    color:var(--text-muted);text-decoration:none;
    display:inline-flex;align-items:center;gap:0.9rem;
    background:none;border:none;cursor:pointer;transition:color 0.3s;
  }
  .btn-text-link::after{
    content:'';display:block;width:26px;height:1px;background:currentColor;
    transition:width 0.45s cubic-bezier(0.16,1,0.3,1);
  }
  .btn-text-link:hover{color:var(--forest);}
  .btn-text-link:hover::after{width:46px;}
  .btn-ghost{
    font-family:'Jost',sans-serif;font-weight:300;font-size:0.6rem;
    letter-spacing:0.22em;text-transform:uppercase;color:var(--text-muted);
    background:transparent;border:1px solid rgba(22,49,38,0.2);
    padding:1.15rem 2.8rem;cursor:pointer;transition:all 0.3s;
    text-decoration:none;display:inline-block;
  }
  .btn-ghost:hover{border-color:var(--forest);color:var(--forest);}
  .hero-area-tag{
    font-family:'Jost',sans-serif;font-weight:200;font-size:0.54rem;
    letter-spacing:0.5em;text-transform:uppercase;
    color:rgba(90,90,80,0.42);margin-top:4.5rem;
    opacity:0;animation:fadeUp 1.4s cubic-bezier(0.16,1,0.3,1) 1.02s forwards;
  }
  .hero-scroll-cue{
    position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);
    z-index:3;opacity:0;animation:fadeIn 2s ease 2.2s forwards;
  }
  .hero-scroll-thread{
    width:1px;height:52px;
    background:linear-gradient(to bottom,rgba(196,169,107,0.5),transparent);
    transform-origin:top;animation:threadDrop 3.2s ease-in-out infinite;
  }
  @keyframes threadDrop{0%{transform:scaleY(0);opacity:0;}20%{opacity:1;}100%{transform:scaleY(1);opacity:0;}}
  @keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
  @keyframes fadeUp{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}

  section{position:relative;}
  .section-eyebrow{font-family:'Jost',sans-serif;font-weight:200;font-size:0.65rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold-muted);margin-bottom:1rem;}
  .section-title{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(2.2rem,5vw,3.8rem);color:var(--forest);line-height:1.15;margin-bottom:1.5rem;}
  .section-body{font-family:'Jost',sans-serif;font-weight:300;font-size:0.88rem;letter-spacing:0.04em;line-height:1.95;color:var(--text-muted);max-width:540px;}
  .gold-divider{width:36px;height:1px;background:rgba(196,169,107,0.35);margin:0 auto 2rem;}
  .reveal{opacity:0;transform:translateY(28px);transition:opacity 0.9s ease,transform 0.9s ease;}
  .reveal.visible{opacity:1;transform:translateY(0);}

  @media(max-width:900px){
    .nav-inner{grid-template-columns:auto auto;padding:1rem 1.5rem;}
    .nav-center{display:none;}
    .nav-right{justify-content:flex-end;}
    .nav-cta{padding:0.8rem 1.2rem;font-size:0.55rem;}
    .nav-logo-img{height:42px;}
    .hero-content{padding:8rem 1.5rem 6rem;}
    .hero-logo-img{height:118px;}
    .hero-title-line1,.hero-title-line2{font-size:clamp(3.2rem,13vw,6rem);}
    .hero-actions{gap:2.5rem;}
    .hero-palm{width:55%;filter:blur(24px);}
    .hero-watermark{width:92vw;}
  }


  /* ══════════════════════════════════════════════
     GLOBAL LOGO RENDERING — prevents all cropping
  ══════════════════════════════════════════════ */
  .logo-img,
  .nav-logo-img,
  .hero-logo-img,
  .hero-watermark,
  .cta-logo,
  .footer-logo {
    display: block;
    width: auto;
    object-fit: contain;
    object-position: center;
    overflow: visible;
  }

  .logo-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    width: auto;
    height: auto;
    min-width: fit-content;
    min-height: fit-content;
  }

  /* Every element in the logo chain must not clip */
  nav,
  .nav-inner,
  .nav-brand,
  .hero-content,
  .hero-logo-wrap,
  .cta-inner,
  footer,
  .footer-inner,
  .footer-brand {
    overflow: visible !important;
  }



  /* ══════════════════════════════════════════════════
     SERVICES — ATELIER
  ══════════════════════════════════════════════════ */
  .services-atelier {
    background: var(--warm-white);
    padding: 8rem 0;
  }

  .svc-intro {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 7rem;
    padding: 0 5rem;
  }

  .section-title-lg {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: clamp(2.6rem, 5.5vw, 4.2rem);
    color: var(--forest);
    line-height: 1.15;
    margin-bottom: 1.4rem;
  }
  .section-title-lg em { font-style: italic; }

  .svc-intro-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.9rem;
    letter-spacing: 0.06em;
    line-height: 1.9;
    color: var(--text-muted);
    max-width: 500px;
    margin: 0 auto;
  }

  /* Category */
  .svc-category {
    padding: 5rem 0;
    border-top: 1px solid rgba(196,169,107,0.15);
  }

  .svc-category-inner {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 5rem;
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 0 7rem;
    align-items: start;
  }

  .svc-cat-header {
    position: sticky;
    top: 8rem;
  }

  .svc-cat-eyebrow {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.6rem;
    letter-spacing: 0.42em;
    text-transform: uppercase;
    color: var(--gold-muted);
    margin-bottom: 0.7rem;
  }

  .svc-cat-title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: clamp(2rem, 4vw, 3rem);
    color: var(--forest);
    line-height: 1.15;
    margin-bottom: 2rem;
  }

  .svc-cat-rule {
    width: 32px;
    height: 1px;
    background: rgba(196,169,107,0.4);
  }

  /* Service list */
  .svc-list {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .svc-item {
    padding: 2.2rem 0;
    border-bottom: 1px solid rgba(30,51,37,0.06);
    transition: padding-left 0.4s cubic-bezier(0.16,1,0.3,1);
  }
  .svc-item:last-child { border-bottom: none; }
  .svc-item:hover { padding-left: 0.6rem; }

  .svc-name {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.3rem;
    color: var(--forest);
    margin-bottom: 0.55rem;
    letter-spacing: 0.01em;
  }

  .svc-desc {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.82rem;
    letter-spacing: 0.05em;
    line-height: 1.85;
    color: var(--text-muted);
    max-width: 520px;
  }

  /* Enhancements */
  .svc-enhancements {
    padding: 5rem 0;
    text-align: center;
    border-top: 1px solid rgba(196,169,107,0.15);
    max-width: 1100px;
    margin: 0 auto;
    padding: 5rem 5rem;
  }

  .svc-enh-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
  }
  .svc-enh-divider span:not(.svc-enh-label) {
    flex: 1;
    max-width: 120px;
    height: 1px;
    background: rgba(196,169,107,0.35);
  }
  .svc-enh-label {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.6rem;
    letter-spacing: 0.5em;
    text-transform: uppercase;
    color: var(--gold-muted);
  }

  .svc-list--center { align-items: center; }
  .svc-list--center .svc-item { text-align: center; border: none; padding: 0; }
  .svc-list--center .svc-item:hover { padding-left: 0; }
  .svc-list--center .svc-desc { margin: 0 auto; }

  /* ══════════════════════════════════════════════════
     EXPERIENCE
  ══════════════════════════════════════════════════ */
  .experience {
    background: var(--forest);
    padding: 8rem 4rem;
  }

  .experience-inner {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6rem;
    align-items: start;
  }

  .experience-text .section-eyebrow { color: rgba(196,169,107,0.65); }
  .experience-text .section-title { color: var(--ivory); }
  .experience-text .section-body { color: rgba(235,227,211,0.72); }

  .experience-pillars {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem 2.5rem;
  }

  .pillar { }

  .pillar-icon {
    font-size: 0.65rem;
    color: var(--gold-muted);
    margin-bottom: 0.9rem;
    letter-spacing: 0.1em;
  }

  .pillar-title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.1rem;
    color: var(--ivory);
    margin-bottom: 0.6rem;
    letter-spacing: 0.02em;
  }

  .pillar-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.78rem;
    letter-spacing: 0.05em;
    line-height: 1.85;
    color: rgba(235,227,211,0.6);
  }

  /* ══════════════════════════════════════════════════
     ABOUT
  ══════════════════════════════════════════════════ */
  .about-section {
    background: var(--beige);
    padding: 8rem 4rem;
  }

  .about-inner {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 6rem;
    align-items: center;
  }

  .about-logo {
    display: block;
    width: 200px;
    opacity: 0.78;
    mix-blend-mode: multiply;
  }

  .about-rule {
    width: 40px;
    height: 1px;
    background: rgba(196,169,107,0.4);
    margin: 2.5rem 0 1.5rem;
  }

  .about-tagline {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-weight: 400;
    font-size: 1.15rem;
    color: var(--gold-muted);
    letter-spacing: 0.04em;
  }

  /* ══════════════════════════════════════════════════
     ATELIER POLICIES
  ══════════════════════════════════════════════════ */
  .atelier-policies {
    background: var(--warm-white);
    padding: 8rem 4rem;
  }

  .policies-inner {
    max-width: 900px;
    margin: 0 auto;
  }

  .policies-header {
    text-align: center;
    margin-bottom: 5rem;
  }

  .policies-intro {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.88rem;
    letter-spacing: 0.05em;
    line-height: 1.9;
    color: var(--text-muted);
    max-width: 520px;
    margin: 0 auto;
  }

  .policies-grid {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .policy-item {
    display: grid;
    grid-template-columns: 24px 1fr;
    gap: 0 2rem;
    padding: 2.5rem 0;
    border-bottom: 1px solid rgba(30,51,37,0.07);
    align-items: start;
  }
  .policy-item:last-child { border-bottom: none; }

  .policy-diamond {
    font-size: 0.6rem;
    color: rgba(196,169,107,0.5);
    padding-top: 0.25rem;
    letter-spacing: 0.05em;
  }

  .policy-title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.15rem;
    color: var(--forest);
    margin-bottom: 0.5rem;
  }

  .policy-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.83rem;
    letter-spacing: 0.04em;
    line-height: 1.85;
    color: var(--text-muted);
  }

  /* ══════════════════════════════════════════════════
     SERVICE AREAS
  ══════════════════════════════════════════════════ */
  .service-areas {
    background: var(--beige);
    padding: 7rem 4rem;
    text-align: center;
  }

  .areas-inner {
    max-width: 780px;
    margin: 0 auto;
  }

  .areas-title {
    font-size: clamp(1.8rem, 4vw, 3rem);
    margin-bottom: 1.5rem;
  }

  .areas-dot {
    color: var(--gold-muted);
    margin: 0 0.3em;
    font-style: normal;
  }

  .areas-tagline {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-weight: 400;
    font-size: 1.1rem;
    color: var(--gold-muted);
    margin-bottom: 2rem;
  }

  .areas-rule {
    width: 36px;
    height: 1px;
    background: rgba(196,169,107,0.35);
    margin: 0 auto 2rem;
  }

  .areas-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.86rem;
    letter-spacing: 0.05em;
    line-height: 1.9;
    color: var(--text-muted);
  }

  /* ══════════════════════════════════════════════════
     CTA
  ══════════════════════════════════════════════════ */
  .cta-section {
    background: var(--forest);
    padding: 10rem 4rem;
    text-align: center;
    position: relative;
    overflow: visible;
  }

  .cta-inner {
    max-width: 680px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
  }

  .cta-logo {
    display: block;
    height: 90px;
    width: auto;
    object-fit: contain;
    overflow: visible;
    margin: 0 auto 3rem;
    filter: brightness(0) invert(1);
    opacity: 0.45;
  }

  .cta-headline {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: clamp(2.4rem, 5vw, 3.8rem);
    color: var(--ivory);
    line-height: 1.15;
    margin-bottom: 0;
  }
  .cta-headline em { font-style: italic; }

  .cta-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.86rem;
    letter-spacing: 0.06em;
    line-height: 1.9;
    color: rgba(235,227,211,0.65);
    max-width: 480px;
    margin: 0 auto 3.5rem;
  }

  .cta-actions { display: flex; justify-content: center; }

  .btn-primary--ivory {
    background: transparent !important;
    border: 1px solid rgba(235,227,211,0.35) !important;
    color: var(--ivory) !important;
    letter-spacing: 0.3em !important;
  }
  .btn-primary--ivory:hover {
    background: rgba(235,227,211,0.08) !important;
    border-color: rgba(196,169,107,0.5) !important;
    letter-spacing: 0.36em !important;
  }

  /* ══════════════════════════════════════════════════
     FOOTER
  ══════════════════════════════════════════════════ */
  footer {
    background: var(--matte-black);
    padding: 5rem 4rem;
  }

  .footer-inner {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 160px 1fr 220px;
    gap: 3rem;
    align-items: center;
  }

  .footer-logo {
    display: block;
    height: 90px;
    width: auto;
    object-fit: contain;
    overflow: visible;
    filter: brightness(0) invert(1);
    opacity: 0.45;
  }

  .footer-copy { text-align: center; }

  .footer-tagline {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 1rem;
    color: rgba(235,227,211,0.55);
    margin-bottom: 0.6rem;
  }

  .footer-regions {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.6rem;
    letter-spacing: 0.35em;
    text-transform: uppercase;
    color: rgba(196,169,107,0.45);
    margin-bottom: 1rem;
  }

  .footer-legal {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.58rem;
    letter-spacing: 0.12em;
    color: rgba(235,227,211,0.25);
  }

  .footer-contact { text-align: right; }

  .footer-contact-label {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.6rem;
    letter-spacing: 0.35em;
    text-transform: uppercase;
    color: rgba(196,169,107,0.45);
    margin-bottom: 0.8rem;
  }

  .footer-link {
    display: block;
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    color: rgba(235,227,211,0.45);
    text-decoration: none;
    transition: color 0.3s;
    margin-bottom: 0.4rem;
  }
  .footer-link:hover { color: rgba(235,227,211,0.75); }

  .footer-link--phone {
    font-size: 0.65rem;
    color: rgba(196,169,107,0.45);
  }
  .footer-link--phone:hover { color: rgba(196,169,107,0.75); }

  /* ══════════════════════════════════════════════════
     RESPONSIVE
  ══════════════════════════════════════════════════ */
  @media(max-width:900px) {
    .svc-category { padding: 4rem 0; }
    .svc-category-inner {
      grid-template-columns: 1fr;
      gap: 2.5rem 0;
      padding: 0 1.5rem;
    }
    .svc-cat-header { position: static; }
    .experience-inner { grid-template-columns: 1fr; gap: 3.5rem; }
    .experience-pillars { grid-template-columns: 1fr; gap: 2rem; }
    .about-inner { grid-template-columns: 1fr; gap: 3rem; }
    .about-aside { display: none; }
    .footer-inner { grid-template-columns: 1fr; text-align: center; gap: 2rem; }
    .footer-logo { margin: 0 auto; }
    .footer-contact { text-align: center; }
    .svc-enhancements { padding: 4rem 1.5rem; }
    .atelier-policies { padding: 6rem 1.5rem; }
    .service-areas { padding: 5rem 1.5rem; }
    .cta-section { padding: 7rem 1.5rem; }
    .about-section, .services-atelier, .experience { padding-left: 1.5rem; padding-right: 1.5rem; }
  }


  /* ══════════════════════════════════════════════════
     OUR PHILOSOPHY
  ══════════════════════════════════════════════════ */
  .philosophy {
    background: var(--warm-white);
    padding: 9rem 4rem;
    text-align: center;
    border-top: 1px solid rgba(196,169,107,0.12);
  }

  .philosophy-inner {
    max-width: 700px;
    margin: 0 auto;
  }

  .philosophy-rule-top {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.4rem;
    margin-bottom: 4rem;
  }
  .philosophy-rule-top span:not(.philosophy-lozenge) {
    flex: 1;
    max-width: 80px;
    height: 1px;
    background: rgba(196,169,107,0.3);
  }
  .philosophy-lozenge {
    width: 5px;
    height: 5px;
    background: rgba(196,169,107,0.45);
    transform: rotate(45deg);
    flex-shrink: 0;
  }

  .philosophy-lead {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(1.5rem, 3.2vw, 2.1rem);
    color: var(--forest);
    line-height: 1.55;
    letter-spacing: 0.01em;
    margin-bottom: 3rem;
  }

  .philosophy-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.86rem;
    letter-spacing: 0.06em;
    line-height: 2.0;
    color: var(--text-muted);
    margin-bottom: 1.6rem;
  }
  .philosophy-body:last-of-type { margin-bottom: 0; }

  .philosophy-rule-bottom {
    margin: 3.5rem auto 0;
    width: 36px;
    height: 1px;
    background: rgba(196,169,107,0.3);
  }

  /* ══════════════════════════════════════════════════
     THE ATELIER STANDARD
  ══════════════════════════════════════════════════ */
  .atelier-standard {
    background: var(--beige);
    padding: 7rem 4rem;
    border-top: 1px solid rgba(196,169,107,0.12);
  }

  .standard-inner {
    max-width: 1000px;
    margin: 0 auto;
  }

  .standard-header {
    text-align: center;
    margin-bottom: 4.5rem;
  }

  .standard-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2.5rem 3rem;
  }

  .standard-item {
    border-left: 1px solid rgba(196,169,107,0.25);
    padding-left: 1.4rem;
  }

  .standard-mark {
    display: block;
    width: 16px;
    height: 1px;
    background: rgba(196,169,107,0.5);
    margin-bottom: 1rem;
  }

  .standard-text {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    line-height: 1.7;
    color: var(--text-muted);
  }

  @media(max-width:900px) {
    .standard-grid { grid-template-columns: repeat(2,1fr); gap: 2rem; }
    .philosophy { padding: 6rem 1.5rem; }
    .atelier-standard { padding: 5rem 1.5rem; }
  }


  /* ══════════════════════════════════════════════════
     FOUNDER PORTRAIT — editorial presence section
  ══════════════════════════════════════════════════ */
  .founder {
    background: var(--warm-white);
    padding: 9rem 4rem;
    border-top: 1px solid rgba(196,169,107,0.1);
  }

  .founder-inner {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 460px;
    gap: 0 8rem;
    align-items: center;
  }

  .founder-text { }

  .founder-quote {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(1.55rem, 3vw, 2.1rem);
    color: var(--forest);
    line-height: 1.55;
    letter-spacing: 0.01em;
    margin-bottom: 2.8rem;
  }

  .founder-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.86rem;
    letter-spacing: 0.06em;
    line-height: 2.0;
    color: var(--text-muted);
    margin-bottom: 1.5rem;
    max-width: 480px;
  }

  .founder-sig-rule {
    width: 32px;
    height: 1px;
    background: rgba(196,169,107,0.38);
    margin: 2.2rem 0 1.2rem;
  }

  .founder-sig {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-weight: 400;
    font-size: 1rem;
    color: var(--gold-muted);
    letter-spacing: 0.08em;
  }

  /* Portrait — breathes freely, no container */
  .founder-portrait-wrap {
    position: relative;
    align-self: stretch;
    display: flex;
    align-items: flex-end;
  }

  .founder-portrait {
    display: block;
    width: 100%;
    height: auto;
    /* Slight upward crop: show from chin area, let image breathe at top */
    object-fit: cover;
    object-position: center 15%;
    /* Tall editorial format */
    max-height: 680px;
    /* CSS editorial filter — warm, soft, cinematic */
    filter: contrast(0.93) saturate(0.88) brightness(1.02) sepia(0.04);
    /* Gentle fade at bottom edge — merges into background */
    -webkit-mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
            mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
  }

  @media(max-width:900px) {
    .founder-inner {
      grid-template-columns: 1fr;
      gap: 4rem;
    }
    .founder-portrait-wrap {
      order: -1; /* portrait first on mobile */
      max-height: 460px;
      overflow: hidden;
    }
    .founder-portrait {
      max-height: 460px;
    }
    .founder { padding: 6rem 1.5rem; }
    .founder-body { max-width: 100%; }
  }


  .founder-credentials { margin-top: 2.8rem; }

  .founder-cred-rule {
    width: 28px;
    height: 1px;
    background: rgba(196,169,107,0.3);
    margin-bottom: 1.5rem;
  }

  .founder-cred-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .founder-cred-list li {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.68rem;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: rgba(90,90,80,0.52);
  }


  .founder-role {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.62rem;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: rgba(90,90,80,0.42);
    margin-top: 0.35rem;
  }


  /* ── Hero signature line ── */
  .hero-signature {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-weight: 300;
    font-size: clamp(0.95rem, 2vw, 1.15rem);
    letter-spacing: 0.18em;
    color: rgba(30,51,37,0.48);
    margin-top: 2.8rem;
    opacity: 0;
    animation: fadeUp 1.6s cubic-bezier(0.16,1,0.3,1) 1.1s forwards;
  }

  /* ── Softer global transitions ── */
  .svc-item { transition: padding-left 0.55s cubic-bezier(0.16,1,0.3,1); }
  .btn-primary { transition: background 0.5s ease, letter-spacing 0.55s cubic-bezier(0.16,1,0.3,1); }
  .btn-text-link::after { transition: width 0.55s cubic-bezier(0.16,1,0.3,1); }
  .nav-links a { transition: opacity 0.4s ease, color 0.4s ease; }
  .reveal { transition: opacity 1.1s ease, transform 1.1s cubic-bezier(0.16,1,0.3,1); }


  /* ══════════════════════════════════════════════════
     PRIVATE BOOKING INQUIRY
  ══════════════════════════════════════════════════ */
  .booking-inquiry {
    background: var(--warm-white);
    padding: 9rem 4rem;
    border-top: 1px solid rgba(196,169,107,0.12);
  }

  .booking-inner {
    max-width: 720px;
    margin: 0 auto;
  }

  .booking-header {
    text-align: center;
    margin-bottom: 4.5rem;
  }

  .booking-header .section-eyebrow { margin-bottom: 0.8rem; }

  .booking-intro {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.86rem;
    letter-spacing: 0.06em;
    line-height: 1.9;
    color: var(--text-muted);
    max-width: 480px;
    margin: 1.2rem auto 0;
  }

  /* Form */
  .booking-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.4rem 3rem;
  }

  .booking-field {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .booking-field--full {
    grid-column: 1 / -1;
  }

  .booking-label {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.6rem;
    letter-spacing: 0.38em;
    text-transform: uppercase;
    color: var(--gold-muted);
  }

  .booking-input,
  .booking-select,
  .booking-textarea {
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(30,51,37,0.18);
    padding: 0.7rem 0;
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.84rem;
    letter-spacing: 0.05em;
    color: var(--forest);
    outline: none;
    border-radius: 0;
    transition: border-color 0.35s ease;
    width: 100%;
  }

  .booking-input::placeholder,
  .booking-textarea::placeholder {
    color: rgba(30,51,37,0.28);
    font-style: italic;
  }

  .booking-input:focus,
  .booking-select:focus,
  .booking-textarea:focus {
    border-bottom-color: rgba(196,169,107,0.6);
  }

  /* ── Custom service selector ─────────────────── */
  .svc-selector {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  .svc-selector-group {}

  .svc-selector-group-label {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.58rem;
    letter-spacing: 0.42em;
    text-transform: uppercase;
    color: rgba(196,169,107,0.65);
    margin-bottom: 0.9rem;
    display: block;
  }

  .svc-selector-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
  }

  .svc-pill {
    display: inline-block;
    cursor: pointer;
    padding: 0.55rem 1.2rem;
    border: 1px solid rgba(30,51,37,0.13);
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.74rem;
    letter-spacing: 0.09em;
    color: rgba(30,51,37,0.55);
    background: transparent;
    transition:
      border-color 0.35s ease,
      color 0.35s ease,
      background 0.35s ease;
    user-select: none;
    -webkit-user-select: none;
  }

  .svc-pill:hover {
    border-color: rgba(196,169,107,0.4);
    color: var(--forest);
  }

  .svc-pill.selected {
    border-color: rgba(196,169,107,0.65);
    color: var(--forest);
    background: rgba(196,169,107,0.07);
  }

  /* Hidden real input that carries the value */
  #bf-service { display: none; }

  /* Time select — keep native but style it cleanly */
  .booking-select-wrap {
    position: relative;
  }

  .booking-select-wrap::after {
    content: '';
    position: absolute;
    right: 0.2rem;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 5px;
    height: 5px;
    border-right: 1px solid rgba(196,169,107,0.45);
    border-bottom: 1px solid rgba(196,169,107,0.45);
    pointer-events: none;
  }

  .booking-select {
    cursor: pointer;
    padding-right: 1.4rem;
    color: var(--forest);
    background: transparent;
    -webkit-appearance: none;
    appearance: none;
  }

  .booking-select option {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    color: var(--forest);
    background: var(--warm-white);
  }

  .booking-textarea {
    resize: none;
    min-height: 80px;
    border: none;
    border-bottom: 1px solid rgba(30,51,37,0.18);
    padding-top: 0.7rem;
  }

  /* Submit */
  .booking-submit-wrap {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.5rem;
    margin-top: 1.2rem;
  }

  .booking-submit {
    appearance: none;
    background: transparent;
    border: 1px solid rgba(30,51,37,0.22);
    color: var(--forest);
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.65rem;
    letter-spacing: 0.38em;
    text-transform: uppercase;
    padding: 1.1rem 3.2rem;
    cursor: pointer;
    transition: border-color 0.45s ease, letter-spacing 0.45s ease, color 0.45s ease;
  }

  .booking-submit:hover {
    border-color: rgba(196,169,107,0.55);
    color: rgba(30,51,37,0.7);
    letter-spacing: 0.46em;
  }

  .booking-note {
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 0.72rem;
    letter-spacing: 0.06em;
    line-height: 1.85;
    color: rgba(30,51,37,0.38);
    text-align: center;
    max-width: 480px;
  }

  /* Success state */
  .booking-success {
    display: none;
    text-align: center;
    padding: 3rem 0;
  }

  .booking-success.visible { display: block; }
  .booking-form.hidden { display: none; }

  .booking-success-title {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-weight: 400;
    font-size: 1.8rem;
    color: var(--forest);
    margin-bottom: 1rem;
  }

  .booking-success-body {
    font-family: 'Jost', sans-serif;
    font-weight: 300;
    font-size: 0.84rem;
    letter-spacing: 0.06em;
    line-height: 1.9;
    color: var(--text-muted);
  }

  @media(max-width:700px) {
    .booking-form { grid-template-columns: 1fr; }
    .booking-field--full { grid-column: 1; }
    .booking-inquiry { padding: 6rem 1.5rem; }
  }


  .booking-bot-field { display: none; }
