*{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;
    --cream:#F5ECDC; --cream2:#F0E5D2; --emerald:#1E5041; --emerald2:#2C6553;
    --sage:#4F7663; --line:#D9CDB6; --brass:#B08D57;
    --ink:#4B4E44; --head:#22453A; --muted:#8C897C;
    font-family:'Manrope',system-ui,-apple-system,sans-serif; color:var(--ink);
    background:var(--cream); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;}
  a{color:var(--emerald);text-decoration:none;transition:color .2s,opacity .2s}
  a:hover{color:var(--sage)}
  h1,h2,h3,p{margin:0}
  img{display:block;max-width:100%}
  summary{list-style:none;cursor:pointer}
  summary::-webkit-details-marker{display:none}
  .serif{font-family:'Playfair Display',Georgia,serif}
  ::selection{background:#CDE0D5}
  @keyframes floatA{0%,100%{transform:rotate(-14deg) translateY(0)}50%{transform:rotate(-14deg) translateY(-26px)}}
  @keyframes driftArc{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}
  @keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
  @keyframes scrollUp{from{transform:translateY(0)}to{transform:translateY(-50%)}}
  @keyframes kenburns{0%{transform:scale(1) translate(0,0)}100%{transform:scale(1.1) translate(-1.5%,-1%)}}
  @keyframes faqOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
  @media (prefers-reduced-motion: reduce){*{animation:none !important}}
  a:focus-visible,summary:focus-visible,button:focus-visible{outline:2px solid var(--emerald);outline-offset:3px;border-radius:6px}
  @media (max-width:900px){
    /* stacked split sections: photo becomes a full-width band, text flows under it */
    .split{display:block !important;min-height:0 !important}
    .split>img{position:relative !important;width:100% !important;height:auto !important;aspect-ratio:5/4 !important;max-height:460px !important;-webkit-mask-image:none !important;mask-image:none !important;object-position:center 18% !important}
    .split .scrim{display:none !important}
    /* hero photo: frame Daniela instead of leaving her far right */
    #site>img{aspect-ratio:1/1 !important;object-position:74% 22% !important}
    .split-content{width:100% !important;padding-top:clamp(30px,7vw,44px) !important;padding-bottom:clamp(40px,9vw,56px) !important}
    .split-content>div{max-width:none !important}
    /* value strip stacks cleanly, left-aligned, no dividers */
    .value-strip{flex-direction:column !important;align-items:flex-start !important;gap:16px !important;justify-content:flex-start !important}
    .value-div{display:none !important}
    /* more breathing between stacked heading blocks */
    .sec-eyebrow{margin-bottom:20px !important}
    /* emerald 'sobre' section: keep photo feeling part of the panel */
    #sobre>img{aspect-ratio:1/1 !important;object-position:center 12% !important}
    .g2,.g3,.bento,.faq-grid,.foot-grid,.g4-testi{grid-template-columns:1fr !important;gap:16px !important}
    .bento>div{grid-column:auto !important}
    .faq-side{position:static !important;margin-bottom:8px}
    .foot-grid{gap:30px !important}
    .slim-nav>a:not(:last-child){display:none !important}
    .testi-wrap{height:auto !important;-webkit-mask-image:none !important;mask-image:none !important;flex-direction:column;align-items:center;gap:16px !important}
    .testi-col{width:100% !important;max-width:400px !important;animation:none !important}
    .testi-col:not(:first-child){display:none !important}
  }
  @media (max-width:600px){
    /* cover stays a cover — just make it breathe on a phone */
    #topo .cover-scrim{background:linear-gradient(to bottom,rgba(223,203,175,.55) 0%,rgba(223,203,175,.15) 30%,rgba(223,203,175,.55) 62%,rgba(223,203,175,.96) 100%) !important}
    .cover-content{display:flex;align-items:flex-end;min-height:100vh;padding-bottom:clamp(40px,12vw,58px) !important}
    #topo{align-items:stretch !important}
    #cover-name{white-space:normal !important;font-size:clamp(42px,15vw,62px) !important;line-height:.98 !important}
    .cover-seal{width:70px !important;height:70px !important;top:18px !important;right:18px !important}
    .cover-seal>span:first-child{font-size:21px !important}
    .cover-seal>span:last-child{font-size:5.5px !important}
    .cta-row{width:100%;flex-direction:column !important;align-items:stretch !important;gap:12px !important}
    .cta-row>a{width:100%;justify-content:center}
    .cta-row>div{text-align:center}
    /* portrait images read taller and closer on small phones */
    .split>img{aspect-ratio:4/5 !important;max-height:78vh !important}
    #site>img{aspect-ratio:4/5 !important;object-position:76% 20% !important}
    #sobre>img{aspect-ratio:4/5 !important}
    .eyebrow{font-size:11px !important}
  }