/* TACCA | Locação de estúdios — identidade editorial alinhada ao site principal */
:root{--ink:#1c1815;--bg:#f4f0e9;--paper:#faf8f3;--mut:#7a7064;--line:rgba(28,24,21,.15);--accent:#9a7b4f;--gold:#c9a86d;--night:#24201d}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Jost',Arial,Helvetica,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}
a{color:inherit} img{max-width:100%;display:block}
.serif,h1,h2,h3{font-family:'Cormorant',Georgia,serif;font-weight:500}
.eyebrow{color:var(--accent);font-size:11px;font-weight:500;letter-spacing:.26em;text-transform:uppercase}
.container{width:min(1380px,88vw);margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:26px;padding:17px 6vw;background:rgba(244,240,233,.93);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.site-logo img{width:auto;height:30px}
.site-nav{display:flex;gap:clamp(13px,1.5vw,27px);align-items:center}
.site-nav a{text-decoration:none;font-weight:300;font-size:11px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;color:var(--mut);transition:color .3s}
.site-nav a:hover,.site-nav a.active{color:var(--accent)}
.site-nav .contact{border:1px solid var(--ink);border-radius:50px;padding:11px 20px;color:var(--ink)}
.mobile-menu{display:none}
.mobile-menu summary{cursor:pointer;list-style:none;padding:10px 12px;text-transform:uppercase;font-size:11px;letter-spacing:.2em}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu[open] nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);display:flex;flex-direction:column;padding:22px 6vw 38px;gap:22px;box-shadow:0 20px 30px rgba(0,0,0,.09)}
.mobile-menu nav a{text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.13em}
section{padding:clamp(72px,8vw,124px) 0}
.hero{min-height:640px;padding:90px 0 110px;background:var(--night);color:var(--paper);position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:-35% -10% auto auto;width:74vw;height:74vw;max-width:950px;max-height:950px;border:1px solid rgba(201,168,109,.11);border-radius:50%;transform:translate(12%,-32%)}
.hero:after{content:"";position:absolute;bottom:-390px;right:-210px;width:900px;height:650px;border:1px solid rgba(201,168,109,.12);border-radius:50%;pointer-events:none}
.hero .container{position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(36px,6vw,94px);align-items:center}
.hero h1{font-size:clamp(52px,6.7vw,106px);letter-spacing:-.018em;line-height:.93;margin:22px 0 30px;max-width:12ch}
.hero h1 em{color:var(--gold);font-weight:400}
.hero p{max-width:55ch;font-size:16px;line-height:1.9;color:#dbd3c9;margin:0 0 35px}
.hero .eyebrow{color:var(--gold)}
.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.btn{background:var(--paper);color:var(--ink);padding:16px 28px;display:inline-flex;gap:12px;align-items:center;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:500;border-radius:50px;border:1px solid transparent;transition:transform .2s,background .2s}
.btn:hover{transform:translateY(-2px);background:#e9dfce}
.btn-ghost{background:transparent;border-color:rgba(250,248,243,.38);color:var(--paper)}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-dark{background:var(--ink);color:var(--paper)}
.btn-dark:hover{background:#3a3029}
.hero-note{font-size:11px;letter-spacing:.13em;color:var(--gold);text-transform:uppercase}
.hero-art{min-height:500px;display:flex;justify-content:center;align-items:center;position:relative}
.arch-art{width:100%;max-width:470px;aspect-ratio:4/5;position:relative;border:1px solid rgba(250,248,243,.18);background:linear-gradient(141deg,#51473e 0%,#292622 47%,#161513 100%);overflow:hidden}
.arch-art:before{content:"";position:absolute;top:11%;left:14%;width:71%;height:68%;border:1px solid rgba(241,227,205,.56);border-radius:45% 45% 0 0/40% 40% 0 0;box-shadow:0 0 0 20px rgba(237,220,191,.045),0 0 0 42px rgba(237,220,191,.045)}
.arch-art:after{content:"";position:absolute;bottom:0;left:0;right:0;height:24%;background:linear-gradient(145deg,#8d8070,#4c453d);clip-path:polygon(0% 45%,50% 10%,100% 45%,100% 100%,0 100%)}
.arch-art .art-number{position:absolute;z-index:2;bottom:8%;left:8%;font-family:'Cormorant',Georgia,serif;color:#eee2d4;font-size:clamp(90px,10vw,174px);line-height:.72;letter-spacing:-.08em}
.arch-art .art-label{position:absolute;z-index:2;top:7%;left:8%;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#e4d6c3}
.arch-art .art-corner{position:absolute;z-index:2;bottom:8%;right:8%;font-size:11px;letter-spacing:.13em;color:#dfd1be;text-transform:uppercase}
.creator-art{background:radial-gradient(circle at 53% 35%,rgba(211,180,135,.22),transparent 45%),linear-gradient(150deg,#51483d,#28231e 63%,#151413)}
.creator-art .light{position:absolute;height:240px;width:140px;border:1px solid rgba(241,225,199,.8);left:calc(50% - 70px);top:14%;border-radius:90px 90px 12px 12px;box-shadow:0 0 35px rgba(213,191,151,.22),inset 0 0 36px rgba(218,197,162,.15)}
.creator-art .light:before{content:"";position:absolute;width:1px;height:150px;background:rgba(239,222,194,.4);left:50%;bottom:-150px}
.creator-art .light:after{content:"";position:absolute;width:100px;height:1px;background:rgba(239,222,194,.4);left:calc(50% - 50px);bottom:-150px}
.creator-art .art-number{font-size:clamp(61px,6vw,110px);letter-spacing:-.04em;bottom:12%}
.creator-art .art-corner{bottom:7%}
.hairline{height:1px;background:var(--line)}
.section-head{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:42px}
.section-head h2,h2.section-title{font-size:clamp(41px,5vw,72px);line-height:1.02;letter-spacing:-.018em;margin:14px 0 0;max-width:15ch}
.section-head p{margin:0;max-width:43ch;font-size:15px;color:var(--mut);line-height:1.85}
.lead{font-size:18px;line-height:1.95;color:#5f564b;max-width:73ch}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:36px 0;border-bottom:1px solid var(--line)}
.stat{border-left:1px solid var(--line);padding-left:26px}
.stat:first-child{border-left:0;padding-left:0}
.stat strong{display:block;font-family:'Cormorant',Georgia,serif;font-size:clamp(42px,4.5vw,72px);font-weight:500;line-height:1;color:var(--ink)}
.stat span{display:block;max-width:23ch;font-size:13px;line-height:1.65;color:var(--mut);margin-top:9px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.feature{padding:clamp(28px,3vw,45px);background:var(--paper);min-height:215px}
.feature small{font-size:11px;letter-spacing:.18em;color:var(--accent)}
.feature h3{font-size:30px;margin:32px 0 10px;line-height:1.05}
.feature p{margin:0;color:var(--mut);font-size:14px;line-height:1.75}
.paper{background:var(--paper)}
.dark{background:var(--ink);color:var(--paper)}
.dark .section-head p,.dark .lead{color:#d8cfc4}
.dark .eyebrow{color:var(--gold)}
.types{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.type{display:block;text-decoration:none;border:1px solid var(--line);padding:48px;transition:transform .2s,border-color .2s;background:var(--bg)}
.type:hover{border-color:var(--accent);transform:translateY(-3px)}
.type small{display:block;text-transform:uppercase;color:var(--accent);letter-spacing:.22em;font-size:11px}
.type h3{font-size:clamp(35px,3.8vw,54px);margin:60px 0 16px;line-height:1}
.type p{color:var(--mut);font-size:15px;max-width:40ch;line-height:1.8}
.type .arrow{font-size:12px;text-transform:uppercase;letter-spacing:.16em;border-bottom:1px solid var(--ink);padding-bottom:6px}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:24px 0}
.faq-list summary{list-style:none;cursor:pointer;font-size:18px;font-weight:400;display:flex;justify-content:space-between;gap:18px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";font-size:24px;font-weight:300;color:var(--accent)}
.faq-list details[open] summary:after{content:"−"}
.faq-list p{color:var(--mut);max-width:76ch;line-height:1.85;font-size:14.5px;margin:12px 0 0}
.location{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.location .address{font-size:15px;line-height:1.9;color:var(--mut)}
.location .address strong{font-weight:500;color:var(--ink)}
.location-card{border:1px solid var(--line);padding:38px;background:var(--paper)}
.location-card h3{font-size:34px;margin:0 0 14px}
.location-card p{font-size:14px;line-height:1.8;color:var(--mut)}
.cta{padding:clamp(84px,10vw,160px) 0;text-align:center}
.cta h2{font-size:clamp(52px,7vw,104px);line-height:.95;letter-spacing:-.02em;max-width:13ch;margin:25px auto}
.cta h2 em{color:var(--gold)}
.cta p{font-size:16px;line-height:1.85;color:#d8cfc4;max-width:50ch;margin:0 auto 35px}
.footer{padding:67px 0 38px;background:var(--paper);border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:60px}
.footer h4{font-size:11px;letter-spacing:.22em;text-transform:uppercase;margin:0 0 20px}
.footer p,.footer a{font-size:13px;line-height:1.9;color:var(--mut);text-decoration:none}
.footer a{display:block}
.footer a:hover{color:var(--accent)}
.footer .site-logo{display:inline-block;margin-bottom:13px}
.footer-bottom{border-top:1px solid var(--line);margin-top:40px;padding-top:24px;display:flex;justify-content:space-between;gap:20px;color:var(--mut);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.float-cta{position:fixed;z-index:40;bottom:23px;right:23px;background:var(--ink);color:var(--paper);border-radius:50px;text-decoration:none;padding:15px 22px;letter-spacing:.13em;font-size:11px;text-transform:uppercase;box-shadow:0 12px 30px rgba(0,0,0,.17)}
.art-caption{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(250,248,243,.58);margin-top:15px;text-align:right}
@media(max-width:1080px){.site-nav{display:none}.mobile-menu{display:block}.hero-grid{grid-template-columns:1fr 0.8fr}.hero-art{min-height:400px}.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){section{padding:72px 0}.hero{min-height:0;padding:80px 0}.hero-grid,.location{grid-template-columns:1fr;gap:45px}.hero h1{font-size:clamp(53px,11vw,74px)}.hero-art{min-height:0}.arch-art{max-width:490px;aspect-ratio:7/5}.arch-art .art-number{font-size:105px}.section-head{display:block}.section-head p{margin-top:23px}.stats{grid-template-columns:1fr;gap:0}.stat{padding:18px 0 18px 20px;border-left:1px solid var(--line)!important;border-bottom:1px solid var(--line)}.feature-grid,.types,.footer-grid{grid-template-columns:1fr}.type{padding:34px}.type h3{margin-top:34px}.footer-grid{gap:22px}.footer-bottom{display:block}.float-cta{right:14px;bottom:14px;padding:13px 16px}.creator-art .art-number{font-size:68px}}

/* Fotografias reais do estúdio — galeria editorial */
.hero-photo{display:block;position:relative;width:100%;max-width:510px;aspect-ratio:4/5;overflow:hidden;border:1px solid rgba(250,248,243,.22);margin:0}
.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 46%}
.hero-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:46px 24px 22px;background:linear-gradient(transparent,rgba(18,17,15,.7));font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:#faf8f3}
.gallery-intro{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:36px}
.gallery-intro p{max-width:48ch;color:var(--mut);font-size:14px;line-height:1.8}
.photo-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.photo-gallery figure{margin:0;min-width:0;overflow:hidden}
.photo-gallery .photo{aspect-ratio:4/5;overflow:hidden;background:#e7e1d5}
.photo-gallery figure:nth-child(1),.photo-gallery figure:nth-child(6){grid-column:span 2}
.photo-gallery figure:nth-child(1) .photo,.photo-gallery figure:nth-child(6) .photo{aspect-ratio:1.6}
.photo-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.photo-gallery figure:hover img{transform:scale(1.045)}
.photo-gallery figcaption{padding:13px 0 20px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--mut)}
@media(max-width:760px){.hero-photo{max-width:520px;aspect-ratio:5/4}.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-gallery figure:nth-child(1),.photo-gallery figure:nth-child(6){grid-column:span 2}.gallery-intro{display:block}}


/* Refinamento editorial: locação do estúdio fotográfico
   Tamanho de imagem e ritmo visual próprios; sem alterar a landing de UGC. */
.studio-rental .hero{min-height:0;padding:clamp(42px,5vw,70px) 0;background:#24201d}
.studio-rental .hero-grid{grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:clamp(30px,5vw,68px)}
.studio-rental .hero h1{font-size:clamp(43px,4.5vw,70px);max-width:15ch;line-height:1.02;letter-spacing:-.015em;margin:16px 0 20px}
.studio-rental .hero p{font-size:14.5px;line-height:1.7;max-width:55ch;margin-bottom:22px}
.studio-rental .hero .hero-note{margin:24px 0 0!important;font-size:10px;letter-spacing:.15em;color:var(--gold)}
.studio-rental .hero .eyebrow{font-size:10px;letter-spacing:.22em}
.studio-rental .hero-art{min-height:0;align-self:center;justify-content:flex-end}
.studio-rental .hero-photo{width:100%;max-width:450px;max-height:310px;aspect-ratio:1.53;border-color:rgba(250,248,243,.15)}
.studio-rental .hero-photo img{object-position:center 70%}
.studio-rental .hero-photo figcaption{padding:36px 17px 15px;font-size:9.5px}
.studio-rental .hero .btn{padding:13px 19px;font-size:10px}
.studio-rental main>section:not(.hero):not(.cta){padding:clamp(55px,6vw,85px) 0}
.studio-rental .section-head{margin-bottom:28px}
.studio-rental .section-head h2,.studio-rental h2.section-title{font-size:clamp(37px,4.4vw,61px)}
.studio-rental .feature{padding:clamp(22px,2.4vw,34px);min-height:167px}
.studio-rental .feature h3{font-size:27px;margin:21px 0 8px}
.studio-rental .feature p{font-size:13.5px}
.studio-rental .rental-photo-story{margin-top:clamp(32px,4.5vw,60px);padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--line);scroll-margin-top:110px}
.studio-rental .rental-photo-story-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:22px}
.studio-rental .rental-photo-story-head h3{font-size:clamp(27px,3.1vw,43px);line-height:1.05;margin:9px 0 0}
.studio-rental .rental-photo-story-head p{max-width:48ch;margin:0;color:var(--mut);font-size:13.5px;line-height:1.72}
.studio-rental .rental-mini-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.4vw,20px)}
.studio-rental .rental-mini-thumbs figure{margin:0;min-width:0}
.studio-rental .rental-mini-thumbs .rental-image{width:100%;height:clamp(145px,14vw,215px);overflow:hidden;background:#e3dfd5}
.studio-rental .rental-mini-thumbs img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.studio-rental .rental-mini-thumbs figure:hover img{transform:scale(1.035)}
.studio-rental .rental-mini-thumbs figcaption{padding:12px 0 0;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--mut);font-weight:400}
@media(max-width:980px){
  .studio-rental .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:24px}
  .studio-rental .hero h1{font-size:clamp(43px,5.4vw,60px)}
  .studio-rental .hero-photo{max-height:260px;aspect-ratio:1.35}
}
@media(max-width:760px){
  .studio-rental .hero{padding:45px 0 50px}
  .studio-rental .hero-grid{grid-template-columns:1fr;gap:30px}
  .studio-rental .hero h1{font-size:clamp(43px,9.5vw,62px);max-width:15ch}
  .studio-rental .hero-photo{max-width:100%;max-height:245px;aspect-ratio:1.65}
  .studio-rental .hero-art{justify-content:flex-start}
  .studio-rental .rental-photo-story-head{display:block}
  .studio-rental .rental-photo-story-head p{margin-top:14px}
  .studio-rental .rental-mini-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .studio-rental .rental-mini-thumbs .rental-image{height:clamp(120px,37vw,190px)}
  .studio-rental .rental-mini-thumbs figure:last-child:nth-child(odd){grid-column:span 2}
  .studio-rental .rental-mini-thumbs figure:last-child:nth-child(odd) .rental-image{height:185px}
}
