:root{--color-bg: #f6f0e2;--color-surface: #fff6f6;--color-surface-alt: #f3e3df;--color-stroke: #e8d0c9;--color-stroke-strong: rgba(116, 67, 68, .24);--color-text-main: #3a2326;--color-text-soft: #6b4547;--color-text-muted: #8a6560;--color-brand: #c87b90;--color-brand-deep: #6f2538;--surface-shadow: 0 18px 42px rgba(73, 38, 44, .12);--font-display: "Fraunces", "Times New Roman", serif;--font-body: "Instrument Sans", "Trebuchet MS", sans-serif;color:var(--color-text-main);font-family:var(--font-body);font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 10% 14%,rgba(239,179,190,.42),transparent 33%),radial-gradient(circle at 92% 7%,rgba(123,50,67,.24),transparent 29%),radial-gradient(circle at 54% 82%,rgba(157,105,90,.22),transparent 42%),var(--color-bg);margin:0;min-width:320px}a{color:inherit}.app-shell{margin:0 auto;max-width:1160px;padding:1.1rem 1rem 6.5rem;position:relative}.app-shell h1,.app-shell h2,.app-shell h3,.app-shell h4{font-family:var(--font-display)}.page-grain{background-image:radial-gradient(rgba(63,31,37,.07) .45px,transparent .45px);background-size:3px 3px;inset:0;mix-blend-mode:multiply;opacity:.2;pointer-events:none;position:fixed;z-index:-3}.bg-orb{border-radius:50%;filter:blur(58px);opacity:.58;pointer-events:none;position:fixed;z-index:-2}.bg-orb-top{background:radial-gradient(circle at 35% 30%,#f2b7c7 0%,#cf8092 35%,transparent 72%);height:430px;right:-170px;top:-170px;width:430px}.bg-orb-bottom{background:radial-gradient(circle at 60% 45%,#d8b2a4 0%,#a56e61 34%,transparent 74%);bottom:-220px;height:520px;left:-180px;width:520px}.topbar{align-items:center;background:#fff5f5bd;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-stroke-strong);border-radius:18px;display:grid;gap:.75rem;grid-template-columns:1fr;margin-bottom:2rem;padding:.85rem .9rem}.brand{color:var(--color-brand-deep);font-family:var(--font-display);font-size:clamp(1.5rem,4.4vw,2.15rem);font-variation-settings:"SOFT" 40;font-weight:700;letter-spacing:.02em;line-height:.9;margin:0;text-transform:lowercase}.brand-wrap{align-items:center;display:inline-flex;gap:.65rem}.brand-mark-shell{align-items:center;background:#c87b90;border:1px solid rgba(111,37,56,.2);border-radius:12px;box-shadow:none;display:inline-flex;height:46px;justify-content:center;overflow:hidden;padding:.16rem;width:46px}.brand-mark{display:block;filter:contrast(1.1);height:100%;object-fit:contain;transform:translateY(-1px);width:100%}.topbar-nav{display:inline-flex;flex-wrap:wrap;gap:.35rem}.topbar-link{border-radius:999px;color:var(--color-text-soft);font-size:.78rem;letter-spacing:.12em;padding:.35rem .65rem;text-decoration:none;text-transform:uppercase;transition:color .22s ease,background-color .22s ease}.topbar-link:hover{background:#6f253817;color:var(--color-text-main)}.topbar-cta{background:linear-gradient(120deg,var(--color-brand) 0%,var(--color-brand-deep) 100%);border-radius:999px;box-shadow:none;color:#fff5f4;font-size:.83rem;font-weight:600;justify-self:start;letter-spacing:.12em;padding:.68rem 1.18rem;text-decoration:none;text-transform:uppercase;transition:transform .22s ease,box-shadow .22s ease}.topbar-cta:hover{box-shadow:none;transform:translateY(-2px)}.section{margin-top:4.15rem;position:relative}.site-footer{align-items:center;border-top:1px solid var(--color-stroke-strong);display:flex;flex-direction:column;gap:.65rem;margin-top:4.5rem;padding-top:1.25rem}.site-footer-copy{color:var(--color-text-muted);font-size:.78rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.site-footer-links{display:inline-flex;flex-wrap:wrap;gap:.45rem}.site-footer-link{border-radius:999px;color:var(--color-text-soft);font-size:.73rem;font-weight:600;letter-spacing:.1em;padding:.3rem .6rem;text-decoration:none;text-transform:uppercase;transition:color .22s ease,background-color .22s ease}.site-footer-link:hover{background:#6f253817;color:var(--color-text-main)}.section-heading{max-width:56ch}.eyebrow{color:var(--color-text-muted);font-size:.72rem;font-weight:600;letter-spacing:.16em;margin:0;text-transform:uppercase}.section-heading h2{color:var(--color-brand-deep);font-family:var(--font-display);font-size:clamp(1.95rem,7vw,2.95rem);font-weight:700;letter-spacing:.01em;margin:.42rem 0 0;text-wrap:balance}.hero-section{display:grid;gap:1.35rem}.hero-copy h1{color:#4a222b;font-family:var(--font-display);font-size:clamp(2.25rem,9.2vw,4.9rem);font-weight:700;line-height:.92;margin:.72rem 0 1rem;max-width:13ch;text-wrap:pretty}.hero-copy>p{color:var(--color-text-soft);margin:0;max-width:52ch}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1rem}.hero-card,.service-card,.rules-card,.calendar-embed,.info-card,.instagram-card,.contact-card{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fff9f8c2;border:1px solid var(--color-stroke-strong);border-radius:23px;box-shadow:none;overflow:hidden}.hero-card{background:linear-gradient(140deg,#fff7f6f5,#f5e0d9cc),radial-gradient(circle at 85% 10%,rgba(196,121,139,.24),transparent 52%);padding:1.45rem}.hero-brand-image{display:block;height:100%;object-fit:cover;transform:scale(1.02) translateY(-9px);transform-origin:center;width:100%}.hero-brand-shell{background:#fffcfceb;border:1px solid rgba(111,37,56,.18);border-radius:16px;box-shadow:none;margin-bottom:.72rem;overflow:hidden;padding:.25rem;height:clamp(182px,46vw,220px)}.hero-card-kicker{color:var(--color-text-muted);font-size:.72rem;font-weight:700;letter-spacing:.15em;margin:0 0 .5rem;text-transform:uppercase}.hero-card h2{color:#5f2a35;font-family:var(--font-display);font-size:clamp(1.5rem,5vw,2.05rem);line-height:1;margin:0}.hero-card p,.hero-card li{color:var(--color-text-soft)}.home-service-note{color:var(--color-text-muted);font-size:.78rem;margin:.45rem 0 0}.hero-card ul{margin:.82rem 0 0;padding-left:1.02rem}.service-card{display:grid;gap:.34rem;margin-top:1.15rem;padding:1.35rem;position:relative}.service-image-shell{border:1px solid rgba(111,37,56,.2);border-radius:16px;margin:0 0 .95rem;max-height:410px;overflow:hidden;width:100%}.service-image{display:block;aspect-ratio:3 / 4;height:100%;object-fit:cover;object-position:center 18%;transform:scale(1.01);width:100%}.service-card--social-peinado .service-image{object-position:center 16%}.service-card--novia-peinado .service-image{object-position:center 14%}.service-grid{align-items:stretch;display:grid;gap:1rem;margin-top:1.15rem}.service-card:before{background:linear-gradient(90deg,transparent 0%,rgba(153,84,99,.72) 50%,transparent 100%);content:"";height:1px;left:1.35rem;position:absolute;right:1.35rem;top:0}.service-card h3{color:#5e2734;font-family:var(--font-display);font-size:clamp(1.65rem,5vw,2.45rem);line-height:.98;margin:0 0 .75rem;padding-bottom:.5rem;position:relative}.service-card h3:after,.rules-card h3:after,.info-card h3:after{background:linear-gradient(90deg,#6f25389e,#6f253824);bottom:0;content:"";height:1px;left:0;position:absolute;right:0}.service-step{color:var(--color-text-muted);font-size:.72rem;font-weight:700;letter-spacing:.13em;margin:0 0 .5rem;text-transform:uppercase}.service-price-label{color:var(--color-text-muted);font-size:.75rem;font-weight:700;letter-spacing:.11em;margin:1rem 0 .15rem;text-transform:uppercase}.service-price{color:var(--color-brand-deep);font-family:var(--font-display);font-size:clamp(1.6rem,5vw,2.1rem);line-height:1;margin:.2rem 0 .42rem}.service-coverage{color:var(--color-text-main);font-size:.9rem;font-weight:600;margin:0}.service-includes-title{color:var(--color-text-main);font-size:.86rem;font-weight:700;margin:.95rem 0 .5rem;text-transform:uppercase}.service-includes-list{margin:.2rem 0 .48rem;padding-left:1.05rem}.service-includes-list li{color:var(--color-text-soft);margin-bottom:.32rem}.service-meta{color:var(--color-text-soft);display:flex;flex-direction:column;font-size:.95rem;gap:.32rem;margin-top:.85rem}.booking-layout{display:grid;gap:1.1rem;margin-top:1rem;align-items:stretch;grid-template-columns:1fr}.rules-card{background:linear-gradient(148deg,#fffaf9f2,#f8e7e2d1),radial-gradient(circle at 86% 10%,rgba(186,84,109,.14),transparent 44%);display:grid;grid-auto-rows:min-content;padding:1.2rem}.rules-card h3,.info-card h3{color:#5a2431;font-family:var(--font-display);font-size:clamp(1.5rem,4vw,1.95rem);margin:0 0 .75rem;padding-bottom:.5rem;position:relative}.rules-card h4{color:#5a2431;font-family:var(--font-display);font-size:1.26rem;margin:1rem 0 .35rem}.rules-card ul,.info-card ul{margin:.62rem 0 1rem;padding-left:1.1rem}.rules-card li,.info-card li,.rules-card p,.info-card p,.instagram-card p,.contact-card p,.service-card p{color:var(--color-text-soft)}.hero-copy>p,.hero-card p,.service-card p,.rules-card p,.info-card p,.contact-card p,.embed-help{text-align:left;text-wrap:pretty}.calendar-embed{background:linear-gradient(145deg,#fffbfaf5,#f7e9e4d6),radial-gradient(circle at 12% 8%,rgba(177,102,120,.14),transparent 40%);display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}.calendar-cta-card{align-items:start;display:grid;gap:.45rem;padding:1rem 1rem .9rem}.calendar-frame-shell{border:1px solid rgba(111,37,56,.18);border-radius:16px;box-shadow:none;margin:.9rem .95rem 0;overflow:hidden}.calendar-cta-card h3{color:#5a2f39;font-family:var(--font-display);font-size:clamp(1.35rem,4vw,1.9rem);margin:0 0 .75rem;padding-bottom:.5rem;position:relative}.calendar-cta-card h3:after{background:linear-gradient(90deg,#6f25389e,#6f253824);bottom:0;content:"";height:1px;left:0;position:absolute;right:0}.calendar-cta-card p{color:var(--color-text-soft);margin:0}.calendar-embed--fallback{align-content:start;display:grid}.calendar-embed iframe{border:0;background:#fff;height:480px;width:100%}.embed-fallback{align-items:flex-start;background:linear-gradient(125deg,#fff1f0,#f8e8e7 48%,#f2dfda);border:1px solid rgba(133,77,77,.22);border-radius:17px;display:grid;gap:.9rem;min-height:270px;padding:1.2rem}.embed-fallback h3{color:#5a2f39;font-family:var(--font-display);font-size:clamp(1.4rem,4vw,1.95rem);margin:0}.embed-fallback p{color:var(--color-text-soft);margin:0}.embed-help{font-size:.86rem;margin:0;padding:.9rem 1rem 1rem}.coverage-grid{display:grid;gap:1.05rem;margin-top:1rem}.info-card,.instagram-card,.contact-card{padding:1.25rem}.info-card{background:linear-gradient(144deg,#fffaf8f5,#f6e5dfd6),radial-gradient(circle at 88% 12%,rgba(170,97,114,.16),transparent 45%)}.instagram-card{background:linear-gradient(155deg,#fffaf9f5,#f6e2dedb),radial-gradient(circle at 84% 8%,rgba(186,84,109,.18),transparent 46%);overflow:visible;position:relative}.contact-card{background:linear-gradient(148deg,#fff8f6f5,#f4e1dbdb),radial-gradient(circle at 86% 12%,rgba(164,84,105,.13),transparent 45%)}.instagram-card:before{background:linear-gradient(90deg,#a04d6000,#a04d608f,#a04d6000);content:"";height:1px;left:1.2rem;position:absolute;right:1.2rem;top:0}.instagram-placeholder{align-items:center;background:linear-gradient(120deg,#f6c9d080,#ebcbc19e,#e8c2b194),radial-gradient(circle at 16% 18%,rgba(186,84,109,.32),transparent 41%);border-radius:14px;display:flex;flex-direction:column;gap:.8rem;justify-content:center;margin-top:.7rem;min-height:180px;padding:1rem}.instagram-carousel{background:transparent;border:0;border-radius:0;padding:0;margin-top:.9rem;overflow:visible}.instagram-carousel-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:.9rem;padding:0 .1rem}.instagram-carousel-kicker{color:var(--color-text-muted);font-size:.74rem;font-weight:700;letter-spacing:.14em;margin:0;text-transform:uppercase}.instagram-grid--hidden{opacity:0;pointer-events:none}.instagram-media{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(130deg,#fffcfcfa,#fcece9e6);border:1px solid rgba(111,37,56,.2);border-radius:18px;box-shadow:none;display:grid;grid-template-rows:auto 1fr auto;isolation:isolate;margin:0!important;max-width:100%!important;min-width:0!important;overflow:hidden;padding:.72rem!important;position:relative;aspect-ratio:4 / 5;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;width:100%!important}.instagram-media:hover{border-color:#6f253861;box-shadow:none;transform:translateY(-3px)}.instagram-media-label{color:var(--color-text-muted);font-size:.68rem;font-weight:700;letter-spacing:.16em;margin:0 0 .45rem;text-transform:uppercase}.instagram-media-frame{border:1px solid rgba(111,37,56,.16);border-radius:14px;overflow:hidden}.instagram-media-link{color:var(--color-brand-deep);font-size:.72rem;font-weight:700;letter-spacing:.14em;margin-top:.55rem;text-decoration:none;text-transform:uppercase}.instagram-media iframe{border:0!important;border-radius:0!important;height:100%!important;min-height:390px!important;width:100%!important}.instagram-media>div{border-radius:12px;height:100%}.instagram-grid--carousel{align-items:stretch;content-visibility:auto;display:grid;gap:1.1rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.1rem;padding:.3rem .1rem .45rem}.instagram-controls{align-items:center;display:flex;gap:.6rem;justify-content:flex-end;margin-top:.9rem}.instagram-controls .btn:first-child{justify-self:start}.instagram-controls .btn:last-child{justify-self:end}.instagram-index{color:var(--color-text-muted);font-size:.76rem;font-weight:600;letter-spacing:.14em;margin:0;text-transform:uppercase}.instagram-actions{margin-top:1rem}.rules-card .btn{margin-top:.75rem}.instagram-loading{align-items:center;background:linear-gradient(125deg,#fff1f0f0,#fae6e1e6);border:1px solid rgba(133,77,77,.24);border-radius:14px;display:flex;gap:.65rem;margin-top:.9rem;padding:.8rem .95rem}.instagram-loading p{color:var(--color-text-soft);font-size:.88rem;letter-spacing:.03em;margin:0}.instagram-spinner{animation:spin .9s linear infinite;border:2px solid rgba(111,37,56,.2);border-radius:999px;border-top-color:var(--color-brand-deep);height:16px;width:16px}.btn{appearance:none;border:1px solid transparent;border-radius:999px;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;justify-content:center;letter-spacing:.12em;padding:.73rem 1.16rem;text-decoration:none;text-transform:uppercase;transition:transform .24s ease,background-color .24s ease,border-color .24s ease,box-shadow .24s ease,color .24s ease}.btn:hover{transform:translateY(-2px)}.btn:focus-visible{outline:2px solid rgba(111,37,56,.35);outline-offset:2px}.btn-primary{background:linear-gradient(125deg,var(--color-brand) 0%,var(--color-brand-deep) 100%);box-shadow:none;color:#fff4f5}.btn-primary:hover{box-shadow:none}.btn-ghost{background:#fbedebd9;border-color:var(--color-stroke-strong);color:var(--color-text-main)}.btn-ghost:hover{background:#fff4f2f0;border-color:#6f25386b}.booking-form{border-top:1px solid var(--color-stroke-strong);display:grid;gap:.55rem;margin-top:1rem;padding-top:1rem}.booking-form h4{color:#5a2431;font-family:var(--font-display);font-size:1.25rem;margin:0 0 .3rem}.booking-form label{color:var(--color-text-main);font-size:.85rem;font-weight:600}.booking-form input{background:#ffffffb8;border:1px solid var(--color-stroke-strong);border-radius:12px;color:var(--color-text-main);font-size:.94rem;padding:.62rem .75rem}.booking-form input:focus{border-color:var(--color-brand-deep);outline:2px solid rgba(111,37,56,.12)}.booking-form button[disabled]{cursor:not-allowed;opacity:.78}.booking-error{color:#7f1f31;font-size:.85rem;margin:0}.booking-form-help{color:var(--color-text-muted);font-size:.82rem;margin:0}.booking-deposit-notice{font-weight:700;margin-top:1.1rem;text-decoration:underline}.wallet-container{background:#ffffffb8;border:1px solid var(--color-stroke-strong);border-radius:12px;margin-top:.25rem;padding:.75rem}.payment-result{border:1px solid var(--color-stroke-strong);border-radius:12px;display:grid;gap:.3rem;margin-top:.9rem;padding:.8rem}.payment-result h4,.payment-result p{margin:0}.payment-result h4{font-family:var(--font-display);font-size:1.1rem}.payment-result--success{background:#d7f6e0b8;border-color:#1c763a59}.payment-result--pending{background:#fff4dcd1;border-color:#a372185c}.payment-result--error{background:#ffe6e9db;border-color:#9c2d3f61}.fade-up,.fade-up-delay{animation:rise-in .72s cubic-bezier(.16,1,.3,1) both}.fade-up-delay{animation-delay:.14s}@keyframes rise-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.fade-up,.fade-up-delay,.instagram-spinner,.btn,.instagram-media{animation:none!important;transition:none!important}}@media(min-width:760px){.app-shell{padding:1.4rem 2rem 6.6rem}.topbar{gap:.85rem;grid-template-columns:auto 1fr auto;margin-bottom:2.8rem;padding:.78rem .95rem}.topbar-nav{justify-content:center}.topbar-cta{justify-self:end}.site-footer{flex-direction:row;justify-content:space-between}.hero-section{align-items:start;gap:1.9rem;grid-template-columns:1.15fr .85fr}.hero-brand-shell{height:clamp(198px,24vw,228px)}.hero-brand-image{transform:scale(1.04) translateY(-9px)}.booking-layout{align-items:stretch;grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-embed iframe{height:520px}.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.instagram-media iframe{min-height:430px!important}}@media(min-width:1024px){.section-heading h2{text-wrap:nowrap;white-space:nowrap}.section-heading h2{font-size:clamp(1.85rem,2.9vw,2.55rem)}.service-card h3,.rules-card h3,.info-card h3,.hero-card h2{text-wrap:balance;white-space:normal}.info-card h3{line-height:1.05}}@media(max-width:480px){.instagram-grid--carousel{grid-template-columns:1fr}.instagram-controls{justify-content:stretch}.instagram-controls .btn,.instagram-controls .btn:first-child,.instagram-controls .btn:last-child{justify-self:stretch}}
