/* Approved identity: five colors, shared by the website and private application. */
:root{--porcelain:#F2E7E3;--blush:#E7C5BE;--rose:#D08D7E;--terracotta:#B66A5E;--cocoa:#6B4D4B;--black:var(--cocoa);--gold:var(--terracotta);--white:var(--porcelain);--paper:var(--porcelain);--ink:var(--cocoa);--cream:var(--porcelain);--line:var(--blush);--muted:var(--cocoa);color-scheme:light;color:var(--cocoa);background:var(--porcelain);font-family:'Poppins',sans-serif}
body{background:var(--porcelain);color:var(--cocoa);font-family:'Poppins',sans-serif;font-weight:400}
input::placeholder,textarea::placeholder{color:#7c6361;opacity:1}
button,input,select,textarea,.button,.link-button,pre,.assessment-card .chemical-fieldset legend{font-family:'Poppins',sans-serif!important}
h1,h2,h3,.metric,.assessment-card legend,.reference-card h3,.reference-lightbox h3,.experience-highlight strong,.care-strip span,.service-number,.vicky-portrait figcaption{font-family:'DM Serif Display',serif!important;font-weight:400;letter-spacing:-.025em}
p{line-height:1.85}a{color:inherit}::selection{background:var(--blush);color:var(--cocoa)}
:focus-visible{outline:3px solid var(--cocoa)!important;outline-offset:4px}
.brand-logo{display:block;width:116px;height:116px;flex-shrink:0;background:var(--terracotta)!important;-webkit-mask:url('/assets/recovered/logo-transparent.png') center/contain no-repeat;mask:url('/assets/recovered/logo-transparent.png') center/contain no-repeat;border:0!important;padding:0!important;border-radius:0!important;box-shadow:none!important}
.topbar .brand-logo{width:116px;height:116px}.access>.brand-logo{width:164px;height:164px;margin:0 0 24px}aside>.brand-logo{width:144px;height:144px;margin:0 auto 26px;background:var(--porcelain)!important}
.review-label{background:var(--blush);color:var(--cocoa);font-size:10px;letter-spacing:.04em;padding:9px 18px}
.topbar{background:var(--porcelain);border-color:var(--blush);padding-top:12px;padding-bottom:12px}
.topbar nav a,.language button,.language button[aria-pressed=true]{color:var(--cocoa)}
.topbar nav a:hover{color:var(--terracotta)}.topbar nav a{font-size:11px;font-weight:500}
.header-cta{background:var(--cocoa);color:var(--porcelain);border-color:var(--cocoa);border-radius:3px;letter-spacing:.06em}
.menu{background:transparent;color:var(--cocoa);border-color:var(--rose);border-radius:3px}
.hero{background:var(--porcelain);min-height:660px;color:var(--cocoa)}
.hero-shade{background:linear-gradient(90deg,#F2E7E3 0%,#F2E7E3fa 28%,#F2E7E3d9 45%,#F2E7E340 70%,#6B4D4B12 100%)}
.hero-copy{padding-top:64px;padding-bottom:48px;max-width:850px}
.hero h1{font-size:clamp(60px,6.4vw,96px);line-height:1.06;letter-spacing:-.035em;color:var(--cocoa);margin-bottom:24px}
.hero h1 em{font-family:'Great Vibes',cursive;font-size:1.13em;line-height:1.15;font-style:normal;color:var(--terracotta);letter-spacing:0;display:inline-block;padding-right:14px}
.eyebrow,.about .eyebrow,.client-comments .eyebrow{color:var(--cocoa);font-weight:500;font-size:10px;letter-spacing:.16em}
.eyebrow:before,.about .eyebrow:before,.client-comments .eyebrow:before{background:var(--terracotta)}
.hero-description{color:var(--cocoa);font-size:14px;max-width:390px}.hero-footnote{color:var(--cocoa);font-size:11px;letter-spacing:0}
.button,button,.link-button{background:var(--cocoa);color:var(--porcelain);border-color:var(--cocoa);border-radius:3px;font-weight:500}
.button:hover,button:hover,.link-button:hover{background:var(--terracotta);color:var(--porcelain)}
.text-link{color:var(--cocoa);border-color:var(--terracotta);font-weight:500}
.caption{color:var(--porcelain);background:#6B4D4Be6;padding:12px 16px;border-radius:3px}.caption small{color:var(--porcelain)}
.hero-bottom{background:var(--blush);color:var(--cocoa);border-color:var(--rose);font-size:9px;letter-spacing:.12em}.hero-bottom .mark{color:var(--cocoa)}
.care-strip{background:var(--porcelain);border-color:var(--blush);padding-top:30px;padding-bottom:30px}.care-strip div{color:var(--cocoa);font-size:12px}.care-strip span{color:var(--terracotta)}
.section{border-color:var(--blush)}.section-title>p,.service p,.service-list-footer{color:var(--cocoa)}h2{line-height:1.12}
#servicios{--service-gold:var(--blush);--service-ivory:var(--porcelain);--service-ink:var(--cocoa);background:var(--porcelain)}
#servicios .section-title>p,#servicios .services-footer p,#servicios .services-footer .services-photo-note,#servicios .services-loading,#servicios .service-selection-status{color:var(--cocoa)}
#servicios .service-photo-card{border-color:var(--blush);background:var(--cocoa);border-radius:8px}
#servicios .service-photo-card:before{background:linear-gradient(180deg,#6B4D4B00 10%,#6B4D4B22 30%,#6B4D4Bdd 65%,#6B4D4B 100%)}
#servicios .service-photo-card.featured:before{background:linear-gradient(180deg,#6B4D4B00 20%,#6B4D4B33 40%,#6B4D4Bf0 78%,#6B4D4B 100%)}
#servicios .service-photo-number,#servicios .service-photo-label{background:var(--cocoa);color:var(--porcelain);border-color:var(--rose)}
#servicios .service-photo-description,#servicios .service-photo-credit{color:var(--porcelain)}
#servicios .service-photo-title .service-icon{color:var(--porcelain);background:transparent;border-color:var(--rose)}
#servicios .service-photo-cta{color:var(--porcelain);border-color:var(--rose)}
#servicios .featured .service-photo-cta{background:var(--blush);border-color:var(--blush);color:var(--cocoa)}
#servicios .services-footer{border-color:var(--blush)}#servicios .service-photo-card.no-photo{background:var(--cocoa)}
#servicios .service-photo-card:hover,#servicios .service-photo-card:focus-within{border-color:var(--terracotta);box-shadow:0 12px 30px #6B4D4B18}
.about{background:var(--blush);color:var(--cocoa)}.about p,.about blockquote,.experience-highlight span{color:var(--cocoa)}
.about blockquote{font-family:'DM Serif Display',serif;font-style:normal;border-color:var(--terracotta);font-size:24px}
.experience-highlight,.about-sign .experience-highlight{border-color:var(--rose)}.experience-highlight strong{color:var(--cocoa)}
.vicky-portrait{border-color:var(--rose);background:var(--cocoa);box-shadow:0 18px 44px #6B4D4B20;border-radius:6px;overflow:hidden}
.vicky-portrait:before{border-color:#D08D7E66}.vicky-portrait figcaption{background:var(--cocoa);color:var(--porcelain);border-color:var(--rose)}
.vicky-portrait figcaption span{font-family:'Poppins',sans-serif;color:var(--porcelain)}
.about-sign .name{font-family:'Great Vibes',cursive;color:var(--cocoa)}
.references,.reference-section,#referencias{background:var(--porcelain)}
.reference-intro-note,.reference-source-note,.reference-motion-note,.reference-card .reference-description{color:var(--cocoa)}
.reference-filters button{background:transparent;color:var(--cocoa);border-color:var(--rose)}
.reference-filters button[aria-pressed=true]{background:var(--cocoa);color:var(--porcelain);border-color:var(--cocoa)}
.reference-card{background:var(--porcelain);border-color:var(--blush);border-radius:8px;overflow:hidden}
.reference-card .concept-label{background:var(--blush);color:var(--cocoa)}.reference-card h3,.reference-expand,.reference-source-note a{color:var(--cocoa)}
.comparison-pair{background:var(--blush)}.comparison-half{background:var(--blush)}
.comparison-half .comparison-label{background:var(--cocoa);color:var(--porcelain);border-color:var(--rose)}
.comparison-half.after .comparison-label{background:var(--blush);color:var(--cocoa)}.reference-expand{border-color:var(--terracotta)}
.client-comments{background:var(--blush);color:var(--cocoa);border-color:var(--rose)}.client-comments h2,.comments-intro{color:var(--cocoa)}
.comments-demo-notice{background:var(--porcelain);color:var(--cocoa);border-radius:4px}.client-comment{background:var(--porcelain);border-color:var(--rose);border-radius:6px}
.client-comment .quote-mark{font-family:'DM Serif Display',serif;color:var(--terracotta)}.client-comment blockquote{font-family:'DM Serif Display',serif;font-style:normal;color:var(--cocoa)}
.client-comment .comment-category,.client-comment .comment-author,.client-comment .comment-author a{color:var(--cocoa)}.client-comment .comment-author{border-color:var(--blush)}
.assessment-section{background:var(--cocoa);border-color:var(--rose);color:var(--porcelain)}
.assessment-intro .eyebrow,.assessment-intro>p{color:var(--porcelain)}.assessment-intro .eyebrow:before{background:var(--rose)}
.assessment-intro .assessment-notice{background:var(--porcelain);color:var(--cocoa);border-color:var(--rose);border-radius:4px}
.assessment-card{background:var(--porcelain);color:var(--cocoa);border-color:var(--rose);border-radius:8px}
.assessment-card input,.assessment-card select,.assessment-card textarea,input,select,textarea{background:var(--porcelain);color:var(--cocoa);border-color:var(--rose);border-radius:4px;font-family:'Poppins',sans-serif}
.assessment-card input,.assessment-card select,.assessment-card textarea{font-size:16px}
.assessment-check input,input[type=checkbox],.assessment-card progress{accent-color:var(--cocoa)}
.assessment-progress,.assessment-card .assessment-small,.assessment-summary dt,.assessment-card h3,.assessment-card [role=alert]{color:var(--cocoa)}
.assessment-secondary{color:var(--cocoa);border-color:var(--rose);background:transparent}
.assessment-photo,.assessment-summary{border-color:var(--rose);border-radius:4px}.assessment-photo img{background:var(--blush)}
.footer{background:var(--porcelain);color:var(--cocoa);border-top:1px solid var(--blush)}.footer b,.footer .legal{color:var(--cocoa)}.footer .legal{border-color:var(--blush)}
.booking{background:var(--blush);border-color:var(--rose)}.booking p,.booking-side .muted{color:var(--cocoa)}.booking-side{border-color:var(--rose)}
dialog,.reference-lightbox{background:var(--porcelain);color:var(--cocoa);border-color:var(--rose);border-radius:8px}dialog::backdrop,.reference-lightbox::backdrop{background:#6B4D4Bbb}
.reference-lightbox p{color:var(--cocoa)}dialog button.close,.reference-lightbox button{background:var(--blush);color:var(--cocoa);border-color:var(--rose)}

/* Application: calm work surfaces, distinct navigation, readable form labels. */
.studio-app{font-size:14px;background:var(--porcelain);color:var(--cocoa)}
.studio-app h1{font-size:46px;line-height:1.12}.studio-app h2{font-size:30px}.studio-app h3{font-size:24px}
.studio-app .access{max-width:480px;margin:5vh auto;padding:32px 40px 40px}.studio-app .access h1{font-size:52px;margin-top:20px}
.studio-app .access .eyebrow{color:var(--cocoa)}.studio-app .access button{min-height:48px}
.studio-app label,.studio-app .local-note,.studio-app th,.studio-app dt,.studio-app .empty,.studio-app .warn{color:var(--cocoa)}
.studio-app input,.studio-app textarea,.studio-app select{background:var(--porcelain);border-color:var(--rose);min-height:44px}
.studio-app aside{background:var(--cocoa);color:var(--porcelain);border-right:1px solid var(--rose)}
.studio-app aside .eyebrow,.studio-app aside>a{color:var(--porcelain)}.studio-app aside nav button{color:var(--porcelain);background:transparent}
.studio-app aside nav button:hover{background:#D08D7E33}.studio-app aside nav button.active{background:var(--blush);color:var(--cocoa);font-weight:600}
.studio-app button.quiet,.studio-app .secondary,.studio-app .dossier-tabs button{background:var(--blush);color:var(--cocoa)}
.studio-app .dossier-tabs button[aria-pressed=true]{background:var(--cocoa);color:var(--porcelain)}
.studio-app .badge{background:var(--blush);color:var(--cocoa);border-radius:4px}
.studio-app .notice{border-color:var(--terracotta);color:var(--cocoa)}.studio-app .card,.studio-app .section{background:var(--porcelain);border:1px solid var(--rose);box-shadow:0 4px 18px #6B4D4B06}
.studio-app .card small{color:var(--cocoa)}.studio-app .metric{font-size:34px}.studio-app .bar{background:var(--terracotta)}
.studio-app td,.studio-app th{border-color:var(--blush)}.studio-app tbody tr:hover{background:#E7C5BE66}.studio-app button.danger{background:var(--terracotta);color:var(--porcelain)}
.studio-app #feedback{background:var(--cocoa);color:var(--porcelain);border-color:var(--rose)}
.studio-app .dossier-tabs{background:var(--porcelain)}
.notice-page main{color:var(--cocoa)}.notice-page header{border-color:var(--rose)}.notice-page small,.notice-page a{color:var(--cocoa)}
@media(max-width:1050px){.hero h1{font-size:78px}.topbar nav{gap:14px}}
@media(max-width:700px){
 .topbar .brand-logo{width:96px;height:96px}.topbar nav a{border-color:var(--blush)}
 .hero{min-height:670px}.hero h1{font-size:clamp(50px,13vw,72px);line-height:1.08;letter-spacing:-.03em}.hero-copy{padding-top:44px;max-width:100%}
 .hero-shade{background:linear-gradient(90deg,#F2E7E3f5,#F2E7E3dd 55%,#F2E7E3aa),linear-gradient(0deg,#F2E7E3aa,transparent)}
 .hero-description{max-width:300px}.hero-actions{gap:18px}.hero-bottom{font-size:9px}.about blockquote{font-size:22px}
}
@media(max-width:680px){
 .studio-app .access{padding:24px;margin:3vh auto}.studio-app .access h1{font-size:44px}.access>.brand-logo{width:144px;height:144px}
 .studio-app aside>.brand-logo{width:88px;height:88px;margin:0 20px 12px 0;float:left}.studio-app aside>.eyebrow{padding:32px 0 0 108px}
 .studio-app h1{font-size:36px}.studio-app .metric{font-size:28px}.studio-app aside{border-right:0;border-bottom:1px solid var(--rose)}
}

.button:hover,button:hover,.link-button:hover,.studio-app button.danger{background:var(--cocoa);color:var(--porcelain)}
@media(max-width:700px){#reference-gallery{grid-template-columns:1fr!important}}

/* Clear photographic cover and unmistakable calls to action. */
.hero-shade{background:linear-gradient(90deg,#F2E7E3 0%,#F2E7E3f5 26%,#F2E7E3cc 39%,#F2E7E345 52%,#F2E7E300 65%)}
.hero-copy{max-width:760px}.hero h1{font-size:clamp(60px,6vw,86px)}
.hero-description{font-weight:500;max-width:370px}
.hero h1 em{text-shadow:0 1px 0 var(--porcelain)}
.hero .button,.header-cta,#assessment-next,#assessment-submit{position:relative;background:var(--cocoa);color:var(--porcelain);border:2px solid var(--rose);border-radius:8px;font-weight:600;box-shadow:0 5px 0 var(--terracotta),0 10px 24px #6B4D4B24;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.hero .button{font-size:14px;min-height:58px;padding:17px 23px;animation:invite-action 3.6s ease-in-out 3}
.hero .button:hover,.header-cta:hover,#assessment-next:hover,#assessment-submit:hover{transform:translateY(-3px);box-shadow:0 7px 0 var(--terracotta),0 14px 26px #6B4D4B33}
.hero .button:active,.header-cta:active,#assessment-next:active,#assessment-submit:active{transform:translateY(3px);box-shadow:0 1px 0 var(--terracotta)}
.hero .button span{transition:transform .2s ease}.hero .button:hover span{transform:translate(3px,-3px)}
.hero .text-link,.about .text-link,.client-comments .text-link{background:var(--porcelain);border:1px solid var(--terracotta);border-bottom:3px solid var(--terracotta);border-radius:6px;padding:12px 16px;font-weight:600;transition:background .2s ease,transform .2s ease}
.hero .text-link:hover,.about .text-link:hover,.client-comments .text-link:hover{background:var(--blush);transform:translateY(-2px)}
#servicios .service-photo-cta{background:var(--blush);color:var(--cocoa);border:1px solid var(--rose);border-bottom:3px solid var(--terracotta);border-radius:6px;padding:12px 16px;font-weight:600;transition:transform .2s ease,background .2s ease}
#servicios .service-photo-cta:hover{background:var(--porcelain);transform:translateY(-2px)}
.reference-expand{background:var(--blush);border:1px solid var(--terracotta);border-radius:5px;padding:12px 16px;font-weight:600;min-height:46px}.reference-expand:hover{background:var(--cocoa);color:var(--porcelain)}
.section h2:after{content:'';display:block;width:64px;height:4px;border-radius:4px;background:var(--terracotta);margin-top:22px}
.assessment-section h2:after{background:var(--rose)}
.section-title>p{font-size:14px;font-weight:500}.about blockquote{border-left-width:4px;background:#F2E7E380;padding:18px 22px;border-radius:0 6px 6px 0}
.eyebrow{font-weight:600}.hero-footnote{font-weight:500}.assessment-card label{font-weight:500}
@keyframes invite-action{0%,70%,100%{box-shadow:0 5px 0 var(--terracotta),0 10px 24px #6B4D4B24}82%{box-shadow:0 5px 0 var(--terracotta),0 0 0 7px #D08D7E40}}
@media(max-width:700px){
 .hero{padding-top:250px;min-height:0;background:var(--porcelain)}
 .hero-photo,.hair-motion{height:290px;opacity:1;object-position:65% center}
 .hero-shade{height:290px;background:linear-gradient(0deg,#F2E7E3 0%,#F2E7E300 32%)}
 .hero-copy{padding:18px 6% 32px;background:var(--porcelain);max-width:100%}
 .hero h1{font-size:clamp(48px,12.5vw,72px)}.hero-description{max-width:100%}
 .hero-actions{align-items:stretch;gap:18px}.hero .button{justify-content:space-between}.hero .text-link{justify-content:center}
}
@media(prefers-reduced-motion:reduce){.hero .button{animation:none}.hero .button,.hero .button span,.header-cta,#assessment-next,#assessment-submit,.text-link,#servicios .service-photo-cta{transition:none!important;transform:none!important}}

/* Keep unpublished sections and navigation out of all layouts. */
[hidden]{display:none!important}

.language button:hover,.language button:focus-visible{background:var(--blush);color:var(--cocoa)}
