@view-transition{navigation:auto}::view-transition-old(root){animation:page-out .18s ease both}::view-transition-new(root){animation:page-in .4s ease both}@keyframes page-out{to{opacity:0}}@keyframes page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.experience main{animation:page-in .5s ease both}.page-intro{padding-top:75px;padding-bottom:55px}.page-intro>p:last-child{font-size:1.1rem;line-height:1.7}.page-intro h1{margin:20px 0}.experience[data-page=bea] .about-grid{padding-top:80px}.experience #nav{max-height:calc(100dvh - 110px);overflow-y:auto}.experience #nav a[aria-current=page]{color:var(--copper);text-decoration:underline;text-underline-offset:7px}.experience .footer-pages{display:flex;flex-wrap:wrap;gap:16px 24px;width:100%;padding:20px 0}.experience footer{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.footer-pages a{font-size:1rem}.whatsapp-pulse{position:fixed;right:22px;bottom:25px;width:56px;height:56px;border-radius:50%;border:0;background:#ad4025;color:#fff;z-index:60;display:grid;place-items:center;cursor:pointer;box-shadow:0 5px 18px #35282230;transition:transform .25s}.whatsapp-pulse svg{width:29px;height:29px}.whatsapp-pulse:before{content:'';position:absolute;inset:0;border:2px solid #ad4025;border-radius:50%;animation:whatsapp-halo 2.4s ease-out infinite;pointer-events:none}.whatsapp-pulse:hover{transform:scale(1.06)}@keyframes whatsapp-halo{0%{transform:scale(1);opacity:.65}75%,100%{transform:scale(1.65);opacity:0}}.experience .booking-secondary{bottom:99px;right:22px;padding:12px 18px;font-size:1rem}.experience .social-dock{bottom:25px}.experience .final-invitation{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #d4c4b7}.final-invitation h2{font-size:clamp(2rem,4vw,3.7rem)}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-bottom:80px}.journal-card a{display:block;text-decoration:none}.journal-card img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain}.journal-card h2{font-size:1.8rem;line-height:1.2;margin:18px 0}.journal-card p{font-size:1rem;line-height:1.7}.journal-card .eyebrow{font-size:.8rem;margin-top:24px}.journal-article{max-width:780px;padding-top:60px;padding-bottom:90px}.journal-article h1{font-size:clamp(2.5rem,5vw,4.5rem);margin:30px 0}.article-lead{font-size:1.3rem;line-height:1.7}.article-image{display:block;width:min(100%,460px);height:auto;margin:35px auto 15px}.journal-article>section{margin:45px 0}.journal-article>section h2{font-size:2rem;margin-bottom:16px}.journal-article>section p{font-size:1.1rem;line-height:1.9}.journal-article>.eyebrow{margin-top:40px}.portfolio-page .portfolio-content{padding-top:0}.portfolio-page .catalog-toolbar{display:block}.portfolio-page .catalog-toolbar>label,.portfolio-page .catalog-controls{display:none}.portfolio-page .catalog-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;overflow:visible;padding:30px 0}.portfolio-page .catalog-card{width:auto;min-width:0;animation:photo-enter .45s both}.portfolio-page .catalog-card img{height:auto;width:100%;aspect-ratio:4/5;object-fit:contain}.portfolio-page .catalog-card h3{font-size:1.5rem;margin:15px 0 8px}.portfolio-page .catalog-card p,.portfolio-page .catalog-status{font-size:.95rem}.motion-ready .title-arrival{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.motion-ready .title-arrival.arrived{opacity:1;transform:none}
@media(min-width:1000px){.experience .header{display:flex;align-items:center;gap:30px}.experience .menu{display:none}.experience #nav{position:static;display:flex!important;flex-direction:row;align-items:center;gap:24px;padding:0;border:0;background:transparent;box-shadow:none;margin-left:auto;max-height:none;width:auto;transform:none;opacity:1;visibility:visible}.experience #nav a,.experience #nav button{font-size:.95rem;white-space:nowrap;padding:12px 0;border:0}.experience .header .brand{flex-shrink:0}}
@media(max-width:720px){.page-intro{padding-top:45px;padding-bottom:35px}.journal-grid{grid-template-columns:1fr;gap:45px}.journal-card img{max-height:430px}.experience .final-invitation{display:block}.final-invitation .button{margin-top:22px}.portfolio-page .catalog-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.portfolio-page .catalog-card h3{font-size:1.2rem}.whatsapp-pulse{width:50px;height:50px;right:16px;bottom:18px}.experience .booking-secondary{right:16px;bottom:84px;padding:10px 15px}.experience .social-dock{bottom:18px}.experience footer{padding-bottom:145px}.journal-article{padding-top:35px}}
@media(prefers-reduced-motion:reduce){.whatsapp-pulse:before{animation:none;display:none}.experience main,::view-transition-old(root),::view-transition-new(root){animation:none}.motion-ready .title-arrival{opacity:1;transform:none;transition:none}}
/* Directory footer and restrained motion for the independent pages. */
.experience footer.footer-directory{display:grid;grid-template-columns:1fr minmax(170px,.38fr);column-gap:12%;row-gap:40px;padding-top:55px;padding-bottom:130px;border-top:1px solid #d4c4b7;align-items:start}.footer-brand-column>img{display:block;width:min(300px,85%);height:auto;mix-blend-mode:multiply}.footer-brand-column p{font-size:1rem;line-height:1.7;margin:20px 0}.footer-navigation-column>.eyebrow{font-size:.8rem;margin:0 0 20px}.experience footer .footer-pages{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding:0}.footer-credits{grid-column:1/-1;border-top:1px solid #d4c4b7;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px}.footer-credits p{font-size:.85rem;margin:0}.footer-pages a{text-decoration:none;transition:color .2s,transform .25s}.footer-pages a:hover{color:var(--copper);transform:translateX(4px)}.motion-ready .image-arrival{opacity:0;translate:var(--arrival-shift,0) 18px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.7,.2,1)}.motion-ready .image-arrival.image-arrived{opacity:1;translate:0 0}.experience #nav.open{animation:menu-enter .3s ease both}@keyframes menu-enter{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@media(max-width:720px){.experience footer.footer-directory{grid-template-columns:minmax(0,1fr) minmax(110px,.65fr);column-gap:24px;padding-top:38px;padding-bottom:145px}.footer-brand-column>img{width:100%}.footer-brand-column .text-link{font-size:.95rem}.footer-navigation-column>.eyebrow{font-size:.75rem;letter-spacing:.1em}.footer-pages a{font-size:.95rem}.footer-credits{display:block}.footer-credits p+p{margin-top:12px}}@media(prefers-reduced-motion:reduce){.motion-ready .image-arrival{opacity:1;translate:none;transition:none}.experience #nav.open{animation:none}.footer-pages a{transition:none}}
.experience .hero-immersive.parallax-enabled .hero-atelier-background img{transform:translate3d(0,var(--cover-offset,0px),0) scale(1.06);transform-origin:50% 50%;will-change:transform}
@media(prefers-reduced-motion:reduce){.experience .hero-immersive.parallax-enabled .hero-atelier-background img{transform:none;will-change:auto}}
/* Compact, consistently branded actions. */
.experience .button,.experience button.text-link[data-booking],.experience button.text-link[data-service]{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;min-height:44px;gap:10px;padding:9px 16px;margin-top:20px;border:1px solid #9e3b23;border-radius:3px;background:#ad4025;color:#fff;font-size:.875rem;line-height:1.4;font-weight:400;text-align:center;box-shadow:none;white-space:normal}
.experience .button:hover,.experience button.text-link[data-booking]:hover{background:#8e341f}.experience .button span{margin-left:0}.experience .booking-secondary{min-height:40px;padding:8px 13px;font-size:.875rem;gap:8px}.experience .booking-secondary svg{width:19px;height:19px}.experience .final-invitation .button{flex-shrink:0}.experience footer.footer-directory .footer-brand-column{padding-bottom:24px}.experience footer.footer-directory .footer-credits p{max-width:none}.experience .footer-brand-column>img{width:min(260px,100%)}
@media(max-width:720px){.experience footer.footer-directory{display:block;padding-top:0;padding-bottom:130px}.experience footer.footer-directory .footer-brand-column{padding:42px 0;max-width:none}.experience .footer-brand-column>img{width:230px;max-width:80%}.experience .footer-brand-column p{max-width:28ch;margin:20px 0 0}.experience footer.footer-directory .footer-navigation-column{border-top:1px solid #d4c4b7;padding:36px 0}.experience footer .footer-pages{gap:8px}.experience footer .footer-pages a{display:block;min-height:40px;padding:7px 0;font-size:1rem}.experience footer .footer-credits{padding-top:24px}.experience .final-invitation{padding-top:45px;padding-bottom:45px}.experience .button,.experience button.text-link[data-booking],.experience button.text-link[data-service]{font-size:.875rem;padding:9px 14px}.experience .booking-secondary{bottom:82px;font-size:.8rem;padding:8px 12px}.experience .whatsapp-pulse{width:46px;height:46px}.experience .whatsapp-pulse svg{width:25px;height:25px}}
/* The photograph arrives first; the approved complete wordmark follows. */
.experience .hero-immersive.cover-intro-pending .hero-atelier-background,.experience .hero-immersive.cover-intro-pending .hero-brand-overlay img{opacity:0}
.experience .hero-immersive.cover-intro-start .hero-atelier-background{animation:cover-photograph-in 1s ease both}
.experience .hero-immersive.cover-intro-start .hero-brand-overlay img{animation:cover-wordmark-in 1.25s cubic-bezier(.2,.7,.2,1) .85s both}
@keyframes cover-photograph-in{from{opacity:0}to{opacity:1}}
@keyframes cover-wordmark-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.experience .hero-immersive.cover-intro-pending .hero-atelier-background,.experience .hero-immersive.cover-intro-pending .hero-brand-overlay img{opacity:1}.experience .hero-immersive.cover-intro-start .hero-atelier-background,.experience .hero-immersive.cover-intro-start .hero-brand-overlay img{animation:none}}
.experience .atelier-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.experience .atelier-photo-grid figure{min-width:0}.experience .atelier-photo-grid .reference-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#eadcd1}.experience .atelier-photo-grid figcaption{text-align:left;line-height:1.6}.experience .atelier-space-restored{background:#eadcd1}.experience .atelier-space-restored .image-note{margin-top:28px}.experience .atelier-facade-restored{display:grid;grid-template-columns:.65fr 1.35fr;gap:6%;align-items:center}.experience .atelier-facade-restored img{width:100%;height:auto}.experience .atelier-restored .section-heading,.experience .atelier-space-restored .section-heading{margin-bottom:38px}@media(max-width:720px){.experience .atelier-photo-grid{grid-template-columns:1fr;gap:36px}.experience .atelier-facade-restored{grid-template-columns:1fr;gap:30px}}
.experience .journal-heading{grid-column:1/-1;margin-bottom:12px}.experience[data-page=inicio] #atelier{scroll-margin-top:115px}.experience[data-page=inicio] #contacto{padding-bottom:90px}
/* Center the footer brand block and copyright. */
.experience footer.footer-directory .footer-brand-column{text-align:center}
.experience footer.footer-directory .footer-brand-column>img{margin-inline:auto}
.experience footer.footer-directory .footer-brand-column>p{margin-inline:auto}
.experience footer.footer-directory .footer-brand-column>button{margin-inline:auto}
.experience footer.footer-directory .footer-credits{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.experience footer.footer-directory .footer-credits p{width:100%;max-width:none;margin:0;text-align:center}

/* Centered navigation window, shared by the modern Velvet pages. */
.experience .header .menu{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--ink);padding:12px 0;margin-left:auto}
.velvet-menu-window{position:fixed;inset:0;margin:auto;width:min(460px,calc(100% - 36px));max-width:none;max-height:calc(100dvh - 40px);height:fit-content;padding:54px 28px 28px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px #30252140;overflow:auto;transform-origin:50% 20%}
.velvet-menu-window[open]{animation:velvet-menu-unfold .38s cubic-bezier(.2,.75,.25,1) both}
.velvet-menu-window::backdrop{background:#30252170;backdrop-filter:blur(4px);animation:velvet-backdrop .3s ease both}
.experience .velvet-menu-window #nav{position:static;display:flex!important;flex-direction:column;align-items:stretch;gap:0;width:100%;max-height:none;margin:0;padding:0;border:0;background:transparent;box-shadow:none;transform:none;opacity:1;visibility:visible;animation:none}
.experience .velvet-menu-window #nav a,.experience .velvet-menu-window #nav button{display:block;text-align:center;white-space:normal;padding:10px 12px;border:0;border-bottom:1px solid var(--line);font:400 clamp(21px,5vw,28px)/1.3 Georgia,serif;color:var(--ink);background:transparent;text-decoration:none}
.experience .velvet-menu-window #nav a:hover{color:var(--copper);background:var(--rose)}
.experience .velvet-menu-window #nav button{margin-top:16px;border:0;border-radius:4px;background:var(--copper);color:white;font:400 15px/1.5 Arial,sans-serif;padding:12px}
.velvet-menu-close{position:absolute;top:9px;right:12px;width:44px;height:44px;border:0;background:transparent;color:var(--copper);font-size:32px;line-height:1}
body.velvet-menu-open{overflow:hidden}
.velvet-menu-window.leaving{animation:velvet-menu-fold .22s ease both}
.velvet-menu-window.leaving::backdrop{animation:velvet-backdrop .22s ease reverse both}
@keyframes velvet-menu-unfold{from{opacity:0;transform:translateY(-24px) scaleY(.88)}to{opacity:1;transform:translateY(0) scaleY(1)}}
@keyframes velvet-menu-fold{to{opacity:0;transform:translateY(-16px) scaleY(.94)}}
@keyframes velvet-backdrop{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.velvet-menu-window[open],.velvet-menu-window.leaving,.velvet-menu-window::backdrop{animation:none}}

/* Text rises into view again on every passage through the page. */
.motion-ready .velvet-text-rise{opacity:0;translate:0 32px;transition:opacity .65s ease,translate .8s cubic-bezier(.22,.7,.25,1);transition-delay:0s}
.motion-ready .velvet-text-rise.text-in-view{opacity:1;translate:0 0;transition-delay:var(--text-delay,0ms)}
@media(prefers-reduced-motion:reduce){.motion-ready .velvet-text-rise{opacity:1;translate:none;transition:none}}
@media print{.motion-ready .velvet-text-rise{opacity:1;translate:none}}

.velvet-rates-dialog{width:min(760px,calc(100% - 32px));max-height:85dvh;margin:auto;padding:24px;background:#fffaf6;color:#302723;border:1px solid #b88b73;border-radius:18px;overflow:auto}
.velvet-rates-dialog::backdrop{background:rgba(25,18,15,.55)}
.velvet-rates-dialog .section-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:-24px;background:#fffaf6;padding:12px 0;z-index:1}
.velvet-rates-dialog .section-dialog-bar h2{font-size:clamp(24px,5vw,36px);margin:0}
.velvet-rates-dialog .section-dialog-bar button{min-height:44px;background:transparent;border:0;color:inherit;cursor:pointer}
.velvet-rates-dialog .rate-option{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #dfcbbd}
.velvet-rates-dialog .rate-option h3{margin:0 0 6px;font-size:20px}
.velvet-rates-dialog .rate-option p{margin:0;font-size:16px}
.velvet-rates-dialog .rate-option strong{white-space:nowrap;font-size:22px;color:#805039}
.velvet-rates-dialog .rate-conditions,.velvet-rates-dialog .rate-sources{font-size:14px;margin:20px 0}
.velvet-rates-dialog[open]{animation:rates-enter .35s ease-out}
@keyframes rates-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.velvet-rates-dialog[open]{animation:none}}

/* Keep article typography consistent with the blog cards. */
.experience .journal-article h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.18}
.experience .journal-article .article-lead,
.experience .journal-article>section p{font-size:1rem;line-height:1.7}
.experience .journal-article>section h2{font-size:clamp(1.6rem,3vw,2rem);line-height:1.2}
.experience .journal-article>.eyebrow{font-size:.8rem}

/* Override the older full-width dialog rule, including on small phones. */
.experience #section-dialog.velvet-rates-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:85dvh;margin:auto;padding:0;overflow:auto}
.experience #section-dialog.velvet-rates-dialog .section-dialog-bar{top:0;padding:16px 20px;gap:12px}
.experience #section-dialog.velvet-rates-dialog .section-dialog-bar h2{font-size:clamp(20px,4.5vw,28px);min-width:0}
.experience #section-dialog.velvet-rates-dialog .section-dialog-bar button{flex-shrink:0;padding:8px;min-height:44px}
.experience #section-dialog.velvet-rates-dialog #section-dialog-content{padding:0 20px 24px;min-width:0}
.experience #section-dialog.velvet-rates-dialog .rate-option{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
.experience #section-dialog.velvet-rates-dialog .rate-option>div{min-width:0}
.experience #section-dialog.velvet-rates-dialog .rate-option h3{font-size:20px;overflow-wrap:anywhere}
.experience #section-dialog.velvet-rates-dialog .rate-option strong{font-size:20px}
.experience #section-dialog.velvet-rates-dialog .button{max-width:100%;white-space:normal;gap:12px}
.experience #section-dialog.velvet-rates-dialog .rate-sources{overflow-wrap:anywhere}
@media(max-width:380px){.experience #section-dialog.velvet-rates-dialog .section-dialog-bar{padding:12px 16px}.experience #section-dialog.velvet-rates-dialog #section-dialog-content{padding:0 16px 20px}}

/* One appointment entry point on the right. */
.experience .whatsapp-pulse{display:none}
.experience .booking-secondary{bottom:25px;isolation:isolate;animation:appointment-glow 3.6s ease-in-out infinite}
@keyframes appointment-glow{0%,100%{background:#ad4025;box-shadow:0 0 0 0 #ad402520}50%{background:#c35535;box-shadow:0 0 0 8px #ad40252b,0 0 20px #ad402538}}
@media(max-width:720px){.experience .booking-secondary{bottom:18px}}
@media(prefers-reduced-motion:reduce){.experience .booking-secondary{animation:none}}

/* Vertical contact controls, with one appointment button opposite. */
.experience .social-dock{display:flex;flex-direction:column;gap:10px;left:16px;right:auto;bottom:25px;align-items:center}
.experience .social-dock>button,.experience .social-dock>a{display:grid;place-items:center;width:44px;height:44px;min-width:44px;padding:10px;border:1px solid var(--copper);border-radius:50%;background:var(--paper);color:var(--copper);box-sizing:border-box;box-shadow:0 3px 12px #35282215}
.experience .social-dock svg{display:block;width:24px;height:24px;flex-shrink:0}
@media(max-width:720px){.experience .social-dock{left:12px;bottom:18px}}
@keyframes appointment-glow{0%,100%{background:#97331d;box-shadow:0 0 0 0 #ad402530}50%{background:#e16d43;box-shadow:0 0 0 8px #d45b3d55,0 0 24px #d45b3d70}}
