/* Karen Souza — referências 21st.dev adaptadas às fotografias e à marca. */
:root{--studio-paper:#fafaf7;--studio-sand:#efebe3;--studio-green:#263f34;--studio-sage:#ced8c8;--studio-ease:cubic-bezier(.22,.75,.25,1)}
@view-transition{navigation:auto}
::view-transition-old(root){animation:studio-page-out .22s ease both}
::view-transition-new(root){animation:studio-page-in .42s var(--studio-ease) both}
@keyframes studio-page-out{to{opacity:0}}
@keyframes studio-page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.reference-site .services.section.service-showcase{background:linear-gradient(180deg,var(--studio-paper),var(--studio-sand) 32%,var(--studio-sand));padding:80px 0;overflow:hidden}
.reference-site .service-showcase>.service-heading,.reference-site .service-showcase>.home-service-finder{width:88%;max-width:1320px;margin-inline:auto}
.service-showcase .service-heading{margin-bottom:40px}
.service-coverflow{position:relative;isolation:isolate;padding:24px 6% 38px;color:#fff;background:#263b32;border-radius:0;outline-offset:-5px}
.coverflow-ambient{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:#263b32}
.coverflow-ambient::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#182d25a6,#182d25d9)}
.coverflow-ambient img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:blur(35px);transform:scale(1.12);transition:opacity .65s ease}
.coverflow-ambient img.is-active{opacity:.58}
.coverflow-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1280px;margin:auto}
.coverflow-card{position:relative;min-width:0;min-height:530px;background:#294035;overflow:hidden;border-radius:14px;box-shadow:0 18px 50px #101e2426}
.coverflow-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none}
.coverflow-card[data-coverflow-card="completo"] .coverflow-photo{object-position:64% center}
.coverflow-card[data-coverflow-card="interiores"] .coverflow-photo{object-position:center}
.coverflow-card::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 12%,#10281d12 28%,#10281dbf 58%,#10281df5 100%)}
.coverflow-copy{position:absolute;bottom:0;left:0;right:0;z-index:1;padding:28px 30px 30px;text-align:left}
.reference-site .coverflow-copy h3{color:#fff;font:500 clamp(30px,3.1vw,42px)/1.08 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em;margin:0 0 12px;text-wrap:balance}
.coverflow-copy p{font:400 15px/1.7 'Montserrat',Arial,sans-serif;max-width:48ch;color:#f2f3ec;margin:0 0 20px}
.coverflow-copy a{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;color:#fff;text-decoration:none;font:500 14px/1.5 'Montserrat',Arial,sans-serif;min-height:44px;border-bottom:1px solid #ffffff75;padding:8px 0}
.coverflow-copy a span{font-size:24px;transition:transform .25s var(--studio-ease)}
.coverflow-copy a:hover span{transform:translate(3px,-3px)}
.service-coverflow.is-ready .coverflow-stage{display:block;position:relative;height:clamp(530px,48vw,620px);perspective:1400px;touch-action:pan-y pinch-zoom;user-select:none}
.service-coverflow.is-ready .coverflow-card{position:absolute;top:0;left:50%;width:min(55%,620px);height:100%;min-height:0;transform-origin:center center;will-change:transform,opacity;cursor:pointer}
.service-coverflow.is-ready .coverflow-card.is-active{cursor:default}
.service-coverflow.is-ready .coverflow-card:not(.is-active) .coverflow-copy p,.service-coverflow.is-ready .coverflow-card:not(.is-active) .coverflow-copy a{opacity:0;pointer-events:none}
.coverflow-copy p,.coverflow-copy a{transition:opacity .24s ease}
.coverflow-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:28px auto 0;max-width:1150px}
.coverflow-controls[hidden]{display:none}
.coverflow-controls>button{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid #ffffff50;border-radius:50%;background:#ffffff08;color:#fff;cursor:pointer;transition:background-color .2s ease}
.coverflow-controls>button:hover{background:#ffffff20}
.coverflow-controls svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.coverflow-picker{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.coverflow-picker button{min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:999px;background:transparent;color:#e7eade;font:400 14px/1.4 'Montserrat',Arial,sans-serif;cursor:pointer;transition:background-color .2s,color .2s}
.coverflow-picker button[aria-pressed="true"]{background:var(--studio-sage);color:#263f34;border-color:var(--studio-sage)}
.service-coverflow :is(button,a):focus-visible{outline:3px solid #e9c78d;outline-offset:5px}
.reference-site .service-showcase .home-service-finder{margin-top:42px;padding:28px 0 0;background:transparent;color:#263f34;border-radius:0;border-top:1px solid #263f3433}
.reference-site .service-showcase .home-service-finder h3,.reference-site .service-showcase .home-service-finder p{color:#263f34}
.reference-site .service-showcase .home-service-finder h3{font-size:clamp(24px,2.5vw,32px)}
.reference-site .service-showcase .home-service-finder p{font-size:16px}
.reference-site .contato.contact-studio{padding:clamp(64px,8vw,112px) 6%;background:#263f34;background-image:radial-gradient(ellipse at 5% 0%,#52735a60,transparent 62%);color:#fafaf7}
.contact-studio-inner{display:grid;grid-template-columns:1.08fr 1fr;align-items:start;gap:clamp(36px,6vw,100px);max-width:1320px;margin:auto}
.contact-label{font:400 14px/1.5 'Montserrat',Arial,sans-serif;letter-spacing:.03em;color:#d4dfcd;margin:0 0 22px}
.reference-site .contact-studio #contato-titulo{font:500 clamp(44px,5.8vw,76px)/1.03 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em;white-space:normal;max-width:10em;text-wrap:balance;color:#fafaf7;margin:0 0 26px}
.contact-intro{font:400 16px/1.8 'Montserrat',Arial,sans-serif;max-width:40ch;color:#e0e6db;margin:0}
.contact-reach{font:400 14px/1.6 'Montserrat',Arial,sans-serif;color:#c4d1bf;margin-top:32px}
.contact-actions{display:grid;gap:14px;min-width:0}
.contact-method{display:flex;align-items:flex-start;gap:22px;padding:26px 28px;border:1px solid #ffffff36;border-radius:12px;text-decoration:none;transition:background-color .25s,border-color .25s,box-shadow .25s;position:relative;overflow:hidden}
.contact-method-primary{background:#d2dccb;color:#233d30;border-color:#d2dccb}
.contact-method-primary:hover{background:#e0e8da;box-shadow:0 14px 38px #0d241d22}
.contact-method-email{background:#ffffff06;color:#fafaf7}
.contact-method-email:hover{background:#ffffff0d;border-color:#ffffff70}
.contact-method-icon{flex:none;width:30px;padding-top:3px}
.contact-method-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.contact-method-copy{display:grid;gap:8px;flex:1;min-width:0}
.contact-method-title{font:500 clamp(26px,2.4vw,32px)/1.15 'Cormorant Garamond',Georgia,serif;letter-spacing:-.015em}
.contact-method-detail{font:400 14px/1.6 'Montserrat',Arial,sans-serif;overflow-wrap:anywhere;opacity:.85}
.contact-method-link{font:500 14px/1.5 'Montserrat',Arial,sans-serif;margin-top:12px}
.contact-method-arrow{font:400 30px/1 Arial,sans-serif;transition:transform .28s var(--studio-ease);padding-top:5px}
.contact-method:hover .contact-method-arrow,.contact-method:focus-visible .contact-method-arrow{transform:translate(4px,-4px)}
.contact-socials{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:16px 0 0;color:#e3e9df;font:400 14px/1.5 'Montserrat',Arial,sans-serif}
.contact-socials>span{flex-basis:100%;color:#bacbb7}
.contact-socials a{text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid transparent}
.contact-socials a:hover{border-color:currentColor}
.reference-site .contact-studio .contato__formulario{grid-column:auto;grid-row:auto;max-width:none;margin:8px 0 0;padding:20px 0 0;border-top:1px solid #ffffff26;color:#e3e9df}
.reference-site .contact-studio .contato__formulario summary{font:400 14px/1.6 'Montserrat',Arial,sans-serif;cursor:pointer;min-height:44px}
.contact-studio :is(a,summary,input,textarea,button):focus-visible{outline:3px solid #e9c78d;outline-offset:5px}
.contact-studio .contato__formulario form{padding-top:16px}
.reference-site .footer{background:#263f34;border-top:1px solid #ffffff20}
/* Mesmo gesto visual do ToDo Checkbox, preservando a seleção única do quiz. */
.experience-page .finder-choice-mark{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:transparent;box-shadow:none;transition:background-color .18s,border-color .18s}
.experience-page .finder-choice-mark::after{content:'';width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-2px) rotate(-45deg) scale(.4);opacity:0;transition:transform .2s var(--studio-ease),opacity .18s}
.experience-page .finder-choice:has(input:checked) .finder-choice-mark{background:#263f34;border-color:#263f34;box-shadow:none}
.experience-page .finder-choice:has(input:checked) .finder-choice-mark::after{opacity:1;transform:translateY(-2px) rotate(-45deg) scale(1)}
.experience-page .finder-choice-detail{font-size:14px;line-height:1.5}
.experience-page.reference-subpage{background:#fafaf7}
.experience-page .service-quiz-section{background:linear-gradient(180deg,#fafaf7,#efebe3)}
@media(max-width:900px){
  .coverflow-stage{gap:16px}.coverflow-copy{padding:24px}.coverflow-copy p{font-size:14px}
  .service-coverflow.is-ready .coverflow-card{width:66%}
  .coverflow-controls{gap:12px}.coverflow-picker{gap:2px}.coverflow-picker button{padding-inline:12px}
  .contact-studio-inner{gap:40px;grid-template-columns:1fr 1fr}.contact-method{padding:24px 20px;gap:14px}
}
@media(max-width:650px){
  .reference-site .service-showcase{padding-block:64px}
  .service-showcase .service-heading{gap:20px;align-items:start;margin-bottom:26px;flex-direction:column}
  .reference-site .service-showcase .service-reach{font-size:14px;text-align:left}
  .service-coverflow{padding:24px 0 28px}
  .coverflow-stage{grid-template-columns:1fr;margin-inline:6%}
  .coverflow-card{min-height:520px}
  .service-coverflow.is-ready .coverflow-stage{height:540px;margin:0}
  .service-coverflow.is-ready .coverflow-card{width:80%;max-width:390px}
  .coverflow-copy{padding:24px}.reference-site .coverflow-copy h3{font-size:34px}
  .coverflow-copy p{font-size:14px;line-height:1.7;margin-bottom:14px}
  .coverflow-controls{display:grid;grid-template-columns:44px 1fr 44px;gap:8px;margin:22px 6% 0}
  .coverflow-controls>button{width:44px;height:44px}
  .coverflow-picker{flex-direction:column;align-items:stretch;gap:4px}
  .coverflow-picker button{min-height:44px;padding:8px 10px;font-size:14px}
  .reference-site .service-showcase .home-service-finder{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-top:28px}
  .contact-studio-inner{grid-template-columns:1fr;gap:32px}
  .reference-site .contact-studio #contato-titulo{font-size:clamp(42px,12vw,60px)}
  .contact-intro{max-width:40ch}.contact-reach{margin-top:20px}.contact-method{padding:24px 20px}
  .contact-method-title{font-size:28px}.contact-socials{gap:24px}
}
@media(prefers-reduced-motion:reduce){
  @view-transition{navigation:none}
  ::view-transition-old(root),::view-transition-new(root){animation:none}
  .coverflow-ambient img,.coverflow-copy p,.coverflow-copy a,.contact-method-arrow,.finder-choice-mark,.finder-choice-mark::after{transition:none!important}
  .contact-method:hover .contact-method-arrow,.coverflow-copy a:hover span{transform:none}
}
@media(prefers-reduced-transparency:reduce){.coverflow-ambient img{display:none}.contact-method-email{background:#304c3d}}
@media(prefers-contrast:more){.contact-method-email{background:#1c3026;border-color:#fafaf7}.contact-method-detail,.contact-intro,.contact-reach{opacity:1;color:inherit}}

/* Cards fotográficos: somente o convite surge no hover ou no foco. */
.reference-site .service-photo-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.5vw,36px);width:88%;max-width:1320px;margin:0 auto}
.service-photo-card{position:relative;display:block;aspect-ratio:4/5;min-width:0;border-radius:18px;overflow:hidden;background:#d9ded4;text-decoration:none;isolation:isolate;box-shadow:0 6px 24px #263f340b;transition:box-shadow .35s ease}
.service-photo-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--studio-ease)}
.service-photo-card[href$="completo"] img{object-position:62% center}
.service-photo-card::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(transparent 35%,#15181540 60%,#151815e8);opacity:1;pointer-events:none}
.service-photo-card-title{position:absolute;z-index:2;left:24px;right:24px;bottom:76px;color:#fff;text-align:center;text-wrap:balance;font:500 clamp(26px,2.8vw,40px)/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.02em;text-shadow:0 1px 12px #0005}
.service-photo-card-cta{position:absolute;z-index:2;left:20px;right:20px;bottom:30px;text-align:center;color:#fff;font:500 clamp(16px,1.5vw,19px)/1.5 'Montserrat',Arial,sans-serif;opacity:0;transform:translateY(12px);transition:opacity .3s ease,transform .45s var(--studio-ease)}
.service-photo-card:is(:hover,:focus-visible){box-shadow:0 16px 36px #263f3420}
.service-photo-card:is(:hover,:focus-visible) img{transform:scale(1.055)}
.service-photo-card:is(:hover,:focus-visible)::after{opacity:1}
.service-photo-card:is(:hover,:focus-visible) .service-photo-card-cta{opacity:1;transform:none}
.service-photo-card:focus-visible{outline:3px solid #263f34;outline-offset:5px}
.reference-site .about-karen-copy .bio-stat{display:grid;justify-items:start;gap:6px;margin:32px 0 6px;color:#263f34}
.bio-stat-number{display:inline-flex;align-items:baseline;gap:4px;font:400 clamp(50px,5.4vw,74px)/1 'Montserrat',Arial,sans-serif;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.bio-stat-plus{font-size:.72em;letter-spacing:0}
[data-bio-number]{display:inline-block;min-width:4.5ch;text-align:left}
.bio-stat-label{font:400 15px/1.6 'Montserrat',Arial,sans-serif;letter-spacing:0}
.reference-site .about-karen.section{align-items:start}
.reference-site .about-karen .about-portrait{align-self:start}
.reference-site .about-karen-copy .about-profession{margin-bottom:10px}
.reference-site .about-karen-copy{container-type:inline-size}
.reference-site .about-karen-copy strong{font-weight:500}
.reference-site .about-karen-copy > p.about-education{margin-top:0;font:300 clamp(7.5px,2.8cqw,14px)/1.7 'Montserrat',Arial,sans-serif;letter-spacing:0;white-space:nowrap;color:var(--reference-green)}
.reference-site .about-karen-copy .about-belief{margin:32px 0 24px;font:500 clamp(26px,2.5vw,34px)/1.3 'Cormorant Garamond',Georgia,serif;color:var(--reference-green);text-wrap:pretty}
.reference-site .about-karen-copy .about-questions{margin:24px 0;color:var(--reference-green);font:400 1rem/1.85 'Montserrat',Arial,sans-serif}
.reference-site .about-karen-copy .about-questions p{margin:0 0 8px}
.reference-site .about-karen-copy .about-invitation{margin:28px 0 0;color:var(--reference-green)}
.reference-site .about-karen-copy .about-conversation{justify-content:center;margin-top:20px;padding:14px 24px;border:1px solid var(--reference-green);border-radius:4px;background:var(--reference-green);color:#fff;text-decoration:none}
.reference-site .about-karen-copy .about-conversation:hover{background:transparent;color:var(--reference-green)}
@media(max-width:700px){.reference-site .service-photo-cards{grid-template-columns:1fr;gap:24px}.service-photo-card{aspect-ratio:4/5;max-height:580px}.bio-stat-number{font-size:58px}}
@media(max-width:700px),(hover:none),(pointer:coarse){.service-photo-card::after,.service-photo-card-cta{opacity:1}.service-photo-card-cta{transform:none}.service-photo-card:hover img{transform:none}}
@media(prefers-reduced-motion:reduce){.service-photo-card,.service-photo-card img,.service-photo-card::after,.service-photo-card-cta{transition:none}.service-photo-card:is(:hover,:focus-visible) img{transform:none}}

/* Fundo verde com quatro cards brancos, alinhados e de alto contraste. */
.reference-site .contato.contact-map-layout{padding:72px 6% 80px;background:#263f34;color:#fff;scroll-margin-top:96px}
.contact-map-layout .contact-heading{max-width:1320px;margin:0 auto 44px}
.contact-map-layout .contact-label{margin:0 0 16px;color:#e4eadf}
.reference-site .contact-map-layout #contato-titulo{max-width:none;white-space:nowrap;text-wrap:nowrap;font-size:clamp(16px,5.3vw,76px);line-height:1.15;letter-spacing:-.035em;margin:0;color:#fff}
.contact-map-layout .contact-studio-inner{grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,44px);align-items:stretch}
.contact-map{margin:0;min-width:0;display:flex;flex-direction:column;background:#1e342b;border:1px solid #dce7d52b;border-radius:16px;overflow:hidden}
.contact-map-stage{position:relative;flex:1;min-height:300px;overflow:hidden;background:#1e342b;background-image:linear-gradient(#dce7d506 1px,transparent 1px),linear-gradient(90deg,#dce7d506 1px,transparent 1px);background-size:38px 38px}
.contact-map-svg{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden}
.contact-map-state{fill:#87a08b;stroke:#e2ecda9c;stroke-width:.8;vector-effect:non-scaling-stroke;fill-rule:evenodd}
.contact-map-state.is-origin{fill:#c5d4b9}
.contact-map-dot{fill:#f2d89e;stroke:#1e342b;stroke-width:2;vector-effect:non-scaling-stroke}
.contact-map-halo{fill:#f2d89e20;stroke:#f2d89e90;stroke-width:1;vector-effect:non-scaling-stroke}
.contact-map-caption{font:500 clamp(26px,3vw,42px)/1.2 'Cormorant Garamond',Georgia,serif;letter-spacing:-.02em;color:#fff;background:#1e342b;margin:0;padding:18px 16px;text-align:center}
.contact-map.is-ready .contact-map-caption{opacity:0;transform:translateY(12px);transition:opacity .65s ease,transform .85s var(--studio-ease)}
.contact-map.is-complete .contact-map-caption{opacity:1;transform:none}
.contact-map-replay{position:absolute;right:14px;bottom:14px;width:44px;height:44px;border-radius:50%;border:1px solid #ffffff70;background:#263f34;color:#fff;display:grid;place-items:center;cursor:pointer}
.contact-map-replay[hidden]{display:none}
.contact-map-replay svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.contact-map-replay:hover{background:#41604b}
.contact-map-replay:focus-visible{outline:2px solid #fff;outline-offset:3px}
.contact-map-layout .contact-actions{display:grid;grid-template-rows:repeat(4,1fr);gap:12px;min-height:440px}
.contact-map-layout .contact-method{display:grid;grid-template-columns:44px minmax(0,1fr) 28px;align-items:center;gap:18px;border-radius:12px;padding:20px 24px;cursor:pointer;transition:background-color .25s,border-color .25s,box-shadow .25s,transform .25s var(--studio-ease);border:1px solid #fff;color:#263f34;background:#fff}
.contact-map-layout .contact-method:is(:hover,:focus-visible){transform:translateY(-2px);box-shadow:0 8px 20px #102b1e26;background:#fff;border-color:#c7d6c2}
.contact-map-layout .contact-method:focus-visible{outline:2px solid #fff;outline-offset:4px}
.contact-map-layout .contact-method:active{transform:translateY(0)}
.contact-map-layout .contact-method-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ead1c4;border-radius:50%;padding:0;color:#b4654a;background:#fbf2ec}
.contact-map-layout .contact-method-icon svg{width:24px;height:24px}
.contact-map-layout .contact-method-copy{gap:6px}
.contact-map-layout .contact-method-title{font-size:clamp(24px,2.5vw,32px);line-height:1.12;color:inherit}
.contact-map-layout .contact-method-link{font-size:12px;line-height:1.5;margin:0;color:#536458;text-decoration:none}
.contact-map-layout .contact-method-arrow{padding:0;font-size:26px;color:#b4654a;text-align:center}
.contact-map-layout .contact-method-primary{background:#fff;color:#263f34;border-color:#fff;box-shadow:inset 0 0 0 2px #9db297}
.contact-map-layout .contact-method-primary:is(:hover,:focus-visible){background:#fff;border-color:#fff;box-shadow:inset 0 0 0 2px #6e8c70,0 8px 20px #102b1e26}
.contact-map-layout .contact-method-primary .contact-method-icon{background:#f6e6dc;border-color:#e4c2b1}
.contact-map-layout .contact-method-primary .contact-method-link{color:#263f34;font-weight:500}
.contact-method-youtube .contact-method-icon svg path{fill:currentColor;stroke:none}
@media(max-width:700px){
  .reference-site .contato.contact-map-layout{padding:52px 5% 56px;scroll-margin-top:72px}
  .contact-map-layout .contact-heading{margin-bottom:26px}
  .contact-map-layout .contact-label{font-size:12px;margin-bottom:12px}
  .contact-map-layout .contact-studio-inner{grid-template-columns:1fr;gap:30px}
  .contact-map{border-radius:12px}
  .contact-map-stage{aspect-ratio:800/660;min-height:0;flex:none}
  .contact-map-caption{font-size:clamp(25px,7.4vw,36px);padding:18px 12px}
  .contact-map-layout .contact-actions{min-height:428px}
  .contact-map-layout .contact-method{padding:18px;gap:14px;grid-template-columns:40px minmax(0,1fr) 24px}
  .contact-map-layout .contact-method-icon{width:40px;height:40px}
  .service-photo-card-title{font-size:34px}
}
@media(prefers-reduced-motion:reduce){.contact-map.is-ready .contact-map-caption,.contact-map-layout .contact-method{transition:none}.contact-map-layout .contact-method:hover{transform:none}}

/* Projetos reúne pessoas, soluções para a rotina e a mudança da luz. */
.reference-site .projects.projects-stories{width:100%;max-width:none;margin:0;padding:72px 6%;background:var(--reference-paper);scroll-margin-top:96px}
.projects-stories > header,.project-story-tabs,.project-story-content,.project-selection{max-width:1320px;margin-inline:auto}
.projects-stories-heading h2{font:500 clamp(36px,4.5vw,64px)/1.15 'Cormorant Garamond',Georgia,serif;color:#263f34;letter-spacing:-.025em}
.projects-stories-heading p{margin-top:14px;font:400 15px/1.7 'Montserrat',Arial,sans-serif;color:#626a61}
.project-story-tabs{position:relative;display:flex;gap:8px;border-bottom:1px solid #dce0d6;margin-top:30px;margin-bottom:32px;padding-bottom:8px;isolation:isolate;overflow:clip}
.project-story-tabs button{position:relative;z-index:1;border:0;border-radius:8px;background:transparent;padding:14px 20px;min-height:48px;color:#626a61;font:400 15px/1.5 'Montserrat',Arial,sans-serif;cursor:pointer;transition:color .2s}
.project-story-tabs button[aria-selected=true]{color:#263f34}
.project-story-tabs button[aria-selected=true]::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#b4654a}
.is-interactive .project-story-tabs button[aria-selected=true]::after{display:none}
.story-tab-marker,.story-tab-hover{position:absolute;top:0;left:0;border-radius:8px;pointer-events:none;transition:transform .4s cubic-bezier(.22,.75,.25,1),width .4s cubic-bezier(.22,.75,.25,1),height .4s cubic-bezier(.22,.75,.25,1),opacity .2s}
.story-tab-marker{background:#e4e9de;box-shadow:inset 0 -2px #b4654a}
.story-tab-hover{background:#263f3409;opacity:0}
.story-tab-hover[data-visible=true]{opacity:1}
.project-story-content{display:flow-root}
.project-story-tabs button:focus-visible,.light-switch button:focus-visible,.projects-more:focus-visible{outline:2px solid #263f34;outline-offset:4px}
.project-story-tabs button:focus-visible{outline-offset:-3px}
.projects-stories.is-interactive .story-panel[hidden],.simple-project-card[hidden]{display:none!important}
.reference-site .projects-stories .story-panel{margin:0;padding:0;background:transparent;border:0;width:100%;max-width:none}
.reference-site .projects-stories .life-heading{margin-bottom:22px}
.projects-stories .life-heading h3,.reference-site .projects-stories .ideas-heading #ideas-title,.light-heading h3,.project-selection h3{font:500 clamp(26px,2.8vw,38px)/1.2 'Cormorant Garamond',Georgia,serif;color:#263f34;white-space:normal;letter-spacing:-.015em}
.projects-stories .life-heading p{font-size:14px;line-height:1.6;color:#626a61}
.reference-site .projects-stories .ideas-heading{margin-bottom:28px}
.light-heading{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:28px}
.light-heading p{max-width:55ch;margin-top:12px;color:#626a61;font:400 14px/1.7 'Montserrat',Arial,sans-serif}
.light-switch{display:flex;flex-shrink:0;border:1px solid #c6cec0;border-radius:6px;padding:4px;gap:4px}
.light-switch button{padding:12px 18px;min-height:44px;white-space:nowrap;border:0;border-radius:3px;background:transparent;color:#263f34;font:400 14px/1.5 'Montserrat',Arial,sans-serif;cursor:pointer}
.light-switch button[aria-pressed=true]{background:#263f34;color:#fff}
.light-figure{margin:0}
.light-photos{position:relative;aspect-ratio:1672/941;background:#e5e9e1;overflow:hidden;border-radius:12px}
.light-photos img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .45s ease}
.light-photos img[data-active=true]{opacity:1}
.light-figure figcaption{display:flex;justify-content:space-between;gap:24px;padding-top:18px;color:#626a61;font:400 14px/1.7 'Montserrat',Arial,sans-serif}
.light-figure figcaption a{color:#263f34;text-underline-offset:5px}
.project-selection{padding-top:54px;margin-top:54px;border-top:1px solid #dce0d6;scroll-margin-top:96px}
.project-selection header p{margin-top:12px;color:#626a61;font:400 14px/1.7 'Montserrat',Arial,sans-serif}
.simple-project-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:30px}
.simple-project-card{display:block;color:#263f34;text-decoration:none;min-width:0}
.simple-project-card img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover;border-radius:10px}
.simple-project-card > div{position:relative;padding:18px 0 20px;border-bottom:1px solid #dce0d6}
.simple-project-card h4{font:500 27px/1.2 'Cormorant Garamond',Georgia,serif}
.simple-project-card div > span{display:block;margin-top:8px;font:400 13px/1.6 'Montserrat',Arial,sans-serif;color:#626a61}
.simple-project-card .simple-project-action{color:#263f34;text-decoration:underline;text-underline-offset:5px}
.simple-project-card:hover .simple-project-action{color:#a7553e}
.simple-project-card:focus-visible{outline:2px solid #263f34;outline-offset:6px}
.projects-more{display:block;margin:32px auto 0;padding:14px 24px;min-height:48px;border:1px solid #263f34;border-radius:4px;background:transparent;color:#263f34;font:400 14px/1.5 'Montserrat',Arial,sans-serif;cursor:pointer}
.projects-more[hidden]{display:none}
@media(max-width:700px){
 .reference-site .projects.projects-stories{padding:44px 6%;scroll-margin-top:72px}
 .project-story-tabs{gap:4px;margin-top:22px;margin-bottom:24px}
 .project-story-tabs button{flex:1;min-width:0;padding:12px 7px;font-size:12px;text-align:center}
 .light-heading{display:block}.light-switch{width:fit-content;margin-top:20px}
 .light-figure figcaption{flex-direction:column;gap:8px;font-size:13px}
 .simple-project-cards{grid-template-columns:1fr;gap:26px}
 .project-selection{padding-top:36px;margin-top:36px;scroll-margin-top:72px}
 .reference-site .projects-stories .life-choices{gap:10px}
 .reference-site .projects-stories .life-choices button{font-size:12px}
 .projects-stories-heading p{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.light-photos img,.story-tab-marker,.story-tab-hover,.project-story-tabs button{transition:none}}

/* Paleta compartilhada — revisão de continuidade de 03/10/2026.
   Esta camada final atende à home, aos projetos, aos serviços e ao questionário. */
:root {
  --palette-paper:#f8f7f4;
  --palette-surface:#e8ede7;
  --palette-green:#5a706b;
  --palette-ink:#293c35;
  --palette-muted:#52645b;
  --palette-line:#d4ddd3;
  --palette-hover:#475e58;
  --paper:var(--palette-paper);--surface:var(--palette-surface);
  --ink:var(--palette-ink);--green:var(--palette-green);--muted:var(--palette-muted);--line:var(--palette-line);
  --reference-paper:var(--palette-paper);--reference-warm:var(--palette-paper);
  --reference-green:var(--palette-ink);--reference-ink:var(--palette-ink);--reference-muted:var(--palette-muted);
  --studio-paper:var(--palette-paper);--studio-sand:var(--palette-paper);
  --studio-green:var(--palette-ink);--studio-sage:var(--palette-surface);
  --brand-ivory:var(--palette-paper);--brand-mist:var(--palette-surface);--brand-sage:var(--palette-green);
  --experience-paper:var(--palette-paper);--experience-ink:var(--palette-ink);
  --experience-green:var(--palette-green);--experience-muted:var(--palette-muted);
  --experience-line:var(--palette-line);--experience-sage:var(--palette-surface);
}
.reference-site,.reference-subpage,body.experience-page {background:var(--palette-paper);color:var(--palette-ink)}
.reference-site .house-tour.section,
.reference-site .about-karen.section,
.reference-site .projects.projects-stories,
.reference-site .portfolio-gallery.section,
.reference-site .services.section.service-showcase,
.reference-site .channel.section,
.reference-site .routine-ideas.section,
.experience-page .service-quiz-section {background:var(--palette-paper);background-image:none}
.reference-site :is(.house-tour.section,.about-karen.section,.projects.projects-stories,.services.section.service-showcase,.channel.section) {
  padding-block:clamp(72px,7vw,104px);
}
.reference-site .home-header.solid,
.reference-subpage .header,.experience-page .experience-header {
  background:var(--palette-paper);color:var(--palette-ink);backdrop-filter:none;
  border-bottom:1px solid var(--palette-line);box-shadow:none;
}
.reference-site .home-header.solid :is(.brand,.menu-button,.desktop-navigation a) {color:var(--palette-ink);text-shadow:none}
.reference-site .home-header.solid .desktop-navigation a:hover {color:var(--palette-hover)}
.reference-site .home-header:not(.solid) {background:transparent;color:#fff;border:0;box-shadow:none;backdrop-filter:none}
.reference-site .home-header:not(.solid) :is(.brand,.menu-button,.desktop-navigation a) {color:#fff;text-shadow:none}
.reference-site .home-header :is(a,button):focus-visible {outline:2px solid var(--palette-ink);outline-offset:4px}
.reference-site .home-header:not(.solid) :is(a,button):focus-visible {outline-color:#fff}
.reference-site .hero-heading.hero-entry h1 {line-height:1.04;text-shadow:none}
.reference-site .hero-heading.hero-entry .hero-invitation-group .hero__sub {text-shadow:none}
.reference-site .menu-dialog {background:var(--palette-paper);color:var(--palette-ink);padding:32px max(24px,env(safe-area-inset-right)) 32px max(24px,env(safe-area-inset-left));overscroll-behavior:contain}
.reference-site .menu-dialog::backdrop {background:var(--palette-paper)}
.reference-site .menu-dialog[open] {animation:reference-menu-in .2s ease both}
.reference-site .menu-dialog .text-button {min-height:44px;color:var(--palette-ink)}
.reference-site .menu-dialog nav a:hover {color:var(--palette-hover);text-decoration:underline;text-underline-offset:8px}
.reference-site .menu-dialog > p {color:var(--palette-muted)}
.reference-site .about-karen-copy > p.about-education {font:400 14px/1.7 'Montserrat',Arial,sans-serif;white-space:normal;color:var(--palette-muted)}
.reference-site .about-karen-copy :is(.about-profession,.about-belief,.bio-stat) {color:var(--palette-ink)}
.reference-site .about-karen-copy .about-conversation,
.reference-site .service-showcase .home-service-finder > a,
.reference-site .channel-button,.reference-subpage .solid-button,
.project-page .header-contact,.experience-page .experience-primary {
  background:var(--palette-green);color:#fff;border:1px solid var(--palette-green);
  border-radius:8px;min-height:48px;font-family:'Montserrat',Arial,sans-serif;font-weight:500;box-shadow:none;
}
.reference-site .about-karen-copy .about-conversation:hover,
.reference-site .service-showcase .home-service-finder > a:hover,
.reference-site .channel-button:hover,.reference-subpage .solid-button:hover,
.project-page .header-contact:hover,.experience-page .experience-primary:hover {
  background:var(--palette-hover);border-color:var(--palette-hover);color:#fff;
}
.reference-site .service-showcase .home-service-finder {border-color:var(--palette-line)}
.reference-site .service-showcase .home-service-finder :is(h3,p) {color:var(--palette-ink)}
.reference-site .story-tab-marker {background:var(--palette-surface);box-shadow:inset 0 -2px var(--palette-green)}
.reference-site .project-story-tabs button[aria-selected=true]::after {background:var(--palette-green)}
.reference-site .story-tab-hover {background:#5a706b0d}
.reference-site :is(.project-story-tabs,.project-selection,.simple-project-card > div) {border-color:var(--palette-line)}
.reference-site .simple-project-card:hover .simple-project-action {color:var(--palette-hover)}
.reference-site :is(.projects-stories-heading p,.projects-stories .life-heading p,.light-heading p,.light-figure figcaption,.project-selection header p,.simple-project-card div > span) {color:var(--palette-muted)}
.reference-site .channel .video-card {background:var(--palette-paper);border-color:var(--palette-line)}
.reference-site .house-arrows button {border-color:var(--palette-line);color:var(--palette-ink);border-radius:8px}
.reference-site .house-arrows button:hover {background:var(--palette-surface);color:var(--palette-ink)}
.reference-site .contato.contact-map-layout {
  background:var(--palette-surface);background-image:none;color:var(--palette-ink);
  border:0;padding-block:clamp(72px,7vw,104px);
}
.reference-site .contact-map-layout #contato-titulo {
  color:var(--palette-ink);font-size:clamp(38px,5.3vw,68px);line-height:1.1;
  white-space:normal;text-wrap:balance;max-width:22ch;
}
.contact-map-layout .contact-studio-inner {align-items:stretch}
.contact-map-layout .contact-map {background:transparent;border:0;border-radius:0}
.contact-map-layout .contact-map-stage {background:transparent;background-image:none}
.contact-map-layout .contact-map-state {fill:#9baa9b;stroke:var(--palette-paper);stroke-width:.8}
.contact-map-layout .contact-map-state.is-origin {fill:var(--palette-green)}
.contact-map-layout .contact-map-dot {fill:var(--palette-ink);stroke:var(--palette-paper)}
.contact-map-layout .contact-map-halo {fill:#5a706b18;stroke:var(--palette-green)}
.contact-map-layout .contact-map-caption {background:transparent;color:var(--palette-ink)}
.contact-map-layout .contact-map-replay {background:transparent;color:var(--palette-ink);border-color:#5a706b80}
.contact-map-layout .contact-map-replay:hover {background:var(--palette-paper)}
.contact-map-layout .contact-method {
  background:var(--palette-paper);color:var(--palette-ink);border:1px solid var(--palette-line);
  border-radius:12px;box-shadow:none;transition:background-color .2s,border-color .2s;
}
.contact-map-layout .contact-method:is(:hover,:focus-visible) {background:#fdfcf9;border-color:var(--palette-green);box-shadow:none;transform:none}
.contact-map-layout .contact-method-icon,.contact-map-layout .contact-method-arrow {
  color:var(--palette-ink);background:transparent;border-color:var(--palette-line);
}
.contact-map-layout .contact-method-link {color:var(--palette-muted);font-size:14px}
.contact-map-layout .contact-method-primary {background:var(--palette-green);color:#fff;border-color:var(--palette-green);box-shadow:none}
.contact-map-layout .contact-method-primary:is(:hover,:focus-visible) {background:var(--palette-hover);border-color:var(--palette-hover);box-shadow:none}
.contact-map-layout .contact-method-primary .contact-method-icon {background:transparent;border-color:#ffffff55;color:#fff}
.contact-map-layout .contact-method-primary :is(.contact-method-arrow,.contact-method-link) {color:#fff}
.reference-site .contact-map-layout :is(a,button):focus-visible {outline:2px solid var(--palette-ink);outline-offset:4px}
.reference-site .footer {background:var(--palette-surface);color:var(--palette-ink);border-top:1px solid var(--palette-line)}
.reference-site .footer a:focus-visible {outline-color:var(--palette-ink)}
.reference-subpage .project-end {background:var(--palette-surface)}
.reference-subpage .header-contact {border-radius:8px}
body.experience-page {font-family:'Montserrat',Arial,sans-serif}
.experience-page .experience-brand {font:500 32px/1.15 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em;color:var(--palette-ink)}
.experience-page :is(.finder-question h1,.finder-result h1,.service-hero-copy h1,.service-information h2,.service-quiz-surface h2,.service-other-options > h2) {
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.08;letter-spacing:-.02em;color:var(--palette-ink);
}
.experience-page .finder-question h1,.experience-page .finder-result h1 {font-size:clamp(38px,4.5vw,58px)}
.experience-page .service-hero-copy h1 {font-size:clamp(38px,5vw,64px)}
.experience-page .experience-header-test {border-radius:8px;color:var(--palette-ink);background:var(--palette-surface);min-height:44px;display:inline-flex;align-items:center}
.experience-page .experience-primary:disabled {background:var(--palette-line);color:var(--palette-muted);border-color:var(--palette-line)}
.experience-page :is(.finder-choices,.finder-photo-caption,.service-impressions) {background:var(--palette-paper);backdrop-filter:none;border-color:var(--palette-line);border-radius:12px}
.experience-page :is(.finder-photo-panel,.service-photo-frame,.finder-result-photo) {border-radius:16px}
.experience-page :is(.service-quiz-surface,.service-other-link) {background:var(--palette-surface);border-radius:12px}
.experience-page :is(.service-audience-copy > p,.service-paragraphs p,.service-quiz-surface p) {color:var(--palette-muted)}
.experience-page .finder-choice:hover {background:#eef1ec}
.experience-page .finder-choice:has(input:checked) {background:var(--palette-surface)}
.experience-page :is(a,button,summary):focus-visible {outline:2px solid var(--palette-ink);outline-offset:4px}
@media(max-width:850px) {
  .reference-site :is(.house-tour.section,.about-karen.section,.projects.projects-stories,.services.section.service-showcase,.channel.section,.contato.contact-map-layout) {padding-block:64px;scroll-margin-top:92px}
  .reference-site .home-header {height:84px}
  .experience-page .experience-brand {font-size:28px}
}
@media(max-width:600px) {
  .reference-site .hero-heading.hero-entry h1 {line-height:1.06}
  .reference-site .menu-dialog {padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}
  .reference-site .contact-map-layout #contato-titulo {font-size:clamp(36px,10vw,44px);max-width:18ch}
  .contact-map-layout .contact-map-stage {aspect-ratio:800/580}
  .contact-map-layout .contact-map-caption {font-size:30px}
  .contact-map-layout .contact-method-title {font-size:28px}
  .contact-map-layout .contact-method-link {font-size:14px}
  .reference-site .project-story-tabs button {font-size:14px;line-height:1.4;padding-inline:8px}
  .reference-site .projects-stories .life-choices button {font-size:14px;line-height:1.4}
  .experience-page .service-impressions {border-radius:0}
  .experience-page .experience-header {grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding-inline:16px;gap:8px}
  .experience-page .experience-brand {font-size:24px}
  .experience-page .experience-header-test {max-width:100%;white-space:normal;font-size:12px;padding-inline:10px;text-align:center;justify-content:center}
}
@media(max-width:380px) {
  .experience-page .experience-brand {font-size:22px}
}
@media(prefers-reduced-motion:reduce) {
  .reference-site .menu-dialog[open] {animation:none}
  .reference-site .contact-map-layout .contact-method {transition:none}
}
