:root{--green:#143b2e;--deep:#102d24;--gold:#c5a25e;--paper:#fbfaf7;--ink:#23382e;--muted:#5b655d;--line:#dedfd7;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.7}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #a5772d;outline-offset:5px}a:hover{color:#926b26}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;padding:12px 20px;background:white;z-index:20}.skip:focus{top:10px}.header{border-bottom:1px solid var(--line)}.header-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:14px;line-height:1.25}.brand>span{font-family:var(--serif);font-size:1.375rem}.brand small{display:block;font:0.625rem/2.8 var(--sans);letter-spacing:2.4px}.brand img{width:76px}.header nav{display:flex;align-items:center;gap:32px;font-size:0.875rem}.nav-contact{border:1px solid #b6beb5;padding:10px 19px;border-radius:3px}.nav-contact span{margin-left:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:64px;padding-block:50px 58px}.eyebrow{font-size:0.75rem;line-height:1.6;letter-spacing:2px;font-weight:600;color:#68734f;margin-bottom:25px}.hero .eyebrow{font-size:0.6875rem;display:flex;align-items:center;gap:10px}.eyebrow>span{width:24px;height:1px;background:var(--gold)}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(2.8125rem,4.55vw,4.3125rem);line-height:1.08;letter-spacing:-2.8px}em{font-weight:400;color:#74804f}h1{text-wrap:balance}h1 em{display:inline;margin-top:0}.lead{margin-top:26px;color:var(--muted);max-width:460px;font-size:1rem;line-height:1.85}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 25px;margin-top:31px}.hero .actions{align-items:flex-start;flex-direction:column;gap:17px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:15px 23px;border-radius:3px;font-size:0.875rem;font-weight:600;line-height:1.5;min-height:50px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--green);color:#fff}.primary:hover{background:#275340;color:white}.text-link{font-size:0.875rem;font-weight:500;border-bottom:1px solid #b8bdab;padding-bottom:5px;display:inline-block}.text-link span{margin-left:13px}.hero-note{display:flex;align-items:center;gap:14px;margin-top:36px;padding-top:22px;border-top:1px solid var(--line);width:fit-content}.hero-note p{font-size:0.75rem;line-height:1.6;color:var(--muted)}.note-star{color:var(--gold);font-size:1.5rem}.hero-photo{background:#e8e4db;border-radius:200px 200px 5px 5px;overflow:hidden;position:relative}.hero-photo>img{width:100%}.hero-photo figcaption{background:var(--green);color:white;padding:15px 20px;display:flex;flex-direction:column;text-align:center;gap:3px}.hero-photo figcaption span:first-child{font-size:0.5625rem;letter-spacing:2px;color:#dbc795}.hero-photo figcaption span:last-child{font:italic 1.1875rem/1.4 var(--serif)}.qualities{background:var(--green);color:#f5efdd}.qualities .container{display:flex;align-items:center;justify-content:center;gap:62px;padding-block:22px;font-family:var(--serif);font-size:1.1875rem}.qualities i{font-size:0.875rem;color:var(--gold)}.section{padding-block:100px}h2{font-size:clamp(2.125rem,3.5vw,3.125rem);line-height:1.16;letter-spacing:-1.5px}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-copy{padding-top:37px;color:var(--muted)}.about-copy p+p{margin-top:16px}.about-copy .text-link{color:var(--green);margin-top:25px}.breed{background:#efefe7}.section-heading{max-width:650px}.section-heading>p:last-child{margin-top:24px;color:var(--muted);max-width:560px}.breed-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px}.breed-grid article{border-top:1px solid #bcc1af;padding:28px 30px 15px 0}.breed-grid article+article{padding-left:30px;border-left:1px solid #cdd1c0}.article-number{font-size:0.6875rem;letter-spacing:1.7px;color:#68734f;font-weight:600}.breed-grid h3{font-size:1.5625rem;line-height:1.2;margin:20px 0 14px}.breed-grid p{font-size:0.9375rem;color:var(--muted)}.breed-note{font-size:0.8125rem;color:var(--muted);margin-top:27px;max-width:880px}.care{border-top:1px solid #cdd1c0;margin-top:45px;padding-top:30px}.care h3{font-size:1.5625rem;margin-bottom:20px}.care>div{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.care p{font-size:0.875rem;color:var(--muted)}.care strong{display:block;font-size:0.875rem;font-weight:600;color:var(--green);margin-bottom:7px}.source{display:inline-block;font-size:0.75rem;color:var(--muted);text-decoration:underline;text-underline-offset:4px;margin-top:25px}.spotlight{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.spotlight figure{padding:12px;border:1px solid #c7b98e}.spotlight img{width:100%}.spotlight-copy p:not(.eyebrow){color:var(--muted);margin-top:23px}.spotlight-copy .button{margin-top:30px}.gallery-section{background:#f0f1ec}.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:44px}.gallery-heading>p{font-size:0.875rem;color:var(--muted)}.gallery{columns:3;column-gap:22px}.gallery>a{display:block;break-inside:avoid;margin-bottom:22px;background:white;border:1px solid #dedfd7;overflow:hidden;transition:box-shadow .2s}.gallery>a:hover{box-shadow:0 8px 25px #143b2e17}.gallery img{width:100%}.gallery a>span{padding:14px 17px;display:flex;justify-content:space-between;align-items:center;font-size:0.8125rem}.gallery b{font-size:1.125rem;font-weight:400;color:#718054}.gallery-note{font-size:0.875rem;color:var(--muted);text-align:center;margin-top:24px}.contact{background:var(--deep);color:#fff}.contact-inner{display:grid;grid-template-columns:230px 1fr;align-items:center;gap:80px}.contact-logo{background:#f1efe3;border-radius:50%;padding:18px}.contact .eyebrow{color:#d1b77f}.contact h2{font-size:2.6875rem}.contact em{color:#dfc48c}.contact p:not(.eyebrow){color:#cad4cc;margin-top:23px;max-width:610px}.gold{background:#ddc48e;color:var(--deep)}.gold:hover{background:#f0dbae;color:var(--deep)}.contact .text-link{color:#eee9dc;border-color:#728176}.contact-details{display:flex;align-items:center;gap:25px;font-size:0.875rem;color:#d7ded7;margin-top:26px}.contact-details span{border-left:1px solid #586b5e;padding-left:25px}footer{background:#0d251e;color:#bbc9bf}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:30px;font-size:0.75rem}.footer-inner>span{font:1.125rem var(--serif);color:#eee8d7}.footer-inner small{font:0.6875rem/2.5 var(--sans);display:block;color:#b2c0b5}.lightbox{border:1px solid #607268;background:#102d24;color:white;width:min(1040px,96vw);max-width:96vw;height:min(94dvh,1100px);max-height:94dvh;padding:16px 22px;border-radius:6px}.lightbox[open]{display:flex;flex-direction:column;gap:12px}.lightbox::backdrop{background:#06140eea}.lightbox-top,.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-shrink:0}.lightbox button{background:transparent;color:white;border:1px solid #617769;border-radius:3px;padding:8px 12px;min-height:44px;font-size:0.875rem}.lightbox-image{flex:1;min-height:0;max-height:calc(94dvh - 145px);object-fit:contain;align-self:center;width:100%}.caption{font-size:0.8125rem;text-align:center}.counter{font-size:0.8125rem;color:#d9c592}.lightbox-bottom button{white-space:nowrap}.lightbox button[hidden]{display:none}
@media(min-width:1500px){.hero{gap:95px}.hero-photo{max-width:495px;justify-self:end}.hero-copy{padding-block:20px}.hero .actions{flex-direction:row;align-items:center}.hero-note{margin-top:50px}}
@media(max-width:1050px){.container{width:calc(100% - 56px)}.header nav{gap:20px}.brand>span{font-size:1.1875rem}.brand img{width:60px}.hero{gap:35px}h1{font-size:3.0625rem}.hero .eyebrow{font-size:0.5625rem;letter-spacing:1.5px}.hero-note{margin-top:25px}.qualities .container{gap:30px;font-size:1.0625rem}.about,.spotlight{gap:55px}.contact-inner{gap:45px;grid-template-columns:170px 1fr}.contact h2{font-size:2.375rem}}
@media(max-width:760px){.container{width:calc(100% - 40px)}.header-inner{min-height:88px;flex-wrap:wrap;gap:0}.brand>span{font-size:1.125rem}.brand img{width:55px}.brand{gap:9px}.brand small{font-size:0.5rem;letter-spacing:1.4px}.menu-toggle{display:block;border:1px solid #bdc4b8;border-radius:3px;background:transparent;color:var(--green);font-size:0.8125rem;padding:9px 11px;min-height:44px}.menu-toggle span{margin-left:6px}.header nav{width:100%;display:flex;flex-wrap:wrap;gap:15px;padding-bottom:20px}.js .header nav{display:none}.js .header nav.is-open{display:flex}.header nav a{padding-block:9px}.hero{grid-template-columns:1fr;padding-block:36px 40px;gap:35px}.hero-copy{max-width:560px}.hero .eyebrow{font-size:0.625rem;letter-spacing:1.3px;margin-bottom:20px}h1{font-size:clamp(2rem,8.5vw,2.75rem);letter-spacing:-0.035em;line-height:1.15}.lead{font-size:1rem;margin-top:22px}.desktop-only{display:none}.hero .actions{flex-direction:row;align-items:center;gap:19px;margin-top:26px}.hero-note{display:none}.hero-photo{width:100%;max-width:480px;justify-self:center;border-radius:160px 160px 4px 4px}.hero-photo figcaption{padding-block:13px}.qualities .container{padding-block:23px;gap:8px;flex-direction:column;font-size:1.0625rem}.qualities i{display:none}.section{padding-block:65px}.eyebrow{font-size:0.6875rem;margin-bottom:18px}h2{font-size:2.25rem;letter-spacing:-1px}.about{grid-template-columns:1fr;gap:25px}.about-copy{padding-top:0}.breed-grid{grid-template-columns:1fr;margin-top:35px}.breed-grid article,.breed-grid article+article{padding:25px 0;border-left:0}.breed-grid h3{margin-top:12px}.breed-grid p{font-size:1rem}.breed-note{margin-top:15px}.care>div{grid-template-columns:1fr;gap:22px}.care p{font-size:0.9375rem}.spotlight{grid-template-columns:1fr;gap:36px}.spotlight figure{max-width:480px;margin-inline:auto;grid-row:2}.spotlight-copy h2 br:last-child{display:none}.gallery-heading{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:30px}.gallery{columns:2;column-gap:15px}.gallery>a{margin-bottom:15px}.gallery a>span{padding:10px;font-size:0.75rem;line-height:1.4;gap:10px}.gallery-note{text-align:left}.contact-inner{grid-template-columns:1fr;gap:30px}.contact-logo{width:145px;height:145px}.contact h2{font-size:2.1875rem}.contact .actions{align-items:flex-start;flex-direction:column}.footer-inner{align-items:flex-start;flex-direction:column;gap:20px}.lightbox{padding:12px}.caption{display:none}.lightbox-bottom{justify-content:space-between}}
@media(max-width:380px){.container{width:calc(100% - 30px)}.brand>span{font-size:1rem}.brand img{width:44px}.brand small{font-size:0.4375rem}.menu-toggle{font-size:0.75rem;padding-inline:8px}.hero .eyebrow{font-size:0.5625rem}.gallery{columns:1}.button{gap:14px;padding-inline:17px}.contact-details{gap:15px}.contact-details span{padding-left:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Atualização visual: jardim noturno, detalhes dourados e movimentos sutis. */
html{overflow-x:clip}body{overflow-x:hidden;background:linear-gradient(180deg,#fcfbf7 0%,#f5f5ef 100%)}
.scroll-meter{position:fixed;inset:0 0 auto;z-index:50;height:3px;background:#ffffff40;pointer-events:none}.scroll-meter span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#d4ac5f,#f5db9a);transform:scaleX(0);transform-origin:left;box-shadow:0 0 12px #d8b66e}
.header{position:sticky;top:0;z-index:30;background:#fbfaf7e8;backdrop-filter:blur(14px);transition:background .35s ease,box-shadow .35s ease,border-color .35s ease}.header.is-scrolled{background:#fbfaf7f7;box-shadow:0 8px 25px #143b2e12;border-color:#d8d9ce}.brand img{transition:transform .45s cubic-bezier(.2,.7,.2,1)}.brand:hover img{transform:rotate(-5deg) scale(1.08)}
.header nav a{position:relative;transition:color .25s ease}.header nav a:not(.nav-contact)::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.header nav a:not(.nav-contact):hover::after{transform:scaleX(1);transform-origin:left}.nav-contact{transition:background .25s ease,color .25s ease,transform .25s ease}.nav-contact:hover{background:var(--green);color:#fff;transform:translateY(-2px)}
.hero-banner{overflow:hidden}.hero-banner::before{transition:transform 1.2s ease}.hero-banner:hover::before{transform:scale(1.025)}.hero-banner .hero-inner{position:relative;z-index:1}.hero-orbit{position:absolute;border:1px solid #dfc48c55;border-radius:50%;pointer-events:none;z-index:0}.hero-orbit-one{width:680px;height:680px;right:-180px;top:-110px;animation:orbit-float 15s ease-in-out infinite}.hero-orbit-two{width:480px;height:480px;left:-300px;bottom:-235px;border-style:dashed;animation:orbit-float 19s ease-in-out infinite reverse}.hero-copy>*{animation:hero-rise .8s both}.hero-copy .eyebrow{animation-delay:.08s}.hero-copy h1{animation-delay:.16s}.hero-copy .lead{animation-delay:.25s}.hero-copy .actions{animation-delay:.34s}.hero-copy .hero-note{animation-delay:.43s}.hero-banner h1 em{background:linear-gradient(110deg,#e4c272,#fff0b9,#d4a14f);background-size:200% auto;background-clip:text;-webkit-background-clip:text;color:transparent;animation:gold-shine 7s linear infinite}
.button{position:relative;overflow:hidden;isolation:isolate}.button::after{content:"";position:absolute;inset:-30% auto -30% -40%;width:35%;transform:skewX(-22deg) translateX(-250%);background:#fff8d575;z-index:-1;transition:transform .55s ease}.button:hover::after{transform:skewX(-22deg) translateX(560%)}.button.primary:hover,.button.gold:hover{box-shadow:0 12px 28px #0d392b3a}
.qualities{position:relative;overflow:hidden}.qualities::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#d4ac5f24,transparent);transform:translateX(-100%);animation:quality-sweep 8s ease-in-out infinite}.qualities span{position:relative}.qualities i{animation:star-pulse 3s ease-in-out infinite}.qualities i:nth-of-type(2){animation-delay:1.2s}
.about{position:relative}.about::after{content:"✦";position:absolute;right:2%;top:35%;color:#d8b66e24;font-size:9rem;line-height:1;pointer-events:none}.breed{position:relative;overflow:hidden}.breed::before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;right:-330px;top:-190px;border:1px solid #d8b66e55}.breed-grid article{transition:transform .35s ease,background .35s ease,box-shadow .35s ease}.breed-grid article:hover{background:#f9f8ef;transform:translateY(-10px);box-shadow:0 16px 28px #143b2e12}.spotlight figure{overflow:hidden}.spotlight figure img{transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .8s ease}.spotlight figure:hover img{transform:scale(1.055);filter:saturate(1.08)}.spotlight-copy .eyebrow{display:flex;align-items:center;gap:10px}.spotlight-copy .eyebrow::before{content:"";display:block;width:26px;height:1px;background:var(--gold)}
.gallery>a{transform:translateZ(0);border-radius:4px}.gallery>a img{transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s ease}.gallery>a:hover img{transform:scale(1.065);filter:saturate(1.1) contrast(1.03)}.gallery>a:hover span{color:#8c672a}.contact{position:relative;overflow:hidden}.contact::before,.contact::after{content:"";position:absolute;border-radius:50%;border:1px solid #d8b66e35;pointer-events:none}.contact::before{width:640px;height:640px;right:-270px;top:-315px}.contact::after{width:420px;height:420px;left:-240px;bottom:-280px}.contact-logo{animation:logo-drift 6s ease-in-out infinite;box-shadow:0 12px 35px #00000036}.footer-inner a{transition:color .25s ease,transform .25s ease}.footer-inner a:hover{color:#dfc48c;transform:translateY(-2px)}
.will-reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease var(--reveal-delay),transform .75s cubic-bezier(.2,.7,.2,1) var(--reveal-delay)}.will-reveal.is-visible{opacity:1;transform:none}
@keyframes hero-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes gold-shine{to{background-position:200% center}}@keyframes orbit-float{50%{transform:translate3d(-16px,18px,0) rotate(8deg)}}@keyframes quality-sweep{0%,25%{transform:translateX(-110%)}55%,100%{transform:translateX(110%)}}@keyframes star-pulse{50%{transform:scale(1.35);color:#f0d78e}}@keyframes logo-drift{50%{transform:translateY(-8px) rotate(-2deg)}}
@media(max-width:760px){.hero-orbit-one{width:440px;height:440px;right:-200px;top:-190px}.hero-orbit-two{display:none}.header.is-scrolled{box-shadow:0 6px 18px #143b2e16}.about::after{font-size:6rem;top:10%;right:-3%}.breed-grid article:hover{transform:none}.gallery>a:hover img{transform:none}.contact-logo{animation:none}.will-reveal{transform:translateY(18px)}}

/* Abertura com a ilustração fornecida pelo gatil. */
.hero-banner{display:block;position:relative;isolation:isolate;padding:0;background:#062117;color:#fffaf0}
.hero-banner::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(3,24,16,.95) 0%,rgba(3,24,16,.89) 29%,rgba(3,24,16,.32) 53%,rgba(3,24,16,.06) 76%),linear-gradient(0deg,#062117 0%,transparent 25%),url('assets/fundo-abertura.webp');background-size:cover;background-position:right center;background-repeat:no-repeat}
.hero-banner .hero-inner{min-height:650px;display:flex;align-items:center;padding-block:65px}
.hero-banner .hero-copy{width:46%;max-width:560px;padding:0}
.hero-banner h1{font-size:clamp(2.5rem,4.1vw,3.75rem);line-height:1.12;letter-spacing:-.035em;text-shadow:0 2px 18px #03181066}
.hero-banner h1 em{color:#e6c88b}
.hero-banner .eyebrow{color:#e6ce9e;font-size:.75rem;letter-spacing:1.5px}
.hero-banner .lead{color:#f0f1e9}
.hero-banner .primary{background:#dfc48c;color:#102d24}
.hero-banner .primary:hover{background:#f1dbad;color:#102d24}
.hero-banner .text-link{color:#fff7e8;border-color:#b6bba0}
.hero-banner .text-link:hover{color:#e6c88b}
.hero-banner .hero-note{border-color:#ffffff38;margin-top:30px}
.hero-banner .hero-note p{color:#e0e7dc}
.hero-banner a:focus-visible{outline-color:#f0d69b}
@media(min-width:1600px){.hero-banner .hero-inner{min-height:710px}}
@media(min-width:761px) and (max-width:1050px){.hero-banner .hero-inner{min-height:640px;padding-block:48px}.hero-banner .hero-copy{width:51%}.hero-banner h1{font-size:2.75rem}.hero-banner::before{background-position:60% center}.hero-banner .eyebrow{font-size:.6875rem}}
@media(max-width:1050px){.hero-banner .hero-inner{min-height:0;padding-top:285px;padding-bottom:40px}.hero-banner .hero-copy{width:100%;max-width:560px;margin-inline:auto}.hero-banner::before{bottom:auto;height:310px;background-image:linear-gradient(0deg,#062117 0%,rgba(6,33,23,.15) 35%,transparent 65%),url('assets/fundo-abertura.webp');background-size:cover;background-position:76% center}.hero-banner h1{font-size:clamp(2rem,8.5vw,2.75rem);line-height:1.15}.hero-banner .eyebrow{font-size:.6875rem;letter-spacing:1.1px}.hero-banner .lead{margin-top:22px}.hero-banner .actions{gap:20px}.hero-banner .hero-note{display:none}}

/* Camadas animadas adicionais: luzes, constelações e profundidade. */
.hero-fireflies{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.hero-fireflies i{position:absolute;width:6px;height:6px;border-radius:50%;background:#f3d489;box-shadow:0 0 0 3px #f3d48914,0 0 17px #f3d489;opacity:.12;animation:firefly 7s ease-in-out infinite}.hero-fireflies i:nth-child(1){left:9%;top:24%;animation-delay:-1s}.hero-fireflies i:nth-child(2){left:31%;top:72%;animation-delay:-4s;animation-duration:9s}.hero-fireflies i:nth-child(3){left:57%;top:18%;animation-delay:-2s;animation-duration:8s}.hero-fireflies i:nth-child(4){left:76%;top:40%;animation-delay:-5s}.hero-fireflies i:nth-child(5){left:91%;top:24%;animation-delay:-3s;animation-duration:10s}.hero-fireflies i:nth-child(6){left:63%;top:81%;animation-delay:-6s;animation-duration:8.5s}.hero-fireflies i:nth-child(7){left:44%;top:51%;animation-delay:-1.7s;animation-duration:10s}.hero-fireflies i:nth-child(8){left:85%;top:76%;animation-delay:-4.3s;animation-duration:7.7s}
.hero-banner::before{transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0) scale(1.025);will-change:transform}.hero-banner:hover::before{transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0) scale(1.05)}.hero-orbit-one{transform:translate3d(calc(var(--pointer-x,0px) * -.35),calc(var(--pointer-y,0px) * -.35),0)}.hero-orbit-two{transform:translate3d(calc(var(--pointer-x,0px) * .22),calc(var(--pointer-y,0px) * .22),0)}
.section{background-image:radial-gradient(circle at 8% 15%,#d8b66e0b 0 1px,transparent 1.5px);background-size:28px 28px}.about-copy .text-link,.source{transition:letter-spacing .25s ease,color .25s ease}.about-copy .text-link:hover,.source:hover{letter-spacing:.035em}.breed-grid article::before{content:"";display:block;width:34px;height:2px;background:linear-gradient(90deg,#d8b66e,transparent);margin-bottom:18px;transform:scaleX(.55);transform-origin:left;transition:transform .35s ease}.breed-grid article:hover::before{transform:scaleX(1)}
.spotlight{position:relative}.spotlight::before{content:"";position:absolute;width:250px;height:250px;left:35%;top:20%;border:1px solid #d8b66e33;border-radius:50%;animation:slow-spin 26s linear infinite;pointer-events:none}.gallery-section{position:relative;overflow:hidden}.gallery-section::before{content:"";position:absolute;width:520px;height:520px;border:1px dashed #d8b66e4a;border-radius:50%;right:-300px;top:50px;animation:slow-spin 42s linear infinite}.gallery-section::after{content:"";position:absolute;width:360px;height:360px;border:1px solid #143b2e24;border-radius:50%;left:-250px;bottom:30px;animation:breathing-ring 7s ease-in-out infinite}.gallery-section .container{position:relative;z-index:1}.gallery>a span{position:relative;overflow:hidden}.gallery>a span::after{content:"↗";position:absolute;right:14px;opacity:0;transform:translate(-8px,8px);transition:opacity .3s ease,transform .3s ease;color:#bf9349;font-size:1.1rem}.gallery>a:hover span b{opacity:0}.gallery>a:hover span::after{opacity:1;transform:none}
.contact::before{animation:contact-orbit 24s linear infinite}.contact::after{animation:contact-orbit 31s linear infinite reverse}.contact .actions{position:relative;z-index:1}.contact-details a{position:relative}.contact-details a::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:#dfc48c;transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.contact-details a:hover::after{transform:scaleX(1);transform-origin:left}
@keyframes firefly{0%,100%{opacity:.1;transform:translate3d(0,0,0) scale(.7)}45%{opacity:.95;transform:translate3d(18px,-32px,0) scale(1.2)}72%{opacity:.35;transform:translate3d(-12px,-11px,0) scale(.8)}}@keyframes slow-spin{to{transform:rotate(360deg)}}@keyframes breathing-ring{50%{transform:scale(1.08);opacity:.35}}@keyframes contact-orbit{to{transform:rotate(360deg)}}
@media(max-width:760px){.hero-fireflies i{width:4px;height:4px}.hero-fireflies i:nth-child(2),.hero-fireflies i:nth-child(5),.hero-fireflies i:nth-child(7){display:none}.spotlight::before{width:160px;height:160px;left:auto;right:-70px;top:8%}.gallery-section::before{width:330px;height:330px;right:-210px}.gallery-section::after{width:240px;height:240px;left:-160px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important}.hero-fireflies,.spotlight::before,.gallery-section::before,.gallery-section::after{display:none}.hero-banner::before,.hero-banner:hover::before{transform:none}.hero-orbit-one,.hero-orbit-two{transform:none}}

/* Entradas coordenadas e novos detalhes de movimento. */
.breed-grid.will-reveal{transform:translateY(24px) scale(.985)}.breed-grid.will-reveal.is-visible{transform:none}.breed-grid.is-visible article{animation:breed-card-arrival .68s cubic-bezier(.18,.83,.28,1) .08s both}.section-heading h2{position:relative}.section-heading h2::after{content:"";display:block;width:76px;height:2px;margin-top:16px;background:linear-gradient(90deg,transparent,#d8b66e,transparent);background-size:200% 100%;animation:golden-sheen 4.6s ease-in-out infinite}.about-copy{position:relative}.about-copy::before{content:"";position:absolute;left:-22px;top:7px;bottom:7px;width:1px;background:linear-gradient(#d8b66e00,#d8b66e,#d8b66e00);transform-origin:center;animation:quiet-pulse 3.8s ease-in-out infinite}.care-card{overflow:hidden}.care-card::after{content:"";position:absolute;inset:-1px;background:linear-gradient(115deg,transparent 36%,#f5d99522 50%,transparent 64%);transform:translateX(-130%);pointer-events:none}.care-card:hover::after{animation:card-glint .8s ease-out}.spotlight-copy .eyebrow{display:inline-flex;align-items:center;gap:9px}.spotlight-copy .eyebrow::before{content:"✦";color:#d8b66e;animation:soft-twinkle 2.8s ease-in-out infinite}.gallery-section .section-heading h2::after{animation-delay:-2.3s}.contact .section-heading h2::after{animation-delay:-1.3s}.contact-inner{position:relative}.contact-inner::after{content:"✦  ·  ✦  ·  ✦";position:absolute;right:2%;bottom:2px;color:#dfc48c66;font-size:.75rem;letter-spacing:13px;animation:star-drift 7s ease-in-out infinite;pointer-events:none}@keyframes breed-card-arrival{0%{opacity:0;transform:translateY(18px) scale(.97)}65%{opacity:1;transform:translateY(-3px) scale(1.01)}100%{opacity:1;transform:none}}@keyframes golden-sheen{0%,100%{background-position:100% 0;opacity:.42}50%{background-position:0 0;opacity:1}}@keyframes quiet-pulse{0%,100%{opacity:.35;transform:scaleY(.72)}50%{opacity:1;transform:scaleY(1)}}@keyframes card-glint{to{transform:translateX(130%)}}@keyframes soft-twinkle{0%,100%{opacity:.35;transform:scale(.8) rotate(0)}50%{opacity:1;transform:scale(1.16) rotate(45deg)}}@keyframes star-drift{0%,100%{opacity:.3;transform:translateX(0)}50%{opacity:.9;transform:translateX(-15px)}}@media(max-width:760px){.about-copy::before{left:-12px}.contact-inner::after{right:0;letter-spacing:8px}.section-heading h2::after{margin-top:12px}}@media(prefers-reduced-motion:reduce){.about-copy::before,.contact-inner::after{display:none}}

/* Arte exclusiva do gatil aplicada sem interferir na leitura da área de contato. */
.contact{background-color:#062117;background-image:linear-gradient(90deg,#062117f7 0%,#062117eb 34%,#062117a8 57%,#06211745 100%),url('assets/jardim-dos-anjos.webp');background-size:cover;background-position:center}.contact-inner{z-index:1}.contact-logo{position:relative;z-index:1}@media(max-width:760px){.contact{background-image:linear-gradient(0deg,#062117f7 0%,#062117df 38%,#06211762 100%),url('assets/jardim-dos-anjos.webp');background-position:72% center}}

/* Ícone de contato e revelação centralizada dos cartões da raça. */
.nav-contact{display:inline-flex;align-items:center;gap:10px}.nav-contact span{margin-left:0}.nav-contact .whatsapp-icon{width:17px;height:17px;flex:0 0 17px;transition:transform .25s ease}.nav-contact:hover .whatsapp-icon{transform:scale(1.12) rotate(-6deg)}.breed-grid.is-visible article{animation:breed-card-symmetric .68s cubic-bezier(.18,.83,.28,1) .08s both}@keyframes breed-card-symmetric{0%{opacity:0;clip-path:inset(0 50% 0 50%);filter:brightness(1.12)}65%{opacity:1;clip-path:inset(0 0 0 0);filter:brightness(1.03)}100%{opacity:1;clip-path:inset(0 0 0 0);filter:none}}@media(max-width:760px){.nav-contact{gap:8px}.nav-contact .whatsapp-icon{width:16px;height:16px;flex-basis:16px}}

/* Ajustes de ritmo da capa e destaque do contato. */
.hero-banner::before{transition:transform .32s cubic-bezier(.2,.8,.2,1)}.nav-contact .whatsapp-icon{width:24px;height:24px;flex-basis:24px}.nav-contact{gap:11px}@media(max-width:760px){.nav-contact .whatsapp-icon{width:21px;height:21px;flex-basis:21px}.nav-contact{gap:9px}}

/* Direção de movimento do Gatil Cidade dos Anjos. Regras reunidas aqui para
   substituir os efeitos antigos que disputavam as mesmas propriedades. */

/* Uma vinheta de marca atravessa a página sem capturar cliques. */
.site-intro{display:none}
.js .site-intro{display:grid;place-items:center;position:fixed;inset:0;z-index:40;pointer-events:none;overflow:hidden;background:radial-gradient(circle at 50% 46%,#123a2cd9 0%,#041b13e8 43%,#03160fd9 100%);animation:intro-veil 2.35s both}
.intro-sky{position:absolute;inset:0}
.intro-sky i{position:absolute;width:5px;height:5px;border-radius:50%;background:#f5d895;box-shadow:0 0 18px 4px #f5d895b0;animation:intro-star 1.35s ease-out both}
.intro-sky i:nth-child(1){left:17%;top:29%;animation-delay:.15s}
.intro-sky i:nth-child(2){left:31%;top:72%;animation-delay:.4s}
.intro-sky i:nth-child(3){left:72%;top:19%;animation-delay:.25s}
.intro-sky i:nth-child(4){left:82%;top:67%;animation-delay:.58s}
.intro-sky i:nth-child(5){left:56%;top:12%;animation-delay:.72s}
.intro-emblem{position:relative;display:grid;place-items:center;width:190px;height:190px;animation:intro-emblem 1.7s cubic-bezier(.18,.82,.22,1) both}
.intro-emblem::before{content:"";position:absolute;inset:10px;border-radius:50%;box-shadow:0 0 60px 22px #dbb96e38;animation:intro-halo 1.8s ease-out both}
.intro-emblem img{position:relative;width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 15px #f0d89288)}
.intro-orbit{position:absolute;inset:0;border:1px solid #e8cd8d;border-radius:50%;box-shadow:0 0 22px #dfc48c7a;clip-path:polygon(50% 50%,50% 0,100% 0,100% 100%,0 100%,0 0);animation:intro-ring 1.5s ease-in-out both}
.intro-orbit::after{content:"✦";position:absolute;right:8px;top:13px;color:#ffedbc;font-size:1.35rem}
@keyframes intro-veil{0%{opacity:0}12%{opacity:.92}64%{opacity:.88}100%{opacity:0;visibility:hidden}}
@keyframes intro-star{0%{opacity:0;transform:scale(.15)}45%{opacity:1;transform:scale(1.5)}100%{opacity:.15;transform:scale(.5)}}
@keyframes intro-emblem{0%{opacity:0;transform:scale(.74) rotate(-9deg)}28%,70%{opacity:1;transform:scale(1) rotate(0)}100%{opacity:0;transform:scale(1.08)}}
@keyframes intro-halo{0%{opacity:0;transform:scale(.5)}45%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.35)}}
@keyframes intro-ring{0%{opacity:0;transform:rotate(-140deg) scale(.55)}50%{opacity:1;transform:rotate(0) scale(1)}100%{opacity:.3;transform:rotate(52deg) scale(1.12)}}

/* O cabeçalho continua utilizável durante a apresentação. */
.js .brand{animation:header-enter .7s cubic-bezier(.2,.8,.2,1) .18s both}
.js .header nav:not(.is-open) a{animation:header-enter .55s cubic-bezier(.2,.8,.2,1) both}
.js .header nav a:nth-child(1){animation-delay:.3s}
.js .header nav a:nth-child(2){animation-delay:.39s}
.js .header nav a:nth-child(3){animation-delay:.48s}
.js .header nav a:nth-child(4){animation-delay:.57s}
.brand{position:relative}
.brand::before{content:"";position:absolute;left:-5px;top:50%;width:86px;height:86px;border:1px solid #c5a25e88;border-radius:50%;transform:translateY(-50%) scale(.8);opacity:0;pointer-events:none;transition:opacity .4s,transform .4s}
.brand:hover::before,.brand:focus-visible::before{opacity:1;transform:translateY(-50%) scale(1.12)}
.nav-contact .whatsapp-icon{animation:whatsapp-breathe 6.5s ease-in-out infinite}
@keyframes header-enter{from{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:none}}
@keyframes whatsapp-breathe{0%,80%,100%{transform:scale(1)}88%{transform:scale(1.2)}94%{transform:scale(1)}}

/* A capa abre com a cena, depois permanece viva com luz e profundidade. */
.js .hero-banner::before{animation:scene-reveal 1.22s cubic-bezier(.18,.82,.22,1) both,scene-light 16s ease-in-out 1.25s infinite}
.js .hero-copy>*{animation:hero-rise .7s cubic-bezier(.2,.8,.2,1) both}
.js .hero-copy .eyebrow{animation-delay:.5s}
.js .hero-copy h1{animation-delay:.67s}
.js .hero-copy .lead{animation-delay:.84s}
.js .hero-copy .actions{animation-delay:1.01s}
.js .hero-copy .hero-note{animation-delay:1.18s}
.hero-banner{--glow-x:-100px;--glow-y:-100px}
.hero-cursor-glow{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;background:radial-gradient(260px circle at var(--glow-x) var(--glow-y),#f4d89430,transparent 72%);transition:opacity .35s}
.hero-banner:hover .hero-cursor-glow{opacity:1}
.cursor-spark{position:absolute;z-index:2;width:5px;height:5px;border-radius:50%;background:#f9e2a9;box-shadow:0 0 12px 3px #f9d990;pointer-events:none;animation:cursor-spark .68s ease-out both}
.scroll-cue{position:absolute;left:50%;bottom:14px;z-index:2;color:#f5db9a;font-size:1.2rem;line-height:1;pointer-events:none;animation:scroll-cue 2.5s ease-in-out 1.2s infinite}
.hero-orbit-one{animation:orbit-one 13s ease-in-out infinite}
.hero-orbit-two{animation:orbit-two 18s ease-in-out infinite}
.hero-fireflies i:nth-child(even){animation-duration:5.7s}
@keyframes scene-reveal{from{clip-path:inset(0 0 0 100%);opacity:.5}to{clip-path:inset(0);opacity:1}}
@keyframes scene-light{50%{filter:brightness(1.055) saturate(1.055)}}
@keyframes cursor-spark{0%{opacity:.9;transform:translate(-50%,-50%) scale(.5)}100%{opacity:0;transform:translate(-50%,-21px) scale(1.5)}}
@keyframes scroll-cue{0%,100%{opacity:.45;transform:translate(-50%,0)}50%{opacity:1;transform:translate(-50%,7px)}}
@keyframes orbit-one{50%{transform:translate3d(calc(var(--pointer-x,0px) * -.35 - 12px),calc(var(--pointer-y,0px) * -.35 + 15px),0) rotate(8deg)}}
@keyframes orbit-two{50%{transform:translate3d(calc(var(--pointer-x,0px) * .22 + 10px),calc(var(--pointer-y,0px) * .22 - 11px),0) rotate(-6deg)}}

/* Reações táteis discretas, com luz no ponto exato do cursor. */
.button{--shine-x:50%;--shine-y:50%;--mag-x:0px;--mag-y:0px;transition:background .25s,color .25s,box-shadow .3s,transform .2s cubic-bezier(.2,.8,.2,1)}
.button::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(130px circle at var(--shine-x) var(--shine-y),#fff9db68,transparent 72%);opacity:0;transition:opacity .25s}
.button:hover::before,.button:focus-visible::before{opacity:1}
.button:hover{transform:translate3d(var(--mag-x),calc(var(--mag-y) - 2px),0)}
.button:active{transform:translateY(1px) scale(.98)}
.text-link{transition:color .25s,letter-spacing .25s,border-color .25s,background-size .3s;background-image:linear-gradient(#caa95e,#caa95e);background-repeat:no-repeat;background-position:left bottom;background-size:0 1px}
.text-link:hover,.text-link:focus-visible{background-size:100% 1px}

/* A faixa e os textos entram em compassos próprios. */
.qualities .container{position:relative;z-index:1}
.qualities span.will-reveal,.qualities i.will-reveal{transition-duration:.65s}
.about::before{content:"";position:absolute;width:115px;height:150px;right:3%;top:12%;border:1px solid #c6a96550;border-radius:70% 10% 70% 10%;transform:rotate(-26deg);pointer-events:none;animation:leaf-sway 9s ease-in-out infinite}
.about > div:first-child.will-reveal{transform:translateX(-25px)}
.about > div:nth-child(2).will-reveal{transform:translateX(25px)}
.about > div.will-reveal.is-visible{transform:none}
.about h2 em{position:relative}
.about-copy::before{animation:quiet-pulse 3.8s ease-in-out infinite}
@keyframes leaf-sway{50%{transform:translate(8px,-10px) rotate(-18deg);opacity:.45}}

/* Abertura central e simétrica, sem deslocar o texto dos cartões. */
.breed-grid.will-reveal{transform:none}
.breed-grid.will-reveal.is-visible{transform:none}
.breed-grid.is-visible article{animation:breed-card-symmetric .72s cubic-bezier(.18,.83,.28,1) .08s both}
.breed-grid article{position:relative;isolation:isolate;--card-x:50%;--card-y:50%;transition:background .3s,box-shadow .3s,border-color .3s}
.breed-grid article::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border:1px solid #d7b66e00;background:radial-gradient(250px circle at var(--card-x) var(--card-y),#e7c77a2e,transparent 70%);opacity:0;transition:opacity .3s,border-color .3s}
.breed-grid article:hover,.breed-grid article:focus-within{transform:none;background:#fcfbf3;box-shadow:0 16px 32px #143b2e17}
.breed-grid article:hover::after,.breed-grid article:focus-within::after{opacity:1;border-color:#d7b66e66}
.breed-grid article:hover::before{transform:scaleX(1)}
.care>div>p{position:relative;padding-left:13px;border-left:1px solid #c5a25e80;transition:background .3s,box-shadow .3s}
.care>div>p:hover{background:#fffdf2;box-shadow:10px 0 20px #d8b66e10}

/* Moldura do destaque, sem interferir na fotografia. */
.spotlight figure{position:relative;--img-x:0px;--img-y:0px;--card-x:50%;--card-y:50%;transition:opacity .7s,transform .7s,clip-path .8s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.spotlight figure.will-reveal{clip-path:inset(0 46% 0 46%)}
.spotlight figure.will-reveal.is-visible{clip-path:inset(0)}
.spotlight figure::after{content:"";position:absolute;inset:5px;border:1px solid #e9cb87a8;pointer-events:none;opacity:.45;transition:inset .4s,opacity .4s,box-shadow .4s}
.spotlight figure:hover::after{inset:12px;opacity:1;box-shadow:inset 0 0 18px #e9cb8740}
.spotlight figure:hover img{transform:scale(1.045) translate3d(var(--img-x),var(--img-y),0);filter:saturate(1.06)}
.spotlight-copy>*{transition-duration:.7s}

/* Fotos alternam a direção da entrada e respondem ao mouse. */
.gallery>a{position:relative;--img-x:0px;--img-y:0px;--card-x:50%;--card-y:50%;transition:opacity .75s,transform .75s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s}
.gallery>a.will-reveal:nth-child(odd){transform:translate3d(-22px,15px,0)}
.gallery>a.will-reveal:nth-child(even){transform:translate3d(22px,15px,0)}
.gallery>a.will-reveal.is-visible{transform:none}
.gallery>a::before{content:"";position:absolute;inset:0;z-index:2;border:1px solid #e0c17a00;box-shadow:inset 0 0 24px #e9c98600;background:radial-gradient(240px circle at var(--card-x) var(--card-y),#fff5cd19,transparent 70%);pointer-events:none;transition:border-color .3s,box-shadow .3s}
.gallery>a:hover::before,.gallery>a:focus-visible::before{border-color:#e0c17abb;box-shadow:inset 0 0 24px #e9c98644}
.gallery>a:hover{transform:translateY(-4px);box-shadow:0 13px 28px #143b2e22}
.gallery>a:hover img{transform:scale(1.065) translate3d(var(--img-x),var(--img-y),0)}
.gallery>a:active{transform:scale(.985)}
.lightbox[open]{animation:dialog-arrive .34s cubic-bezier(.2,.8,.2,1) both}
.lightbox[open]::backdrop{animation:backdrop-arrive .34s ease both}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(16px) scale(.975)}to{opacity:1;transform:none}}
@keyframes backdrop-arrive{from{opacity:0}to{opacity:1}}

/* O jardim fecha a visita com estrelas, reflexos e movimento calmo. */
.contact{isolation:isolate}
.contact-sky{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.contact-sky::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 15%,#eed5980b 51%,transparent 82%);animation:contact-glimmer 10s ease-in-out infinite}
.contact-sky i{position:absolute;width:5px;height:5px;border-radius:50%;background:#f8dba0;box-shadow:0 0 13px 3px #f0cf8b88;animation:contact-star 4.5s ease-in-out infinite}
.contact-sky i:nth-child(1){left:12%;top:16%}
.contact-sky i:nth-child(2){left:63%;top:19%;animation-delay:-1.2s}
.contact-sky i:nth-child(3){left:85%;top:54%;animation-delay:-3s}
.contact-sky i:nth-child(4){left:36%;top:78%;animation-delay:-2.2s}
.contact-sky i:nth-child(5){left:93%;top:13%;animation-delay:-.6s}
.contact-inner{position:relative;z-index:1}
.contact-logo{animation:logo-drift 6s ease-in-out infinite}
.contact .gold{box-shadow:0 0 0 0 #e7cb8940;animation:contact-call 6s ease-in-out infinite}
@keyframes contact-star{0%,100%{opacity:.2;transform:scale(.55)}48%{opacity:.9;transform:scale(1.15)}}
@keyframes contact-glimmer{0%,100%{opacity:.15;transform:translateX(-18%)}50%{opacity:.7;transform:translateX(18%)}}
@keyframes contact-call{0%,82%,100%{box-shadow:0 0 0 0 #e7cb8900}89%{box-shadow:0 0 0 9px #e7cb8929}}

/* O rodapé aparece uma vez e mantém os links legíveis. */
.footer-inner.will-reveal{transition-duration:.85s}
.footer-inner a{background-image:linear-gradient(#dfc48c,#dfc48c);background-size:0 1px;background-position:left bottom;background-repeat:no-repeat;transition:color .25s,background-size .35s,transform .25s}
.footer-inner a:hover,.footer-inner a:focus-visible{background-size:100% 1px}

@media(max-width:1050px){
  .scroll-cue{display:none}
  .brand::before{width:66px;height:66px}
}
@media(max-width:760px){
  .js .site-intro{animation-duration:1.8s}
  .intro-emblem{width:150px;height:150px}
  .intro-emblem img{width:100px;height:100px}
  .js .hero-banner::before{animation:scene-reveal .9s ease-out both}
  .js .hero-copy .eyebrow{animation-delay:.25s}
  .js .hero-copy h1{animation-delay:.37s}
  .js .hero-copy .lead{animation-delay:.49s}
  .js .hero-copy .actions{animation-delay:.61s}
  .hero-cursor-glow,.cursor-spark{display:none}
  .hero-fireflies i:nth-child(n+5){display:none}
  .about::before{width:64px;height:90px;right:1%;top:9%}
  .about > div:first-child.will-reveal,.about > div:nth-child(2).will-reveal{transform:translateY(16px)}
  .about > div.will-reveal.is-visible{transform:none}
  .breed-grid article:hover,.gallery>a:hover{transform:none}
  .spotlight figure:hover img,.gallery>a:hover img{transform:none;filter:none}
  .contact-sky i:nth-child(n+4){display:none}
  .contact-logo{animation:none}
  .js .header nav.is-open a{animation:header-enter .35s ease-out both}
}
@media(prefers-reduced-motion:reduce){
  .site-intro,.hero-cursor-glow,.cursor-spark,.scroll-cue,.contact-sky{display:none!important}
  .will-reveal,.will-reveal.is-visible{opacity:1!important;transform:none!important;clip-path:none!important}
  .breed-grid article,.gallery>a,.spotlight figure,.hero-banner::before{clip-path:none!important;filter:none!important}
  .button,.gallery>a,.spotlight figure img{transform:none!important}
}
