:root{--bg:#faf9f6;--ink:#30332d;--muted:#77766d;--line:#dcdcd3}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #756745;outline-offset:7px}header{height:134px;padding:28px 3%;display:flex;align-items:center;justify-content:space-between}.logo{width:208px;height:auto;display:block}.header-note,.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:400}.header-note{color:var(--muted)}#menu-toggle{background:none;border:0;cursor:pointer;font-size:14px;letter-spacing:.08em;padding:12px 0 12px 20px}#menu{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:35px 3%;display:flex;gap:45px;align-items:center}#menu[hidden]{display:none}#menu a{font:32px Georgia,serif}#menu span{margin-left:auto;font-size:14px;color:var(--muted)}main{padding:0 3%}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 26px;padding-top:20px}.cover{width:100%;height:clamp(350px,43vw,680px);object-fit:cover;display:block;transition:filter .5s}.project-card:hover .cover{filter:brightness(.93)}.caption{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.caption h2{font:italic 20px Georgia,serif;margin:0}.caption span{font-size:22px}.location{font-size:12px;color:var(--muted);margin:2px 0 0}.card-3{grid-column:1/-1}.card-3 .cover{height:auto;max-height:670px;object-fit:cover;aspect-ratio:2.25}.closing{padding:100px 0 105px;display:flex;justify-content:space-between;align-items:flex-end}.closing p{font:44px/1.2 Georgia,serif;margin:0}em{font-weight:normal}.text-link{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:8px;display:inline-block}.text-link span{margin-left:40px}footer{background:#eeede7;padding:55px 3% 20px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}footer img{max-width:180px;height:auto}footer p,footer a{font-size:14px}footer p{line-height:1.8}footer>div>a{display:block;margin:8px 0}footer .eyebrow{display:block;margin-bottom:22px}.footer-bottom{grid-column:1/-1;border-top:1px solid #d4d4cb;margin-top:28px;padding-top:18px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.project-top{display:flex;justify-content:space-between;align-items:center;padding-top:25px}.project-title{font:normal clamp(45px,6vw,90px)/1.1 Georgia,serif;margin:38px 0}.project-hero{width:100%;height:auto;max-height:85vh;object-fit:contain;display:block}.project-intro{display:grid;grid-template-columns:1fr 1.6fr;padding:65px 4%;gap:70px}.project-intro>p{font:28px/1.5 Georgia,serif;margin:0}.small{font-size:14px;color:var(--muted)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.gallery figure{margin:0}.gallery img{display:block;width:100%;height:auto}.gallery .wide{grid-column:1/-1}.next-project{display:flex;flex-direction:column;align-items:flex-end;padding:80px 0;gap:18px}.next-project>span:last-child{font:42px Georgia,serif}.studio-head{padding:70px 0}.studio-head h1,.contact h1{font:normal clamp(40px,4.7vw,70px)/1.2 Georgia,serif;margin:25px 0}.studio-split{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.studio-split>img{width:100%;height:650px;object-fit:cover}.studio-split h2,.services h2{font:normal 38px/1.2 Georgia,serif}.studio-split p{max-width:480px;color:#5b5c55}.studio-split .text-link{margin-top:22px}.services{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:100px 0}.services p{padding:16px 0;margin:0;border-bottom:1px solid var(--line)}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;padding:65px 0 100px;align-items:center}.contact p{color:#66685f}.contact-img{width:100%;height:620px;object-fit:cover}.email{display:inline-block;font:clamp(20px,2.4vw,34px) Georgia,serif;border-bottom:1px solid;padding:12px 0;margin:24px 0}.address{font-size:14px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1800px){main,header,footer{padding-left:5%;padding-right:5%}}@media(max-width:760px){header{height:110px;padding:24px 6%}.logo{width:165px}.header-note{display:none}main{padding:0 5%}.project-grid{grid-template-columns:1fr;gap:32px;padding-top:0}.cover{height:auto;aspect-ratio:4/5}.card-3{grid-column:auto}.card-3 .cover{aspect-ratio:4/5;max-height:none;height:auto}.closing{padding:65px 0;display:block}.closing p{font-size:34px}.closing a{margin-top:25px}footer{grid-template-columns:1fr 1fr;padding:40px 6% 20px}.footer-intro{grid-column:1/-1}.footer-bottom{gap:20px;font-size:12px}#menu{flex-direction:column;align-items:flex-start;gap:20px;padding:25px 6%}#menu span{margin:0}.project-top{gap:24px}.project-top .eyebrow{font-size:12px;text-align:right}.project-intro{grid-template-columns:1fr;gap:20px;padding:35px 0}.project-intro>p{font-size:23px}.gallery{grid-template-columns:1fr;gap:20px}.gallery .wide{grid-column:auto}.next-project>span:last-child{font-size:32px}.studio-head{padding:35px 0}.studio-split,.services,.contact{grid-template-columns:1fr;gap:35px}.studio-split>img,.contact-img{height:auto}.studio-split h2,.services h2{font-size:30px}.services{padding:55px 0}.contact{padding:35px 0 55px}.contact br{display:none}.contact h1{max-width:500px}.contact .address{line-height:2}.project-title{margin:30px 0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Definitive ARKIUM identity and portfolio rhythm */
.logo{width:232px;max-width:100%;height:auto}
.portfolio-heading{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding:18px 0 4px;font-size:13px;color:var(--muted)}
.project-grid{gap:48px 28px}.caption{margin-top:16px}.caption h2{font-size:23px}.location{font-size:13px}.caption span{transition:transform .25s}.project-card:hover .caption span{transform:rotate(90deg)}
.footer-intro img{display:block;width:190px;max-width:100%}.footer-intro p{margin-top:24px}.email{overflow-wrap:anywhere}footer>div{min-width:0}footer a{overflow-wrap:anywhere}
@media(max-width:760px){.logo{width:190px}.portfolio-heading{font-size:12px;padding:14px 0 22px}.portfolio-heading span:last-child{display:none}.project-grid{gap:36px}.caption h2{font-size:22px}.closing p{font-size:clamp(30px,8vw,40px)}.footer-bottom{flex-wrap:wrap}}

/* Full-screen brand entrance */
.entry-page{background:#e8e3da}
.entry-main{padding:0;min-height:100svh}
.entry-link{position:relative;isolation:isolate;display:flex;min-height:100svh;width:100%;padding:44px 7%;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;background:radial-gradient(ellipse at 22% 18%,#faf8f1 0%,transparent 59%),radial-gradient(ellipse at 88% 87%,#b9ad9b 0%,transparent 65%),linear-gradient(125deg,#eae5db,#ded7ca);color:#30332d}
.entry-link:focus-visible{outline:3px solid #63513d;outline-offset:-12px}
.entry-location{font-size:12px;letter-spacing:.2em;line-height:1.8}
.entry-brand{width:min(100%,1000px);margin:70px 0;animation:entry-reveal 1s ease-out both}
.entry-brand h1{margin:0;line-height:1}.entry-brand img{display:block;width:100%;height:auto}
.entry-brand p{font-size:clamp(14px,2.2vw,25px);font-weight:400;letter-spacing:.22em;margin:30px 0 0;line-height:1.7}
.entry-invite{display:flex;gap:24px;align-items:center;font-size:14px;letter-spacing:.07em;padding:12px 0;border-bottom:1px solid #726b60}
.entry-invite span{font-size:23px;transition:transform .3s ease}.entry-link:hover .entry-invite span{transform:translate(3px,-3px)}
@keyframes entry-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.entry-link{padding:30px 7%}.entry-location{font-size:12px;letter-spacing:.12em}.entry-brand p{letter-spacing:.1em;margin-top:20px}.entry-brand{margin:60px 0}}
@media(prefers-reduced-motion:reduce){.entry-brand{animation:none}}

/* Gentle entrance-to-portfolio fade, with keyboard and reduced-motion support. */
html{background:var(--bg)}
.entry-page{transition:opacity .5s ease}
.entry-page.leaving-entry{opacity:0;pointer-events:none}
.arriving-from-entry body{animation:portfolio-reveal .85s ease-out both}
@keyframes portfolio-reveal{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.entry-page{transition:none}.arriving-from-entry body{animation:none}}

.preview-banner{padding:18px;background:#eee9de;border:1px solid #d0c7b5;font-size:14px}.preview-banner a{text-decoration:underline;margin-left:15px}

.footer-bottom .private-access{font-size:14px;margin:0;line-height:1.6}.private-access:hover{text-decoration:underline;text-underline-offset:4px}

/* Project portfolio: warm paper, large images and asymmetric editorial rhythm. */
.portfolio-page{background:#eee9df;color:#30332d}
.portfolio-page header{background:radial-gradient(ellipse at 12% 0%,#faf8f1,transparent 75%);height:130px;padding-left:5%;padding-right:5%}
.portfolio-page main{padding:0 5%}
.portfolio-intro{border-top:1px solid #ccc5b8;padding:32px 0 38px;display:flex;align-items:flex-end;justify-content:space-between;gap:25px}
.portfolio-intro .eyebrow{font-size:12px;letter-spacing:.16em;color:#68665e}
.portfolio-intro h1{font:normal clamp(32px,3.7vw,58px)/1.15 Georgia,serif;letter-spacing:-.035em;margin:14px 0 0}
.portfolio-intro h1 span{font-style:italic;color:#746e61}
.portfolio-intro>p{font-size:14px;color:#68665e;margin:0 0 4px}
.editorial-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:5%;row-gap:85px;align-items:start}
.editorial-project{display:block;min-width:0}.editorial-project.layout-0{grid-column:1/-1}.editorial-project.layout-1{grid-column:1/8}.editorial-project.layout-2{grid-column:8/-1;margin-top:135px}
.editorial-image{position:relative;overflow:hidden;background:#ded7ca}
.editorial-cover{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.65,.3,1)}
.layout-0 .editorial-image{aspect-ratio:1.95;max-height:740px}.layout-1 .editorial-image{aspect-ratio:1.12}.layout-2 .editorial-image{aspect-ratio:.83}
.project-open{position:absolute;bottom:22px;right:24px;display:flex;gap:25px;align-items:center;padding:10px 15px;background:#f6f2e9;color:#30332d;font-size:14px;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}
.editorial-project:hover .editorial-cover,.editorial-project:focus-visible .editorial-cover{transform:scale(1.025)}
.editorial-project:hover .project-open,.editorial-project:focus-visible .project-open{opacity:1;transform:none}
.editorial-caption{display:flex;gap:19px;align-items:baseline;padding:22px 0 0;border-bottom:1px solid #d2cbbf;padding-bottom:21px}
.project-number{font-size:12px;color:#777166;letter-spacing:.05em}.editorial-caption h2{font:normal clamp(25px,2.5vw,38px)/1.15 Georgia,serif;letter-spacing:-.025em;margin:0}
.editorial-caption p{font-size:14px;color:#6b675e;margin:9px 0 0}.project-arrow{margin-left:auto;font-size:25px;font-weight:normal}
.editorial-closing{padding:110px 0 100px;margin-top:80px;border-top:1px solid #ccc5b8;background:transparent;text-align:center}
.editorial-closing>p{font:normal clamp(36px,4.5vw,65px)/1.15 Georgia,serif;letter-spacing:-.025em;margin:26px 0 32px}.editorial-closing em{color:#756d5e}
.portfolio-page footer{background:#e2dccf;padding-left:5%;padding-right:5%}
.editorial-project.reveal-pending{opacity:0;transform:translateY(22px)}.editorial-project.reveal-visible{opacity:1;transform:none;transition:opacity .8s ease,transform .8s ease}
@media(min-width:1800px){.portfolio-page main,.portfolio-page header,.portfolio-page footer{padding-left:7%;padding-right:7%}}
@media(max-width:760px){.portfolio-page header{height:110px}.portfolio-intro{padding:25px 0 28px;display:block}.portfolio-intro>p{margin-top:18px;font-size:13px}.portfolio-intro h1{font-size:35px}.portfolio-intro h1 span{display:block}.editorial-grid{grid-template-columns:1fr;gap:42px}.editorial-project.layout-0,.editorial-project.layout-1,.editorial-project.layout-2{grid-column:auto;margin:0}.layout-0 .editorial-image{aspect-ratio:1.25}.layout-1 .editorial-image{aspect-ratio:1.05}.layout-2 .editorial-image{aspect-ratio:.95}.editorial-caption{gap:12px;padding-top:17px;padding-bottom:18px}.editorial-caption h2{font-size:29px}.editorial-closing{padding:65px 0;margin-top:55px}.project-open{display:none}}
@media(prefers-reduced-motion:reduce){.editorial-project.reveal-pending{opacity:1;transform:none}.editorial-project.reveal-visible,.editorial-cover,.project-open{transition:none}.editorial-project:hover .editorial-cover{transform:none}}

/* Project stories: natural image proportions, quiet credits and generous margins. */
.project-story-page{background:#f5f2eb}.project-story-page header{padding-left:5%;padding-right:5%}.project-story-page main{padding:0 5%}.project-story-page footer{background:#e7e0d4}
.story-back{padding:18px 0 40px}.story-back .text-link{font-size:14px}.story-opening{display:grid;grid-template-columns:5fr 1fr 5fr 1fr;align-items:start;gap:0;margin-bottom:95px}.story-information{grid-column:1;max-width:420px;padding-top:12px}.story-information h1{font:normal clamp(36px,4vw,62px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:20px 0 28px}.story-description{font-size:16px;line-height:1.8;color:#625f57;white-space:pre-line;max-width:370px}.story-lead{grid-column:3;margin:0}.story-lead img{display:block;width:100%;height:auto}.project-credits{margin:35px 0;display:grid;grid-template-columns:1fr 1fr;gap:22px 26px}.project-credits div{min-width:0}.project-credits dt{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:#70695d;margin-bottom:6px}.project-credits dd{font-size:15px;line-height:1.5;margin:0;overflow-wrap:anywhere;white-space:pre-line}.story-note{font-size:13px;color:#777065;margin-top:30px}.story-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;margin-bottom:90px;align-items:start}.story-row figure{margin:0;min-width:0}.story-row img{width:100%;height:auto;display:block}.story-row.single-left figure{grid-column:1/6}.story-row.pair-right figure:first-child{grid-column:3/8}.story-row.pair-right figure:nth-child(2){grid-column:8/13}.story-row.full-width figure{grid-column:1/-1}.story-row.pair-left figure:first-child{grid-column:1/6}.story-row.pair-left figure:nth-child(2){grid-column:6/11}.story-end{display:flex;justify-content:space-between;gap:25px;padding:15px 0 80px}.story-row a:focus-visible,.story-lead a:focus-visible{display:block}
@media(min-width:1700px){.project-story-page main{padding-left:7%;padding-right:7%}}
@media(max-width:760px){.story-back{padding:12px 0 28px}.story-opening{grid-template-columns:1fr;gap:32px;margin-bottom:38px}.story-information,.story-lead{grid-column:1;max-width:none}.story-information h1{font-size:40px}.story-description{max-width:none}.project-credits{gap:18px;margin:25px 0}.story-row{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:38px}.story-row.single-left figure,.story-row.full-width figure{grid-column:1/-1}.story-row.pair-right figure:first-child,.story-row.pair-left figure:first-child{grid-column:1}.story-row.pair-right figure:nth-child(2),.story-row.pair-left figure:nth-child(2){grid-column:2}.story-end{padding-bottom:50px;flex-wrap:wrap}}

.story-opening.lead-large{row-gap:40px}.story-opening.lead-large .story-information{grid-column:1/-1;max-width:650px}.story-opening.lead-large .story-description{max-width:650px}.story-opening.lead-large .story-lead{grid-column:1/-1}.story-opening.lead-large .project-credits{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.story-opening.lead-large .project-credits{grid-template-columns:1fr 1fr}}

/* A shared interior language, drawn from the original brand entrance. */
:root{--bg:#eee9df;--muted:#6b665d;--line:#ccc5b8;--page-gutter:5%;--serif:Georgia,'Times New Roman',serif}
:is(.portfolio-page,.project-story-page,.studio-page,.contact-page){
 background:radial-gradient(ellipse 100% 680px at 12% 0%,#faf8f1 0%,transparent 85%),#eee9df;
 color:var(--ink);
}
:is(.portfolio-page,.project-story-page,.studio-page,.contact-page)>header{height:130px;padding:28px var(--page-gutter);background:none;gap:24px}
:is(.portfolio-page,.project-story-page,.studio-page,.contact-page)>main{padding:0 var(--page-gutter)}
:is(.portfolio-page,.project-story-page,.studio-page,.contact-page)>footer{padding:65px var(--page-gutter) 24px;background:#e2dccf;border-top:1px solid var(--line)}
#menu{margin:0 var(--page-gutter);padding:35px 0;gap:clamp(24px,5vw,80px)}
#menu a{font:normal clamp(28px,3vw,44px)/1.25 var(--serif);letter-spacing:-.025em}
#menu a[aria-current=page]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:9px;color:#746b5c}
#menu a:hover{color:#746b5c}
.text-link{line-height:1.6;transition:color .25s,border-color .25s}
.text-link:hover{color:#746b5c;border-color:#746b5c}
.portfolio-intro{padding:36px 0 44px}
.portfolio-intro h1,.studio-head h1,.contact h1{font:normal clamp(38px,4.3vw,68px)/1.12 var(--serif);letter-spacing:-.035em}
.portfolio-intro h1 span,.studio-head h1 em,.contact h1 em{color:#746e61}
.studio-head{border-top:1px solid var(--line);padding:36px 0 62px}
.studio-head h1{margin:22px 0 0;max-width:1050px}
.studio-split{grid-template-columns:1.12fr 1fr;gap:10%;align-items:center;padding-bottom:70px}
.studio-split>img{height:auto;aspect-ratio:4/5;object-fit:cover;display:block}
.studio-split>div{padding:30px 0;max-width:510px}
.studio-split h2,.services h2{font:normal clamp(30px,3vw,46px)/1.18 var(--serif);letter-spacing:-.025em;margin:24px 0}
.studio-split p{color:#625f57;font-size:16px;line-height:1.85;margin:20px 0}
.studio-split .text-link{margin-top:20px}
.services{border-top:1px solid var(--line);padding:65px 0 100px;gap:10%;grid-template-columns:1.12fr 1fr}
.services h2{margin:0}
.services p{font-size:16px;padding:21px 0;border-color:var(--line)}
.services p:first-child{padding-top:5px}
.contact{border-top:1px solid var(--line);grid-template-columns:1.15fr 1fr;gap:9%;padding:60px 0 95px;min-height:650px}
.contact>div{min-width:0;padding:20px 0}
.contact h1{margin:24px 0 30px}
.contact p{font-size:16px;line-height:1.85;color:#625f57;max-width:480px}
.contact .email{font:normal clamp(22px,2.35vw,37px)/1.45 var(--serif);letter-spacing:-.025em;padding-bottom:14px;margin:22px 0 28px;max-width:100%}
.contact .address{font-size:14px;border-top:1px solid var(--line);padding-top:25px;margin-top:10px}
.contact-img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.story-back{border-top:1px solid var(--line);padding:30px 0 44px}
.story-end{border-top:1px solid var(--line);padding:40px 0 75px;align-items:baseline}
.story-information h1{font-family:var(--serif)}
.project-credits{border-top:1px solid var(--line);padding-top:26px}
.footer-bottom{border-color:#c8c0b2}
.reveal-pending{opacity:0;transform:translateY(18px)}
.reveal-visible{opacity:1;transform:none;transition:opacity .8s ease,transform .8s ease}
@media(prefers-reduced-motion:no-preference){
 :is(.portfolio-page,.project-story-page,.studio-page,.contact-page)>main{animation:portfolio-reveal .65s ease-out both}
}
@media(min-width:1800px){:root{--page-gutter:7%}}
@media(max-width:1000px){
 .studio-split,.contact{gap:6%}
 .studio-split h2 br,.contact p br{display:none}
}
@media(max-width:760px){
 :root{--page-gutter:5%}
 :is(.portfolio-page,.project-story-page,.studio-page,.contact-page)>header{height:110px;padding:24px var(--page-gutter)}
 :is(.portfolio-page,.project-story-page,.studio-page,.contact-page)>footer{padding:40px var(--page-gutter) 22px}
 #menu{padding:26px 0;gap:24px}
 .portfolio-intro,.studio-head{padding:26px 0 34px}
 .portfolio-intro h1,.studio-head h1,.contact h1{font-size:clamp(34px,8.5vw,48px);line-height:1.15}
 .studio-head h1{margin-top:18px}
 .studio-split,.services,.contact{grid-template-columns:minmax(0,1fr);gap:30px}
 .studio-split{padding-bottom:45px}
 .studio-split>img{aspect-ratio:1.1}
 .studio-split>div{max-width:none;padding:0}
 .studio-split p{max-width:none}
 .studio-split h2,.services h2{font-size:34px}
 .services{padding:40px 0 60px}
 .services p{padding:18px 0}
 .contact{padding:30px 0 55px;min-height:0;gap:32px}
 .contact>div{padding:0}
 .contact h1{margin:22px 0 26px}
 .contact h1 br{display:block}
 .contact .email{font-size:clamp(22px,6.1vw,32px);margin:14px 0 24px}
 .contact .address br{display:block}
 .contact-img{aspect-ratio:1.15}
 .story-back{padding:22px 0 30px}
 .story-end{padding:30px 0 50px}
}
@media(prefers-reduced-motion:reduce){.reveal-pending,.reveal-visible{opacity:1;transform:none;transition:none}}
/* Contacto: formulario integrado en la identidad del estudio. */
.contact .direct-contact{margin-bottom:0}.contact .direct-contact+.email{margin-top:4px}
.contact-form-section{display:grid;grid-template-columns:1fr 1.55fr;gap:8%;border-top:1px solid var(--line);padding:65px 0 100px}
.contact-form-section h2{font:normal clamp(30px,3vw,44px)/1.2 Georgia,serif;margin:0 0 20px}
.contact-form-section p{font-size:14px;color:#625f57}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:30px 25px}.contact-fields label{display:flex;flex-direction:column;font-size:14px;gap:8px}.contact-fields label span{color:#625f57}.contact-fields .full{grid-column:1/-1}
.contact-fields input,.contact-fields textarea{width:100%;min-width:0;border:0;border-bottom:1px solid #8c877c;border-radius:0;padding:12px 0;background:transparent;color:var(--ink);font:16px/1.6 Arial,sans-serif}.contact-fields textarea{resize:vertical}.contact-fields input:focus-visible,.contact-fields textarea:focus-visible{outline:2px solid #756745;outline-offset:5px}.contact-consent{display:flex;align-items:flex-start;gap:12px;font-size:14px;margin:20px 0 26px}.contact-consent input{margin-top:4px;width:18px;height:18px;flex:none;accent-color:#44463c}.contact-submit{background:#36392f;color:#fff;border:1px solid #36392f;padding:14px 30px;cursor:pointer}.contact-submit:disabled{opacity:.6;cursor:wait}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-privacy{margin-top:26px}#contact-status{min-height:24px}
@media(max-width:760px){.contact-form-section{grid-template-columns:1fr;gap:25px;padding:40px 0 60px}.contact-fields{grid-template-columns:1fr;gap:24px}.contact-submit{width:100%}}

/* Formulario entre la presentación y la alternativa de correo directo. */
.contact:has(.contact-form-section){align-items:start}
.contact .contact-form-section{display:block;padding:32px 0 20px;margin-top:32px}
.contact .contact-form-section h2{font-size:28px;margin:0 0 12px}
.contact .contact-form-section>div{margin-bottom:26px}
.contact .direct-contact{border-top:1px solid var(--line);padding-top:28px;margin-top:14px}
.contact:has(.contact-form-section)>.contact-img{margin-top:44px}
@media(max-width:760px){.contact:has(.contact-form-section)>.contact-img{margin-top:0}}

/* Formulario compacto, con controles legibles y mensaje ampliable. */
.contact .contact-form-section{padding:22px 0 12px;margin-top:24px}
.contact .contact-form-section h2{font-size:24px;margin-bottom:6px}
.contact .contact-form-section>div{margin-bottom:18px}
.contact .contact-form-section>div p{margin:6px 0}
.contact-fields{gap:18px 22px}
.contact-fields label{display:block;line-height:1.5}
.contact-fields input,.contact-fields textarea{display:block;margin-top:4px;padding:7px 0}
.contact-fields textarea{min-height:90px}
.contact .contact-privacy{margin:16px 0 10px;line-height:1.55}
.contact-consent{margin:10px 0 16px;line-height:1.5}
.contact-submit{padding:10px 24px;min-height:44px}
#contact-status:empty{display:none}
@media(max-width:760px){.contact-fields{gap:16px}.contact .contact-form-section{padding-top:20px;margin-top:22px}}
/* Panel de navegación lateral: superpuesto, sin desplazar la página. */
#menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(440px,100%);height:100dvh;max-width:100%;max-height:100dvh;box-sizing:border-box;padding:100px 44px 38px;border:0;background:#f5f2eb;color:var(--ink);display:flex;flex-direction:column;align-items:flex-start;gap:0;overflow-y:auto;overscroll-behavior:contain;transform:translateX(100%);transition:transform .32s ease;box-shadow:-12px 0 45px #25251c0d}
#menu:not([open]){display:none}#menu.is-visible{transform:translateX(0)}
#menu::backdrop{background:rgb(32 32 26 / 0);transition:background .32s ease}#menu.is-visible::backdrop{background:rgb(32 32 26 / .18)}
#menu-close{position:absolute;top:27px;right:30px;display:flex;align-items:center;gap:14px;padding:8px 4px;border:0;background:none;font-size:14px;cursor:pointer;min-height:44px}
#menu-close span{font-size:28px;line-height:1;margin:0;color:inherit}
#menu .menu-brand{display:block;margin-bottom:26px}#menu .menu-brand img{display:block;width:185px;height:auto}
#menu .menu-description{font-size:16px;line-height:1.8;margin:0 0 52px;color:#666257}
#menu .menu-links{display:flex;flex-direction:column;gap:23px;width:100%;margin-bottom:55px}
#menu .menu-links a{font:normal clamp(30px,4vw,40px)/1.3 Georgia,serif;letter-spacing:-.025em;width:fit-content}
#menu .menu-email{margin-top:auto;font:14px/1.6 Arial,sans-serif;letter-spacing:0;border-bottom:1px solid #aaa395;padding-bottom:5px;overflow-wrap:anywhere}
.editorial-closing .studio-invitation{display:inline-block;font:normal clamp(32px,4vw,54px)/1.2 Georgia,serif;letter-spacing:-.025em;border-bottom:1px solid #9a9385;padding-bottom:12px}
.editorial-closing{padding:70px 0;margin-top:60px}
@media(max-width:480px){#menu{width:100%;padding:90px 30px 30px}#menu .menu-description{margin-bottom:36px}.editorial-closing{padding:50px 0;margin-top:42px}}
@media(prefers-reduced-motion:reduce){#menu,#menu::backdrop{transition:none}}
