@font-face{font-family:EmersonSans;src:local('Arial');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f7f5;color:#171717;font-family:Inter,EmersonSans,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #8572e9;outline-offset:6px}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.055em;line-height:1.04}p{line-height:1.55}small,.mono,nav,.bracket,.toolbar,.submit-button{font-family:'Courier New',monospace;font-size:12px;letter-spacing:.025em;line-height:1.5}small{display:block;color:#6d6d69}button{border:0;background:none;color:inherit}.header{display:flex;align-items:flex-start;gap:30px;padding:22px 28px;min-height:125px}.wordmark{font-weight:700;font-size:76px;letter-spacing:-.075em;line-height:.9}.wordmark span{color:#777}.social-top{margin-left:auto;padding-top:16px;color:#777}nav{display:flex;align-items:center;gap:25px;padding-top:14px;white-space:nowrap}nav a:hover,.bracket:hover{opacity:.55}sup{font-size:9px;color:#888}.bracket{display:inline-block;font-weight:bold;padding:12px 0}.bracket:before{content:'[ ';color:#888}.bracket:after{content:' ]';color:#888}.menu-toggle{display:none}.page-heading{padding:85px 28px 70px}.page-heading h1{font-size:clamp(58px,8.5vw,132px);max-width:1250px}.page-heading>p{margin:25px 0 0;font-size:20px;color:#777;max-width:750px}.page-heading>p.mono{font-size:12px;margin:0 0 25px}.page-heading h2{font-size:clamp(26px,3.5vw,52px);max-width:900px;margin-top:34px;color:#797975}.count{font:12px 'Courier New',monospace;vertical-align:top;display:inline-block;margin:17px 0 0 20px;letter-spacing:0}.portfolio{padding:0 28px 120px}.toolbar{display:flex;justify-content:space-between;gap:24px;padding:10px 0 40px}.filters,.view-options{display:flex;flex-wrap:wrap;gap:18px}.toolbar button{font:inherit;color:#999;padding:8px 0}.toolbar button[aria-pressed=true]{color:#111}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 24px}.photo-card[hidden]{display:none!important}.card-top{display:flex;justify-content:space-between;text-transform:uppercase;margin-bottom:10px}.photo-frame{overflow:hidden;border-radius:6px;background:#ddd;aspect-ratio:1.3}.photo-frame img{height:100%;object-fit:cover;transition:transform .6s}.photo-card:hover img{transform:scale(1.035)}.card-caption{color:#888;padding-top:12px;text-transform:uppercase}.gallery-note{margin-top:60px;max-width:640px}.subtle{color:#888}.list-view{grid-template-columns:1fr;gap:0}.list-view .photo-card{display:grid;grid-template-columns:1fr 180px 120px;align-items:center;gap:24px;border-top:1px solid #ccc;padding:20px 0}.list-view .card-top{font-size:20px}.list-view .photo-frame{grid-column:2;grid-row:1;aspect-ratio:1.5}.list-view .card-caption{text-align:right}.project-hero{margin:0 28px;background:#ddd;border-radius:6px;overflow:hidden}.project-hero img{max-height:900px;object-fit:cover}.story-grid{display:grid;grid-template-columns:1fr 2fr;gap:100px;padding:100px 10%}.story-grid small{margin-bottom:6px}.story-grid .mono p{margin-bottom:30px}.story-grid>div>p{margin-bottom:25px}.lead{font-size:clamp(22px,2.4vw,34px);line-height:1.32;letter-spacing:-.025em}.next-project{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:10px 28px 100px;padding-top:30px;border-top:1px solid #bbb}.next-project h2{font-size:clamp(35px,5vw,80px);grid-column:1}.next-project img{grid-column:2;grid-row:1/4;aspect-ratio:1.6;object-fit:cover;border-radius:5px}.about-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:100px;padding:0 8% 120px}.about-grid img{border-radius:6px}.about-grid figcaption{margin-top:14px;color:#888}.about-grid h2{font-size:52px;margin-bottom:35px}.about-grid p{margin-bottom:25px}.services,.faq{padding:70px 28px 100px;border-top:1px solid #ccc}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}.section-title h2,.faq h2{font-size:clamp(40px,6vw,84px)}.service-row{display:flex;align-items:center;gap:35px;padding:30px 0;border-top:1px solid #ccc}.service-row h3{font-size:clamp(30px,4vw,62px)}.service-row>span:last-child{margin-left:auto;font-size:32px}.service-row:hover{color:#777}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:0 60px}.faq h2{grid-row:1/6}.faq details{border-top:1px solid #ccc;padding:25px 0}.faq summary{cursor:pointer;list-style:none;font-size:22px;display:flex;justify-content:space-between;gap:20px}.faq details p{padding-top:18px;color:#666}.faq details[open] summary span{transform:rotate(45deg)}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:0 6% 100px}.service-detail .bracket{margin-top:35px}.deliverables>p{padding:20px 0;border-bottom:1px solid #ccc;display:flex;gap:25px}.deliverables>p.subtle{font-size:13px;border:0}.service-image{margin:0 6% 100px}.service-image img{max-height:700px;object-fit:cover;border-radius:6px}.service-image figcaption{margin-top:14px;color:#888}.process{padding:50px 6% 120px}.process h2{font-size:clamp(42px,6vw,80px);margin-bottom:65px}.process>div{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.process h3{font-size:30px;margin:25px 0 15px}.process p{color:#777}.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 25px;padding:0 28px 110px}.article-card img{aspect-ratio:1.5;object-fit:cover;border-radius:5px;margin-bottom:22px}.article-card small{margin-bottom:15px}.article-card h2{font-size:38px;max-width:550px}.article-card p{margin-top:15px;color:#777;max-width:550px}.editorial header{padding:80px 28px 55px;max-width:1150px}.editorial h1{font-size:clamp(48px,6.8vw,102px);margin:25px 0 30px}.editorial .lead{color:#777;max-width:800px}.editorial-image{width:calc(100% - 56px);margin:0 28px;max-height:700px;object-fit:cover;border-radius:5px}.article-body{max-width:740px;margin:80px auto 120px;padding:0 25px}.article-body h2{font-size:36px;margin:45px 0 20px}.article-body p{font-size:20px;color:#666;line-height:1.65}.article-body .bracket{margin-top:35px}.related>h2{font-size:55px;margin:0 28px 40px}.contact-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;padding:90px 28px 130px}.contact-layout h1{font-size:clamp(55px,6.5vw,100px);margin:30px 0}.contact-layout .lead{color:#777;max-width:600px;font-size:26px;margin-bottom:40px}.contact-email{font-size:clamp(17px,2vw,28px);letter-spacing:-.04em;display:block;margin:25px 0}.contact-layout form{padding-top:60px}.contact-layout h2{font-size:36px;margin-bottom:35px}label{display:block;font:12px 'Courier New',monospace;margin-bottom:25px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #bbb;padding:14px 0;background:transparent;border-radius:0;font:16px/1.5 Arial;color:#222;outline-offset:5px}textarea{resize:vertical}.form-help,#form-status{font-size:13px;color:#777;line-height:1.5;margin:15px 0}.submit-button{padding:18px 25px;background:#171717;color:#fff;border-radius:3px;width:100%;text-align:left;margin-top:10px}#email-fallback{display:block;font:13px 'Courier New',monospace;text-decoration:underline}#email-fallback[hidden]{display:none}.legal{max-width:850px;margin:60px auto 130px;padding:0 28px}.legal h1{font-size:clamp(50px,7vw,95px);margin:25px 0 65px}.legal h2{font-size:32px;margin:35px 0 18px}.legal p{font-size:19px;color:#666}.legal a{text-decoration:underline}footer{background:#111;color:#f3f3f0;padding:65px 28px 0;overflow:hidden}.footer-cta{display:flex;justify-content:space-between;align-items:end;padding-bottom:75px}.footer-cta h2{font-size:clamp(48px,7vw,112px)}.footer-cols{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr;gap:25px;padding:45px 0 65px;border-top:1px solid #444;font:12px/1.7 'Courier New',monospace}.footer-cols small{margin-bottom:18px}.footer-cols a{display:block;overflow-wrap:anywhere}.footer-cols a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;color:#777}.footer-logo{font-size:24vw;letter-spacing:-.075em;font-weight:700;line-height:1.05;margin-left:-.02em}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.home{background:#090a0c}.home [data-framer-name=Logo] p{font-size:clamp(54px,7vw,110px)!important;letter-spacing:-.075em!important}.home [data-framer-name=Logo]{min-width:300px!important}.home #__framer-badge-container{display:none!important}.home [data-framer-name=Socials]{font-size:11px}.home a{cursor:pointer}.home [data-framer-name=H1]{max-width:650px!important}.home [data-framer-name=Header] [data-framer-name=Socials]{display:none!important}
@media(min-width:1500px){main{max-width:1800px;margin:auto}}
@media(max-width:1100px){.header{gap:18px}.wordmark{font-size:60px}.social-top{display:none}nav{margin-left:auto;gap:18px;font-size:11px}.contact-layout{gap:40px}.about-grid{gap:45px}.service-detail{gap:45px}.home [data-framer-name=Logo]{min-width:220px!important}}
@media(max-width:760px){.header{padding:20px;min-height:90px;align-items:center;position:relative;z-index:5}.wordmark{font-size:50px}.menu-toggle{display:block;margin-left:auto;padding:12px 0}nav{display:none;position:absolute;top:85px;left:0;right:0;background:#f7f7f5;padding:25px;flex-direction:column;align-items:start;border-bottom:1px solid #ccc;font-size:15px;gap:25px}.menu-toggle[aria-expanded=true]+nav{display:flex}.page-heading{padding:55px 20px 45px}.page-heading h1{font-size:60px}.page-heading>p{font-size:18px}.count{margin-left:10px}.portfolio{padding:0 20px 70px}.toolbar{flex-direction:column;gap:8px;padding-bottom:25px}.filters{gap:15px}.photo-grid{grid-template-columns:1fr;gap:35px}.list-view .photo-card{grid-template-columns:1fr 90px;gap:12px}.list-view .card-top{font-size:14px}.list-view .card-caption{grid-column:1;text-align:left}.project-hero{margin:0 20px}.story-grid{grid-template-columns:1fr;gap:20px;padding:50px 20px}.story-grid>.mono{display:grid;grid-template-columns:1fr 1fr}.next-project{margin:10px 20px 60px;grid-template-columns:1fr}.next-project img{grid-column:1;grid-row:auto}.about-grid{grid-template-columns:1fr;padding:0 20px 60px;gap:35px}.about-grid figure{max-width:400px}.about-grid h2{font-size:42px}.services,.faq{padding:45px 20px 60px}.section-title{gap:20px}.service-row{gap:20px}.service-row h3{font-size:32px}.faq{grid-template-columns:1fr}.faq h2{grid-row:auto;margin-bottom:40px}.service-detail{grid-template-columns:1fr;padding:0 20px 50px}.service-image{margin:0 20px 50px}.process{padding:20px 20px 60px}.process>div{grid-template-columns:1fr;gap:30px}.article-grid{grid-template-columns:1fr;padding:0 20px 65px;gap:40px}.article-card h2{font-size:34px}.editorial header{padding:50px 20px 35px}.editorial-image{width:calc(100% - 40px);margin:0 20px}.article-body{margin:40px auto 70px;padding:0 20px}.related>h2{font-size:40px;margin:0 20px 35px}.contact-layout{grid-template-columns:1fr;padding:50px 20px 70px;gap:25px}.contact-layout form{padding-top:20px}.contact-layout h1{font-size:62px}.footer-cta{display:block;padding-bottom:45px}.footer-cta .bracket{margin-top:25px}.footer-cols{grid-template-columns:1fr 1fr;gap:35px 20px;padding:30px 0 45px}.footer-bottom{gap:25px;font-size:10px}footer{padding:45px 20px 0}.home [data-framer-name=Logo]{min-width:170px!important}.home [data-framer-name=Logo] p{font-size:55px!important}.home [data-framer-name=H1]{max-width:90vw!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.booking-summary{display:grid;gap:12px}.booking-summary p{padding:12px;background:#f7f8f5;border-radius:7px}.booking-summary .field{max-width:380px}
/* Gallery cards use a deliberate crop; detail and article photos retain the full frame. */
.photo-frame{display:flex;align-items:center;justify-content:center}.photo-frame img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;transform:none!important;transition:none!important}.photo-card:hover img{transform:none}
.article-card img,.project-hero img,.editorial-image,.about-grid img,.next-project img,.service-image img{width:100%;height:auto;max-width:100%;max-height:none;aspect-ratio:auto;object-fit:contain}
.editorial-image{display:block;margin:0 auto;border-radius:5px}.project-hero img,.about-grid img,.service-image img,.next-project img{display:block;margin-left:auto;margin-right:auto}
.image-viewer{position:fixed;inset:0;margin:auto;padding:20px;width:max-content;max-width:96vw;max-height:96vh;border:1px solid #555;background:#121212;color:#fff;border-radius:8px}.image-viewer::backdrop{background:#000e}.image-viewer img{display:block;width:auto;height:auto;max-width:92vw;max-height:82vh;object-fit:contain;margin:auto}.image-viewer-close{display:block;margin:0 0 12px auto;padding:8px 12px;color:#fff;border:1px solid #777;border-radius:4px}.image-viewer-tools{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:14px;font:12px 'Courier New',monospace;color:#ddd}.image-viewer-tools a{text-decoration:underline}
.booking-layout{grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:start}.booking-layout form{padding-top:0}.booking-intro{font-size:14px;color:#777;line-height:1.6;margin:-18px 0 25px}.booking-catalog{border:0;padding:0;margin:0 0 28px;min-width:0}.booking-catalog legend{padding:0;margin-bottom:14px;color:#777}.booking-packages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-package{position:relative;display:flex;flex-direction:column;overflow:hidden;margin:0;border:1px solid #d3d3cf;border-radius:5px;background:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}.booking-package:hover{transform:translateY(-2px);border-color:#777}.booking-package:has(.session-choice:checked){border-color:#171717;box-shadow:0 0 0 1px #171717}.session-choice{position:absolute;z-index:2;top:12px;right:12px;width:20px;height:20px;margin:0;padding:0;border:0;accent-color:#171717}.booking-package-image{width:100%;height:auto;aspect-ratio:1.35;object-fit:cover;background:#ddd}.booking-package-body{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:15px}.booking-package-body>small{font-size:10px}.booking-package-body>strong{font-size:21px;letter-spacing:-.04em}.booking-package-description{color:#777;font:14px/1.5 Arial,sans-serif;min-height:42px}.booking-package-price{font-size:19px;letter-spacing:-.03em}.booking-select{border-top:1px solid #ddd;width:100%;padding-top:10px;font:11px 'Courier New',monospace;text-transform:uppercase;letter-spacing:.04em}.booking-package:has(.session-choice:checked) .booking-select:after{content:' ✓';font-weight:bold}.booking-customer{border-top:1px solid #ccc;padding-top:18px}.booking-customer h3{font-size:26px;margin:18px 0 14px}.booking-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-layout .form-help{margin-top:18px}.booking-layout #booking-status{font:14px/1.5 Arial,sans-serif;color:#333;margin-top:12px}.booking-layout #booking-status a{text-decoration:underline;font-weight:600}
@media(max-width:900px){.booking-layout{grid-template-columns:1fr;gap:15px}.booking-layout form{padding-top:25px}.booking-packages{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.booking-packages,.booking-fields-grid{grid-template-columns:1fr}.booking-package{display:grid;grid-template-columns:38% 1fr;min-height:150px}.booking-package-image{height:100%;min-height:150px;aspect-ratio:auto}.booking-package-body{padding:12px;gap:6px}.booking-package-description{font-size:13px;min-height:0}.booking-layout{padding-left:20px;padding-right:20px}}
/* Destaque de ação nos cartões de agendamento */
.booking-select{display:flex;align-items:center;justify-content:center;margin-top:6px;width:100%;min-height:46px;padding:12px 10px;background:#171717;border:1px solid #171717;border-radius:3px;color:#fff;font:bold 12px 'Courier New',monospace;letter-spacing:.05em;text-align:center;text-transform:uppercase;transition:background .2s,border-color .2s,transform .2s}.booking-package:hover .booking-select{background:#333;border-color:#333}.booking-package:has(.session-choice:checked) .booking-select{background:#66764a;border-color:#66764a;color:white}.booking-package:has(.session-choice:checked) .booking-select:after{content:'  ✓';font-weight:bold}.booking-package:focus-within{outline:2px solid #171717;outline-offset:3px}
/* Tema escuro da página de agendamento, alinhado à página inicial */
body:has(.booking-layout){background:#090a0c;color:#f3f3f0}body:has(.booking-layout) .header{color:#f3f3f0}body:has(.booking-layout) .social-top,body:has(.booking-layout) nav a,body:has(.booking-layout) sup{color:#b8b8ba}body:has(.booking-layout) .contact-layout .lead{color:#aaa}body:has(.booking-layout) .booking-layout h2,body:has(.booking-layout) .booking-layout h3{color:#f3f3f0}body:has(.booking-layout) input,body:has(.booking-layout) select,body:has(.booking-layout) textarea{color:#f3f3f0;border-color:#555;color-scheme:dark}body:has(.booking-layout) input::placeholder,body:has(.booking-layout) textarea::placeholder{color:#929294}body:has(.booking-layout) .booking-catalog legend,body:has(.booking-layout) .booking-intro,body:has(.booking-layout) .form-help,body:has(.booking-layout) #booking-status{color:#aaa}body:has(.booking-layout) .booking-customer{border-color:#444}body:has(.booking-layout) .booking-package{background:#f7f7f5;color:#171717}body:has(.booking-layout) .booking-package-body>small{color:#6d6d69}body:has(.booking-layout) .booking-package-description{color:#777}
/* Brilho azul inspirado no fundo da página inicial */
body:has(.booking-layout){background:radial-gradient(ellipse 78% 54% at 50% -8%,rgba(42,74,151,.42) 0%,rgba(19,31,66,.26) 38%,transparent 76%),radial-gradient(ellipse 55% 38% at 0% 44%,rgba(32,55,112,.18),transparent 72%),linear-gradient(180deg,#090b13 0%,#090a0c 74%)}
/* Fundo azul comum a todas as páginas internas */
body:not(.home){background:radial-gradient(ellipse 78% 54% at 50% -8%,rgba(42,74,151,.42) 0%,rgba(19,31,66,.26) 38%,transparent 76%),radial-gradient(ellipse 55% 38% at 0% 44%,rgba(32,55,112,.18),transparent 72%),linear-gradient(180deg,#090b13 0%,#090a0c 74%);background-attachment:fixed;color:#f3f3f0}body:not(.home) small,body:not(.home) .subtle,body:not(.home) .card-caption,body:not(.home) .about-grid figcaption,body:not(.home) .article-card p,body:not(.home) .page-heading>p,body:not(.home) .lead,body:not(.home) .form-help{color:#aaa}body:not(.home) input,body:not(.home) select,body:not(.home) textarea{color:#f3f3f0;border-color:#555;color-scheme:dark}body:not(.home) input::placeholder,body:not(.home) textarea::placeholder{color:#929294}body:not(.home) .booking-package{background:#f7f7f5;color:#171717}body:not(.home) .booking-package-body>small{color:#6d6d69}body:not(.home) .booking-package-description{color:#777}body:not(.home) .booking-customer{border-color:#444}
.contact-message{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,120px);padding:85px 28px 120px;border-top:1px solid #444}.contact-message h2{font-size:clamp(38px,5vw,68px);margin:24px 0}.contact-message>div>p:not(.mono){max-width:520px;color:#aaa;font-size:18px;line-height:1.55}.contact-message form{padding-top:10px}.contact-message label{color:#ccc}.contact-message input,.contact-message textarea{color:#f3f3f0;border-color:#555;color-scheme:dark}.contact-message input::placeholder,.contact-message textarea::placeholder{color:#929294}@media(max-width:760px){.contact-message{grid-template-columns:1fr;padding:60px 20px 80px;gap:20px}.contact-message form{padding-top:15px}}
/* O visualizador mantém foto, fechar e dados na janela sem rolagem interna */
.image-viewer{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;width:min(96vw,1500px);height:94vh;max-width:96vw;max-height:94vh;overflow:hidden;padding:12px}.image-viewer-close{margin:0 0 0 auto;min-height:40px}.image-viewer img{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;margin:0 auto}.image-viewer-tools{min-height:24px;padding-top:4px}
/* Dialogs fechados não podem aparecer por causa do display:grid do tema */
.image-viewer:not([open]){display:none!important}.image-viewer[open]{display:grid}
