:root{--ink:#203c35;--green:#173f38;--muted:#63736b;--paper:#faf9f5;--line:#dddfd5;--serif:Georgia,'Times New Roman',serif;--radius:22px}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button,a,input,select,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b9683c;outline-offset:5px}
img{max-width:100%}
[hidden]{display:none!important}
.wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.narrow{max-width:860px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.1;letter-spacing:-.045em}
h1{font-family:var(--serif);font-size:clamp(2.5rem,4.7vw,4.6rem);font-weight:400;margin-bottom:24px}
h1 em,h2 em{font-weight:400;color:#6a785d}
h2{font-family:var(--serif);font-size:clamp(1.7rem,2.8vw,2.6rem);font-weight:400}
h3{font-size:1.25rem}
.eyebrow{font-size:.68rem;font-weight:750;letter-spacing:.18em;text-transform:uppercase;margin-bottom:23px;color:#53634f}
.lead{font-size:1.1rem;line-height:1.8;color:var(--muted);max-width:550px}
.fine-print{font-size:.78rem;line-height:1.65;color:var(--muted)}
.text-link{font-size:.88rem;font-weight:650;text-underline-offset:6px}
.text-link:hover{text-decoration:underline}
.button,.btn{display:inline-flex;justify-content:center;align-items:center;gap:25px;background:var(--green);color:white;border:1px solid var(--green);border-radius:9px;padding:15px 23px;font-size:.85rem;font-weight:650;min-height:49px;transition:background .15s}
.button:hover,.btn:hover{background:#2a594c}
.button-small{padding:11px 18px;min-height:43px;font-size:.78rem}
.hero-actions{display:flex;gap:27px;align-items:center;flex-wrap:wrap}
.skip-link{position:fixed;z-index:120;top:-100px;background:white;padding:12px}
.skip-link:focus{top:10px}
.site-header{position:sticky;top:0;background:rgba(250,249,245,.96);border-bottom:1px solid var(--line);z-index:30}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:86px;gap:24px}
.brand{display:inline-flex;align-items:center;font-family:var(--serif);font-size:2rem;font-weight:600;letter-spacing:-.06em}
.brand-dot{color:#a47655}
.brand-symbol{display:inline-flex;align-items:center;justify-content:center;font-size:1.55rem;width:33px;height:36px;position:relative;margin-right:8px}
.brand-symbol>span{position:absolute;right:-3px;top:-7px;font-size:19px;color:#7e8f6b}
.desktop-nav{display:flex;gap:30px;font-size:.83rem}
.desktop-nav a{padding:12px 0}
.desktop-nav a[aria-current],.desktop-nav a:hover{box-shadow:0 1px var(--green)}
.mobile-menu,.mobile-dock{display:none}
.home-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center;min-height:655px;padding-top:55px;padding-bottom:55px}
.home-hero h1{font-size:clamp(3.5rem,5.05vw,4.7rem);line-height:1.06;letter-spacing:-.055em}
.tiny-star{color:#a16f46;font-size:22px;vertical-align:middle;margin-right:8px}
.hero-price{margin-top:31px;display:grid;gap:3px;font-size:.85rem}
.hero-price small{font-size:.72rem;color:var(--muted)}
.hero-art{position:relative;background:#e8eadd;min-height:530px;border-radius:160px 160px 22px 22px;display:grid;place-items:center;padding:40px 40px 35px}
.hero-invitation{width:285px;transform:rotate(7deg);filter:drop-shadow(0 25px 25px #3d493d30)}
.art-note{position:absolute;z-index:2;font-size:.73rem;letter-spacing:.02em}
.note-top{top:4px;right:23px;transform:rotate(5deg)}
.note-bottom{bottom:15px;right:18px;font-family:var(--serif);font-style:italic;font-size:1rem}
.floating-note{position:absolute;left:-27px;bottom:91px;display:flex;align-items:center;gap:12px;background:#fffefb;border:1px solid #efefe5;border-radius:12px;padding:14px 20px;box-shadow:0 15px 30px #24362b0d;font-size:.8rem}
.floating-note>span{width:30px;height:30px;background:#edf0e4;border-radius:50%;display:grid;place-items:center}
.floating-note small{display:block;color:var(--muted);font-size:.7rem}
.promise-bar{border-block:1px solid var(--line);background:#f0f1e9}
.promise-bar .wrap{display:flex;justify-content:space-between;gap:15px;padding-block:20px;font-size:.8rem;color:#4c5d50}
.section-compact{padding-block:53px 64px}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:24px}
.section-heading .eyebrow{margin-bottom:13px}
.section-heading h2{margin-bottom:0}
.occasion-links{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.occasion-links>a{display:flex;align-items:center;gap:16px;border:1px solid var(--line);padding:21px 22px;border-radius:14px;background:#fffefb}
.occasion-links>a:hover{border-color:#8c9b7a}
.occasion-mark{font-size:2.2rem;line-height:1;color:#7a8a65}
.occasion-links small{display:block;font-size:.69rem;color:var(--muted);margin-top:3px}
.occasion-links b{margin-left:auto;font-size:1.2rem;font-weight:400}
.page-section{padding-top:42px;padding-bottom:65px}
.page-heading{max-width:790px;margin-bottom:30px}
.page-heading h1{font-size:clamp(2.35rem,4vw,3.7rem)}
.page-heading p{max-width:650px;color:var(--muted);font-size:.98rem}
.page-heading .eyebrow{margin-bottom:15px}
.filter-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:29px}
.filter-tabs button{border:1px solid var(--line);border-radius:30px;padding:10px 20px;min-height:44px;background:transparent;color:var(--ink);font-size:.78rem}
.filter-tabs button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}
.design-grid,.occasion-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}
.design-card,.occasion-card{min-width:0}
.design-thumbnail{background:#eaece2;border-radius:15px;display:flex;justify-content:center;align-items:center;overflow:hidden;padding:27px 35px;height:350px}
.design-thumbnail .invitation{width:224px;font-size:10px;transition:transform .2s}
.design-thumbnail:hover .invitation{transform:translateY(-5px) rotate(2deg)}
.design-caption{display:flex;align-items:center;justify-content:space-between;padding-top:16px}
.design-caption h2{font-family:inherit;letter-spacing:-.02em;font-size:1.08rem;font-weight:650;margin-bottom:3px}
.design-caption p{font-size:.75rem;color:var(--muted);margin:0}
.design-caption>a{border:1px solid var(--line);border-radius:50%;width:42px;height:42px;display:grid;place-items:center}
.design-grid+.fine-print{margin-top:30px}
.card-copy{padding:22px 4px}
.card-copy h2{font-size:1.75rem;margin-bottom:13px}
.card-copy p{font-size:.86rem;color:var(--muted)}
.invitation{position:relative;isolation:isolate;aspect-ratio: .69;width:100%;font-size:13px;background:#f5f2e6;color:#49543b;overflow:hidden;text-align:center;box-shadow:0 4px 20px #26382412;border:1px solid #ffffff6b}
.invitation-content{position:relative;z-index:1;padding:21% 11% 12%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.invitation-kicker{font-size:.62em;letter-spacing:.21em}
.invitation-rule{height:32px;width:1px;background:currentColor;opacity:.35;margin:13px 0}
.invitation-name{font-family:var(--serif);font-size:2.9em;line-height:1.06;margin-bottom:15px;font-weight:400;letter-spacing:-.06em;overflow-wrap:anywhere;max-width:100%}
.invitation-script{font-family:var(--serif);font-size:.95em;font-style:italic;line-height:1.5;opacity:.8;margin-bottom:22px}
.invitation-date{font-size:.75em;line-height:1.7}
.invitation-date span{font-size:.85em}
.invitation-place{font-size:.6em;margin-top:9px}
.invitation-button{border:1px solid currentColor;padding:7px 15px;border-radius:20px;margin-top:22px;font-size:.65em}
.invitation-bottom{position:absolute;bottom:15px;left:0;width:100%;font-size:.42em;letter-spacing:.23em}
.invitation-art{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.invitation-art i{position:absolute;display:block}
.invitation-art>span{position:absolute;top:22px;left:0;width:100%;font-size:26px;font-weight:300}
.invitation-oliva .invitation-art>span{display:none}
.invitation-oliva .invitation-art i{background:#74885a55;border-radius:0 100% 0 100%;width:26%;height:38%;transform:rotate(-25deg);top:-9%;left:-4%}
.invitation-oliva .invitation-art i:nth-child(2){top:-14%;left:12%;transform:rotate(24deg);background:#889a6a38}
.invitation-oliva .invitation-art i:nth-child(3){top:auto;left:auto;bottom:-12%;right:-4%;transform:rotate(-20deg);background:#87977355}
.invitation-oliva .invitation-art i:nth-child(4){top:auto;left:auto;bottom:-17%;right:15%;transform:rotate(30deg)}
.invitation-editorial{background:#f5eee3;color:#202b2b}
.invitation-editorial .invitation-art{inset:14px;border:1px solid #313e3460}
.invitation-editorial .invitation-art>span{font-size:20px}
.invitation-editorial .invitation-name{text-transform:uppercase;font-size:2.7em;letter-spacing:-.075em}
.invitation-aurora{background:radial-gradient(ellipse at 90% 2%,#ecc7dc,transparent 65%),radial-gradient(ellipse at 0 100%,#d7c8e8,transparent 60%),#fbf0f1;color:#6d435d}
.invitation-aurora .invitation-name{font-style:italic;font-size:3.6em}
.invitation-aurora .invitation-art i{width:5px;height:5px;background:#aa798d;transform:rotate(45deg);top:25%;left:12%}
.invitation-aurora .invitation-art i:nth-child(2){top:15%;left:78%}
.invitation-aurora .invitation-art i:nth-child(3){top:73%;left:89%}
.invitation-aurora .invitation-art i:nth-child(4){top:86%;left:15%}
.invitation-confeti{background:#f6df70;color:#42305d}
.invitation-confeti .invitation-name{font-family:system-ui,sans-serif;font-weight:850;font-size:2.9em;letter-spacing:-.06em}
.invitation-confeti .invitation-art i{width:80px;height:80px;border:16px solid #ee8d78;border-radius:50%;left:-40px;top:-30px}
.invitation-confeti .invitation-art i:nth-child(2){top:auto;left:auto;bottom:-30px;right:-40px;width:120px;height:120px;border-color:#9aa5e0}
.invitation-confeti .invitation-art i:nth-child(3){width:20px;height:50px;background:#72a191;border:0;border-radius:20px;top:20%;left:auto;right:-3px;transform:rotate(30deg)}
.invitation-confeti .invitation-art i:nth-child(4){width:14px;height:40px;background:#9aa5e0;border:0;border-radius:15px;top:68%;left:8px;transform:rotate(-30deg)}
.invitation-cielo{background:#eaf1f5;color:#426271}
.invitation-cielo .invitation-art i{width:140px;height:140px;border-radius:50%;background:#ffffffa8;left:-20%;top:-15%}
.invitation-cielo .invitation-art i:nth-child(2){left:auto;right:-30%;top:60%;width:210px;height:210px}
.invitation-cielo .invitation-art>span{color:#a19466}
.invitation-gala{background:#172c37;color:#e4cc9a}
.invitation-gala .invitation-art{inset:14px;border:1px solid #c9b17e70}
.invitation-gala .invitation-art:after{content:'';position:absolute;inset:5px;border:1px solid #c9b17e30}
.invitation-gala .invitation-name{font-size:2.65em}
.back-link{display:inline-block;font-size:.8rem;color:var(--muted);margin-bottom:28px;padding-block:5px}
.event-layout,.design-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}
.event-preview{max-width:340px;justify-self:center}
.event-preview>.fine-print{text-align:center;margin:15px 0 0}
.feature-list{list-style:none;padding:0;margin:25px 0}
.feature-list li{position:relative;padding-left:25px;margin:12px 0;font-size:.9rem}
.feature-list li:before{content:'✓';position:absolute;left:0;color:#60744d}
.personalization-note{margin-top:45px;padding:26px 30px;background:#edf0e5;border-radius:18px;display:flex;gap:25px;align-items:center}
.personalization-note>span{font-size:2.4rem;color:#788963}
.personalization-note h2{font-size:1.6rem;margin-bottom:10px}
.personalization-note p{font-size:.9rem;color:var(--muted);margin-bottom:0}
.personalization-note .text-link{display:inline-block;margin-top:12px}
.design-detail{grid-template-columns:1fr 1fr;gap:80px}
.design-preview-frame{padding:30px 65px;background:#e9ecdf;border-radius:20px}
.design-preview-frame>.fine-print{text-align:center;margin:20px 0 0}
.design-tools h1 em{display:block;font-size:.6em;margin-top:6px}
.design-tools label{display:block;font-size:.8rem;font-weight:650;margin-bottom:8px}
.design-tools input{width:100%;border:1px solid #cdd4c8;background:#fffefa;border-radius:8px;padding:13px;color:var(--ink);min-height:48px}
.design-tools .fine-print{margin-top:9px}
.design-personalization{padding-block:18px}
.design-personalization h2{font-size:1.5rem;margin-bottom:10px}
.design-personalization p{font-size:.87rem;color:var(--muted)}
.secondary-link{display:block;margin-top:19px}
.plans-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.plan-card{border:1px solid var(--line);background:#fffefa;border-radius:20px;padding:30px;display:flex;flex-direction:column}
.plan-card.featured{border-color:#6b825b}
.plan-topline{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:.6rem;letter-spacing:.12em;margin-bottom:21px;color:var(--muted)}
.pill{background:#e8eddc;padding:4px 8px;border-radius:6px;font-size:.65rem;letter-spacing:0}
.plan-card h2{font-size:1.95rem;margin-bottom:13px}
.plan-card>p{font-size:.85rem;color:var(--muted);min-height:65px}
.plan-price{font-size:1.8rem;letter-spacing:-.045em;font-weight:650;line-height:1.2;margin-bottom:8px}
.term-label{font-size:.75rem;color:#657052}
.plan-card .feature-list{border-top:1px solid var(--line);padding-top:17px;flex:1}
.plan-buttons{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.plan-buttons .text-link{font-size:.8rem}
.quiet-note{padding:24px 0 0;color:var(--muted);font-size:.87rem}
.quiet-note p{margin-bottom:12px}
.plan-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:65px}
.plan-detail h1{font-size:3.4rem}
.plan-detail h2{font-size:1.8rem;margin-top:32px}
.purchase-card{border-radius:18px;padding:30px;background:#edf0e5;align-self:start;position:sticky;top:120px}
.purchase-card>span{font-size:.75rem}
.purchase-card .plan-price{margin-top:15px}
.purchase-card p{font-size:.87rem}
.purchase-card .button{width:100%;margin:10px 0}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}
.steps-grid article{border-top:1px solid #b8c2b0;padding-top:24px}
.step-number{font-family:var(--serif);font-size:2.3rem;color:#82936e;display:block;margin-bottom:18px}
.steps-grid h2{font-size:1.55rem;margin-bottom:16px}
.steps-grid p{font-size:.85rem;color:var(--muted)}
.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}
.faq-list summary{cursor:pointer;font-weight:600;font-size:.95rem;padding-right:14px}
.faq-list p{font-size:.9rem;color:var(--muted);margin:15px 0 0}
.site-footer{border-top:1px solid var(--line);background:#f1f2eb;padding:34px 0}
.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.site-footer .brand{font-size:1.65rem}
.site-footer p{font-size:.73rem;color:var(--muted);margin:6px 0 0}
.site-footer nav{display:flex;align-items:center;justify-content:flex-end;gap:24px;font-size:.74rem;flex-wrap:wrap}
.site-footer small{font-size:.66rem;color:var(--muted);grid-column:1/-1}
.cotizador .head{max-width:780px;margin-bottom:28px}
.cotizador h1{font-size:3rem}
.cotizador .head p{color:var(--muted);font-size:.9rem}
.cotiza-box{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:25px;align-items:start}
.cotiza-opciones{border:1px solid var(--line);background:#fffefa;padding:26px;border-radius:18px}
.cotiza-campo label{display:block;font-size:.8rem;font-weight:650;margin-bottom:7px}
.cotiza-campo select,.cotiza-campo input{width:100%;padding:12px 10px;border:1px solid #cdd4c8;border-radius:8px;background:#fffefa;color:var(--ink);min-height:48px;font-size:.88rem}
.cotiza-campo small{display:block;font-size:.7rem;color:var(--muted);margin-top:8px}
.cotiza-cantidades{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.event-fields{margin-bottom:24px}
.cotiza-incluido{display:none;background:#edf0e5;padding:13px;border-radius:8px;font-size:.78rem}
.cotiza-incluido.show{display:block}
.extras-disclosure{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}
.extras-disclosure>summary{cursor:pointer;font-size:.86rem;font-weight:650}
.extras-disclosure>summary span{font-weight:400;color:var(--muted);margin-left:8px;font-size:.75rem}
.cotiza-ayuda{font-size:.74rem;color:var(--muted);margin-top:15px}
.cotiza-lista{display:grid;gap:11px}
.cotiza-servicio{display:flex;align-items:flex-start;gap:13px;padding:13px;border:1px solid var(--line);border-radius:10px;cursor:pointer}
.cotiza-servicio:has(input:checked){background:#edf0e5;border-color:#8ba078}
.cotiza-servicio input{width:19px;height:19px;flex-shrink:0;accent-color:var(--green);margin-top:3px}
.cotiza-servicio>span{font-size:.82rem;font-weight:600}
.cotiza-servicio small,.cotiza-servicio em{display:block;font-size:.72rem;font-weight:400;font-style:normal;line-height:1.5;margin-top:5px;color:var(--muted)}
.cotiza-servicio em{color:#3a5b35}
.cotiza-servicio.is-incluido{background:#f0f3ea}
.cotiza-total{background:var(--green);color:#fff;padding:27px;border-radius:18px;position:sticky;top:112px}
.cotiza-total h3{font-family:var(--serif);font-size:1.6rem;font-weight:400;margin-bottom:23px}
.cotiza-total .desde{font-size:.7rem;color:#c1d1c4}
.cotiza-total .valor{font-size:2rem;letter-spacing:-.05em;font-weight:650;margin:4px 0 22px}
.cotiza-resumen{padding:16px 0;list-style:none;border-block:1px solid #638375;margin-bottom:24px}
.cotiza-resumen li{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;margin:12px 0}
.cotiza-resumen strong{white-space:nowrap;font-size:.76rem}
.cotiza-total .btn{background:#dce5c4;border:0;color:#1d3c32;width:100%;font-size:.82rem;padding:14px}
.cotiza-nota{font-size:.7rem;color:#d0dbd2;line-height:1.65;margin:17px 0 0}
.notice{padding:15px;background:#fff2d7;font-size:.85rem}

@media(min-width:1500px){.home-hero{min-height:700px}
}

@media(max-width:1000px){.wrap{width:calc(100% - 48px)}
.desktop-nav{gap:18px}
.home-hero{gap:30px;min-height:600px}
.home-hero h1{font-size:3.3rem}
.hero-art{min-height:460px;padding-inline:20px}
.hero-invitation{width:245px}
.floating-note{left:-16px;padding:10px 14px}
.hero-actions{gap:18px}
.design-thumbnail{padding:22px;height:310px}
.design-thumbnail .invitation{width:195px;font-size:8.5px}
.design-detail{gap:38px}
.design-preview-frame{padding:25px 40px}
.event-layout{gap:40px}
.plan-buttons .button{width:100%}
.steps-grid{grid-template-columns:repeat(2,1fr)}
.site-footer nav{gap:15px}
.occasion-links>a{padding:18px 14px;gap:10px}
.occasion-mark{font-size:1.7rem}
.occasion-links>a>span:nth-child(2){font-size:.88rem}
}

@media(max-width:720px){body{padding-bottom:73px}
.wrap{width:calc(100% - 36px)}
.nav-inner{height:66px;gap:12px}
.brand{font-size:1.7rem}
.brand-symbol{width:23px;font-size:1.3rem;margin-right:9px}
.brand-symbol>span{right:-5px;top:-5px;font-size:17px}
.desktop-nav{display:none}
.header-quote{margin-left:auto;font-size:.69rem;padding:8px 11px;min-height:39px;gap:8px}
.mobile-menu{display:block}
.mobile-menu>summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:6px;font-size:.73rem}
.mobile-menu>summary::-webkit-details-marker{display:none}
.mobile-menu nav{position:absolute;left:0;right:0;top:66px;background:var(--paper);border-bottom:1px solid var(--line);padding:12px 20px 22px;box-shadow:0 16px 20px #263e2b14;display:grid;grid-template-columns:1fr 1fr;gap:5px}
.mobile-menu nav a{padding:12px;font-size:.88rem}
.mobile-dock{position:fixed;z-index:40;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;background:#fffefb;border-top:1px solid var(--line);padding:7px 8px max(8px,env(safe-area-inset-bottom));box-shadow:0 -6px 20px #25382a06}
.mobile-dock a{display:flex;flex-direction:column;align-items:center;font-size:.62rem;color:#647367;min-width:65px;min-height:48px;line-height:1.45}
.mobile-dock a>span{font-size:1.35rem;line-height:1.35}
.mobile-dock a[aria-current]{color:var(--green);font-weight:750;background:#edf1e4;border-radius:10px}
.home-hero{display:flex;flex-direction:column;gap:25px;padding-block:33px 28px;min-height:0}
.hero-copy{width:100%}
.eyebrow{font-size:.59rem;margin-bottom:17px;letter-spacing:.14em}
.home-hero h1{font-size:clamp(2.9rem,9.7vw,4.1rem);margin-bottom:20px}
.lead{font-size:.92rem;line-height:1.75}
.hero-copy .lead br{display:none}
.hero-actions{gap:17px}
.button,.btn{min-height:47px;padding:13px 18px;font-size:.79rem;gap:18px}
.hero-actions .text-link{font-size:.76rem}
.hero-price{margin-top:23px;font-size:.8rem}
.hero-price small{font-size:.67rem}
.hero-art{width:100%;min-height:360px;border-radius:110px 110px 17px 17px;padding:25px}
.hero-invitation{width:215px}
.hero-invitation .invitation{font-size:9.5px}
.note-top{top:8px;right:7px;font-size:.65rem}
.floating-note{left:0;bottom:60px;font-size:.72rem;padding:11px 14px}
.floating-note small{font-size:.63rem}
.floating-note>span{width:26px;height:26px}
.note-bottom{bottom:12px;font-size:.8rem}
.promise-bar .wrap{padding-block:13px;flex-wrap:wrap;justify-content:center;gap:5px 14px;font-size:.65rem}
.section-compact{padding-block:32px 35px}
.section-heading{display:block;margin-bottom:20px}
.section-heading h2{font-size:1.85rem;margin-bottom:12px}
.section-heading .text-link{font-size:.75rem}
.occasion-links{grid-template-columns:1fr;gap:9px}
.occasion-links>a{padding:13px 17px}
.occasion-links small{font-size:.67rem}
.occasion-mark{font-size:1.9rem}
.page-section{padding-block:25px 37px}
.page-heading h1{font-size:2.45rem;line-height:1.12}
.page-heading h1 br{display:none}
.page-heading p{font-size:.86rem}
.page-heading{margin-bottom:23px}
.filter-tabs{gap:7px;margin-bottom:21px}
.filter-tabs button{font-size:.72rem;padding:9px 13px;min-height:42px}
.design-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 13px}
.design-thumbnail{padding:15px 12px;height:auto;min-height:220px}
.design-thumbnail .invitation{width:100%;font-size:6.3px}
.design-caption{padding-top:10px;gap:5px}
.design-caption h2{font-size:.9rem}
.design-caption p{font-size:.62rem}
.design-caption>a{width:33px;height:36px;flex-shrink:0}
.occasion-cards{grid-template-columns:1fr;gap:20px}
.occasion-card{display:grid;grid-template-columns:.8fr 1fr;gap:16px;align-items:center}
.occasion-card .design-thumbnail{padding:15px 13px;min-height:210px}
.card-copy{padding:0}
.card-copy h2{font-size:1.55rem;margin-bottom:10px}
.card-copy p{font-size:.74rem;line-height:1.65}
.card-copy .text-link{font-size:.69rem}
.back-link{margin-bottom:20px;font-size:.74rem}
.event-layout,.design-detail,.plan-detail{grid-template-columns:1fr;gap:26px}
.event-layout h1{font-size:2.5rem}
.feature-list{margin:22px 0}
.feature-list li{font-size:.82rem;margin:11px 0}
.event-preview{max-width:280px}
.event-preview .invitation{font-size:12px}
.personalization-note{margin-top:30px;padding:21px;gap:16px;align-items:flex-start}
.personalization-note>span{font-size:1.6rem}
.personalization-note h2{font-size:1.45rem}
.personalization-note p{font-size:.79rem}
.design-detail{display:flex;flex-direction:column-reverse;gap:28px}
.design-tools{width:100%}
.design-tools h1{font-size:2.8rem}
.design-tools h1 em{display:inline-block;margin-left:10px}
.design-personalization{padding-block:10px}
.design-tools .button{width:100%}
.design-preview-frame{padding:25px 45px;width:100%;max-width:390px}
.design-preview-frame .invitation{font-size:11.5px}
.plans-grid{grid-template-columns:1fr;gap:16px}
.plan-card{padding:23px}
.plan-card h2{font-size:1.9rem}
.plan-card>p{min-height:0;font-size:.82rem}
.plan-topline{margin-bottom:18px}
.plan-price{font-size:1.75rem}
.plan-card .feature-list{margin-block:20px}
.plan-buttons{gap:15px}
.plan-buttons .text-link{font-size:.77rem}
.quiet-note{font-size:.79rem}
.plan-detail h1{font-size:2.6rem}
.purchase-card{position:static;padding:25px}
.steps-grid{gap:25px 20px}
.steps-grid h2{font-size:1.5rem}
.steps-grid p{font-size:.79rem}
.step-number{font-size:2rem;margin-bottom:12px}
.faq-list details{padding:18px 0}
.faq-list summary{font-size:.86rem}
.faq-list p{font-size:.81rem}
.footer-inner{grid-template-columns:1fr;gap:19px}
.site-footer{padding-block:26px}
.site-footer nav{justify-content:flex-start;font-size:.7rem;gap:12px 20px}
.site-footer p{font-size:.69rem}
.site-footer small{font-size:.63rem}
.cotiza-box{grid-template-columns:1fr;gap:19px}
.cotizador h1{font-size:2.4rem}
.cotiza-opciones{padding:19px}
.cotiza-cantidades{gap:15px;grid-template-columns:1fr}
.event-fields{grid-template-columns:1fr 1fr;gap:10px}
.cotiza-campo input,.cotiza-campo select{font-size:16px;padding:11px 9px}
.cotiza-campo label{font-size:.75rem}
.cotiza-total{position:static;padding:23px}
.cotiza-total .valor{font-size:1.85rem}
.cotiza-total h3{font-size:1.6rem}
.cotiza-resumen li{font-size:.72rem}
.cotiza-resumen strong{font-size:.73rem}
.cotiza-servicio{padding:12px;gap:10px}
.cotiza-servicio>span{font-size:.78rem}
.cotiza-servicio small{font-size:.7rem}
.extras-disclosure>summary{font-size:.8rem}
.design-tools input{font-size:16px}
}

@media(max-width:360px){.wrap{width:calc(100% - 28px)}
.header-quote{font-size:.64rem;padding-inline:8px}
.brand{font-size:1.45rem}
.mobile-menu>summary{font-size:.68rem}
.home-hero h1{font-size:2.7rem}
.design-thumbnail .invitation{font-size:5.5px}
.hero-actions{gap:15px}
.hero-actions .button{width:100%}
.hero-actions .text-link{padding:5px 0}
.event-fields{grid-template-columns:1fr}
.design-caption p{font-size:.57rem}
.design-preview-frame{padding-inline:35px}
.occasion-card{gap:13px}
.occasion-card .design-thumbnail{padding:13px 10px}
.steps-grid{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


.extra-group{border:1px solid var(--line);border-radius:10px;margin-top:10px;padding:13px}
.extra-group>summary{font-size:.79rem;font-weight:600;cursor:pointer}
.extra-group>summary span{font-size:.69rem;font-weight:400;color:var(--muted);margin-left:8px}
.extra-group .cotiza-lista{margin-top:15px}

.invitation-art>span{top:8px;font-size:1.5em;line-height:1}

/* Tekambra product identity and interactive invitation previews. */
:root{--green:#12475a;--ink:#183944}
.tekambra-brand{gap:10px;font-family:system-ui,sans-serif;font-size:1.14rem;font-weight:800;letter-spacing:.05em;line-height:1.1}
.tekambra-brand small{display:block;font-size:.5rem;font-weight:600;letter-spacing:.13em;margin-top:6px;color:#58776e}
.tekambra-mark{display:grid;place-items:center;width:37px;height:42px;border-radius:10px;background:#12475a;color:white;font-size:1.55rem;position:relative}
.tekambra-mark>span{position:absolute;right:-5px;top:-6px;color:#9cb775;font-size:19px}
.site-header{background:rgba(250,249,245,.97)}
.interactive-hero{background:radial-gradient(ellipse at 30% 30%,#ddebe6,#e6e9d8);border-radius:120px 120px 22px 22px;padding:35px 25px;min-height:600px}
.interactive-invitation{position:relative;width:min(100%,350px);min-width:0;min-height:535px;border-radius:24px;background:radial-gradient(ellipse at top right,#ffffff18,transparent 70%),var(--demo-color);color:var(--demo-ink);box-shadow:0 25px 60px #18344e2b;isolation:isolate;overflow:hidden;text-align:center;--seal-ink:#332a1b}
.demo-ready{height:535px}
.demo-cover{position:absolute;inset:0;z-index:3;perspective:1000px;transition:opacity .35s .5s;background:radial-gradient(ellipse at 50% 90%,#ffffff15,transparent 65%),var(--demo-color)}
.demo-intro{font-family:var(--serif);font-style:italic;font-size:1rem;line-height:1.5;position:absolute;top:37px;left:20px;right:20px;opacity:.9}
.demo-envelope{position:absolute;left:22px;right:22px;top:142px;height:250px;border-radius:16px;background:#ffffff17;box-shadow:0 24px 35px #0003;perspective:900px;overflow:visible}
.envelope-paper{position:absolute;inset:12px;background:var(--demo-accent);border-radius:8px;opacity:.5;transition:transform .6s}
.envelope-front{position:absolute;inset:0;border-radius:15px;background:linear-gradient(33deg,#0002 49%,transparent 50%),linear-gradient(-33deg,#ffffff10 49%,transparent 50%),var(--demo-color);clip-path:polygon(0 0,50% 55%,100% 0,100% 100%,0 100%)}
.envelope-flap{position:absolute;inset:0;clip-path:polygon(0 0,100% 0,50% 57%);background:linear-gradient(#ffffff25,#ffffff06),var(--demo-color);transform-origin:top;transition:transform .65s ease;z-index:2}
.demo-seal{position:absolute;z-index:4;top:240px;left:50%;transform:translateX(-50%);width:100px;height:100px;border:4px double #ffffff80;border-radius:50%;background:radial-gradient(circle at 25% 20%,#ffffff70,transparent 65%),var(--demo-accent);color:var(--seal-ink);font-family:var(--serif);font-style:italic;font-size:1.8rem;box-shadow:0 6px 20px #0003;cursor:pointer;transition:opacity .25s,transform .35s}
.demo-seal:hover{transform:translateX(-50%) scale(1.04)}
.demo-open-hint{position:absolute;bottom:64px;left:20px;right:20px;font-size:.61rem;letter-spacing:.19em;opacity:.85}
.is-open .demo-cover{opacity:0;pointer-events:none}
.is-open .envelope-flap{transform:rotateX(180deg)}
.is-open .envelope-paper{transform:translateY(-60px)}
.is-open .demo-seal{opacity:0;transform:translateX(-50%) scale(.8)}
.demo-content{position:relative;padding:31px 24px 48px;z-index:1}
.is-open .demo-content{animation:demo-reveal .7s .35s both}
.demo-stars{font-size:1.05rem;letter-spacing:8px;color:var(--demo-accent);margin-bottom:17px}
.demo-kicker{font-size:.54rem;letter-spacing:.21em;display:block;margin-bottom:18px}
.demo-content h2{font-size:2.8rem;line-height:1.04;overflow-wrap:anywhere;color:inherit;margin-bottom:16px}
.demo-content h2.long-name{font-size:1.65rem}
.demo-dedication{font-family:var(--serif);font-style:italic;font-size:.88rem;opacity:.85;line-height:1.5;margin-bottom:20px}
.demo-tabs{display:flex;justify-content:center;gap:6px;border-block:1px solid #ffffff28;padding:10px 0}
.demo-tabs button{font-size:.68rem;background:transparent;border:1px solid currentColor;border-radius:20px;color:inherit;padding:8px 12px;min-height:36px}
.demo-tabs button[aria-pressed=true]{background:var(--demo-ink);color:var(--demo-color);border-color:var(--demo-ink)}
.demo-screen{padding:17px 0 10px;min-height:129px;font-size:.78rem;line-height:1.6}
.demo-screen p{margin-bottom:10px}.demo-mini-note{font-size:.66rem;opacity:.8;display:block}
.demo-rsvp{background:var(--demo-ink);color:var(--demo-color);border:0;border-radius:7px;font-size:.74rem;padding:10px 13px}
.demo-status{font-size:.65rem;margin-top:10px}
.demo-replay{font-size:.66rem;background:none;color:inherit;border:0;text-decoration:underline;text-underline-offset:5px;min-height:35px}
.demo-caption{position:absolute;bottom:16px;left:10px;right:10px;font-size:.45rem;letter-spacing:.14em;opacity:.75;z-index:5;pointer-events:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
[data-theme=quince] .demo-content h2{font-style:italic}
[data-theme=quince] .demo-stars{letter-spacing:15px}
[data-theme=celebracion] .demo-content h2{font-family:system-ui,sans-serif;font-size:2.2rem;font-weight:750}
@keyframes demo-reveal{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.experience-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}
.experience-stage{background:#e5eae1;padding:38px;border-radius:24px;display:flex;justify-content:center;position:sticky;top:110px}
.experience-controls h2{font-size:2rem;margin-bottom:22px}
.experience-controls>label,.experience-controls select,.experience-controls>input,.experience-controls textarea{display:block;width:100%}
.experience-controls>label{font-size:.8rem;font-weight:600;margin:16px 0 7px}
.experience-controls input:not([type=color]),.experience-controls select,.experience-controls textarea,.personalization-request textarea{font:inherit;font-size:.88rem;padding:12px;border:1px solid #cdd4c8;background:#fffefb;border-radius:8px;color:var(--ink);width:100%;max-width:100%;resize:vertical}
.palette-field{padding:0;border:0;margin:20px 0}
.palette-field legend{font-size:.8rem;font-weight:600;margin-bottom:10px}
.palette-options{display:flex;gap:7px;flex-wrap:wrap}
.palette-options button{background:#fffefb;border:1px solid var(--line);border-radius:9px;padding:9px 11px;display:flex;gap:7px;align-items:center;font-size:.69rem;min-height:43px;color:var(--ink)}
.palette-options button[aria-pressed=true]{border-color:#12475a;box-shadow:0 0 0 1px #12475a}
.palette-options i{display:block;width:19px;height:19px;border-radius:50%;border:1px solid #0001}
.custom-colors{display:flex;gap:24px;margin-top:15px}
.custom-colors label{font-size:.73rem;display:flex;align-items:center;gap:12px}
.custom-colors input{width:44px;height:38px;border:1px solid var(--line);border-radius:6px;padding:3px;background:#fff;cursor:pointer}
.invitation.customized{background:var(--demo-color);color:var(--demo-ink)}
.invitation.customized .invitation-art i{background:var(--demo-accent);opacity:.25}
.invitation.customized .invitation-art>span{color:var(--demo-accent)}
.design-demo-link{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;border:1px solid var(--line);background:#edf1e9;border-radius:14px;margin-bottom:25px;font-size:.86rem}
.product-bridge{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;border-top:1px solid var(--line);padding-top:38px;padding-bottom:48px}
.product-bridge h2{font-size:2rem;margin-top:16px}
.product-bridge p{font-size:.88rem;color:var(--muted)}
.bridge-modules{display:flex;flex-wrap:wrap;gap:12px}.bridge-modules span{padding:14px 19px;background:#edf0e8;border:1px solid #d9e2d3;border-radius:12px;font-size:.84rem}
.event-dashboard{background:#eef2f4;border:1px solid #d7dfe3;border-radius:20px;overflow:hidden}
.dashboard-title{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 25px;background:linear-gradient(100deg,#162844,#146264);color:white}
.dashboard-title>div{display:flex;align-items:center;gap:14px}.dashboard-title strong{font-size:.94rem;line-height:1.3}.dashboard-title small{display:block;font-size:.7rem;font-weight:400;margin-top:5px;color:#dde5e6}
.dashboard-icon{border:1px solid #ffffff50;border-radius:12px;width:40px;height:40px;display:grid;place-items:center;color:#e7c77e}
.dashboard-demo-label{font-size:.63rem;border:1px solid #ffffff50;border-radius:20px;padding:6px 11px}
.dashboard-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:15px 22px;background:#24384c}
.dashboard-tabs button{font-size:.73rem;color:white;border:1px solid #ffffff50;padding:9px 13px;border-radius:22px;background:transparent;min-height:39px}
.dashboard-tabs button[aria-pressed=true]{background:#fff;color:#1b344b;border-color:#fff}
.dashboard-workspace{padding:25px}.dashboard-module{padding:25px;background:#fff;border:1px solid #d9e3e8;border-radius:14px}
.dashboard-module h2{font-family:system-ui,sans-serif;font-weight:650;letter-spacing:-.035em;font-size:1.55rem;margin-bottom:14px}
.dashboard-module p{font-size:.88rem;color:#526478;max-width:760px}
.dashboard-preview{background:#f4f0fc;border:1px solid #dfd4f4;border-radius:12px;padding:20px;margin-top:20px}
.dashboard-preview>span{display:block;font-size:.68rem;color:#726086;margin-bottom:6px}.dashboard-preview strong{display:block;font-size:.95rem;margin-bottom:10px}
.dashboard-preview p{font-size:.79rem}.dashboard-stats{display:flex;gap:20px}.dashboard-stats>div{padding:15px 25px;background:#edf2f7;border-radius:12px}.dashboard-stats b{display:block;font-size:1.7rem}.dashboard-stats span{font-size:.7rem}
.panel-scope{display:flex;justify-content:space-between;gap:40px;align-items:center;margin-top:30px}.panel-scope>div{max-width:760px}.panel-scope h2{font-size:1.7rem}.panel-scope p{font-size:.85rem;color:var(--muted);margin-bottom:0}.panel-scope .button{flex-shrink:0}
.personalization-request{margin-bottom:21px}
@media(max-width:1000px){.desktop-nav{gap:17px}.tekambra-brand{font-size:.95rem}.experience-layout{gap:30px}.experience-stage{padding:25px}.panel-scope{align-items:flex-start;flex-direction:column;gap:15px}.custom-colors{gap:14px}.custom-colors label{font-size:.69rem;gap:8px}}
@media(max-width:720px){.tekambra-brand{font-size:.91rem;gap:7px}.tekambra-brand small{font-size:.43rem;letter-spacing:.08em}.tekambra-mark{width:29px;height:33px;font-size:1.25rem}.tekambra-mark>span{font-size:14px;right:-4px;top:-5px}.header-quote{font-size:.64rem;min-height:38px;padding:8px 9px}.header-quote>span{display:none}.nav-inner{gap:9px}.interactive-hero{min-height:590px;padding:32px 15px 25px;border-radius:70px 70px 18px 18px}.interactive-invitation{width:100%;max-width:340px}.home-hero{gap:25px}.interactive-hero .note-top{font-size:.59rem;top:7px;right:12px}.interactive-hero .note-bottom{bottom:8px;font-size:.74rem}.experience-layout{grid-template-columns:1fr;gap:26px}.experience-stage{position:static;padding:20px 15px}.experience-controls h2{font-size:1.8rem}.experience-controls input:not([type=color]),.experience-controls select,.experience-controls textarea,.personalization-request textarea{font-size:16px}.experience-controls .button{width:100%}.custom-colors{gap:20px;flex-wrap:wrap}.design-demo-link{flex-direction:column;align-items:flex-start;padding:17px;font-size:.8rem;gap:12px}.product-bridge{grid-template-columns:1fr;gap:20px;padding-block:30px}.product-bridge h2{font-size:1.65rem}.product-bridge h2 br{display:none}.product-bridge p{font-size:.82rem}.bridge-modules{gap:8px}.bridge-modules span{padding:10px 13px;font-size:.73rem}.dashboard-title{padding:17px 15px;gap:10px}.dashboard-title strong{font-size:.82rem}.dashboard-title small{font-size:.6rem}.dashboard-demo-label{font-size:.57rem;padding:5px 8px}.dashboard-tabs{padding:12px;gap:7px}.dashboard-tabs button{font-size:.65rem;padding:8px 10px;min-height:38px}.dashboard-workspace{padding:12px}.dashboard-module{padding:18px}.dashboard-module h2{font-size:1.3rem}.dashboard-module p{font-size:.8rem}.dashboard-preview{padding:16px}.dashboard-preview strong{font-size:.85rem}.dashboard-stats{gap:10px}.dashboard-stats>div{padding:12px}.dashboard-stats span{font-size:.65rem}.panel-scope h2{font-size:1.6rem}.panel-scope p{font-size:.8rem}.palette-options button{font-size:.63rem;padding:9px}}
@media(max-width:360px){.tekambra-brand{font-size:.78rem}.tekambra-brand small{font-size:.36rem}.tekambra-mark{width:25px;height:31px}.header-quote{font-size:.58rem;padding-inline:7px}.demo-content{padding-inline:17px}.demo-tabs button{font-size:.63rem;padding:8px 10px}.demo-envelope{left:14px;right:14px}.demo-open-hint{font-size:.53rem}.interactive-hero{padding-inline:10px}.dashboard-demo-label{max-width:75px;text-align:center}}
.plan-personalized{color:#215968;font-size:.77rem;border-left:2px solid #89a88b;padding-left:12px;margin-top:12px;min-height:0!important}

/* Interactive design studio and explicit plan scope */
.style-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0 36px}.style-selector a{padding:16px;border:1px solid #cbd5d1;border-radius:14px;color:inherit;text-decoration:none;background:#fff}.style-selector a[aria-current]{background:#143c54;color:white;border-color:#143c54}.style-selector span{display:block;font-size:.8rem;margin-top:5px}.design-tools textarea{width:100%;min-height:90px;padding:12px;border:1px solid #bac8c3;border-radius:12px}.scope-picker{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:28px 0}.scope-picker select{padding:12px;max-width:100%;border:1px solid #bcc9c4;border-radius:12px}.scope-summary{display:flex;justify-content:space-between;gap:20px;padding:24px;background:#edf3ee;border-radius:20px;margin-bottom:24px}.scope-summary h2{margin:8px 0}.scope-summary>strong{white-space:nowrap;font-size:1.4rem}.scope-options{padding:20px 0;border-bottom:1px solid #ccd7d0}.scope-options summary{cursor:pointer;font-weight:700}.scope-table{overflow:auto;margin-top:20px}.scope-table table{border-collapse:collapse;font-size:.85rem;min-width:850px;width:100%}.scope-table th,.scope-table td{text-align:left;padding:12px;border-bottom:1px solid #d6dfda}.scope-table caption{text-align:left;padding-bottom:14px}.design-tools h2{font-size:clamp(2rem,4vw,3rem)}@media(max-width:600px){.style-selector{grid-template-columns:repeat(2,1fr)}.style-selector a{padding:12px}.scope-summary{flex-direction:column}.scope-picker{align-items:stretch;flex-direction:column}}

.occasion-identity{padding:38px 26px;background:linear-gradient(135deg,#143c54,#345e51);color:#fff;border-radius:18px}.occasion-identity strong{display:block;font-size:2.2rem;margin:24px 0}.occasion-identity span{font-size:.7rem;letter-spacing:.15em}
.design-preview-frame{padding:18px;min-width:0}.design-tools{min-width:0}.occasion-identity{overflow-wrap:anywhere}.occasion-card>*{min-width:0}@media(max-width:700px){.occasion-card{display:block}.occasion-identity{padding:24px}.occasion-identity strong{font-size:1.9rem}.design-detail{flex-direction:column}.design-preview-frame{padding:8px}.design-tools{width:100%}}

.product-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-paths article{border:1px solid #c9d4ce;border-radius:22px;padding:30px;background:#fff}.product-paths h3{font-size:1.6rem}.product-paths p{line-height:1.7}@media(max-width:650px){.product-paths{grid-template-columns:1fr}}

.design-preview-frame>.interactive-invitation{margin-inline:auto}.design-detail{align-items:start}
/* Site themes: invitation palettes remain independent of the interface theme. */
:root{color-scheme:light}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);font-size:.75rem;flex-shrink:0}
.theme-toggle [data-theme-icon]{font-size:1.2rem;line-height:1}
.breadcrumbs{padding-top:20px;font-size:.73rem;color:var(--muted);overflow-wrap:anywhere}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.breadcrumbs span{margin-inline:4px}
:root[data-theme=dark]{color-scheme:dark;--ink:#e5eee9;--green:#235c50;--muted:#b3c4bb;--paper:#101c22;--line:#3a514d}
[data-theme=dark] .site-header{background:#101c22f5}
[data-theme=dark] :is(h1 em,h2 em,.eyebrow,.term-label,.plan-personalized,.occasion-mark,.step-number){color:#bad2ab}
[data-theme=dark] :is(.site-footer,.promise-bar,.design-preview-frame,.design-thumbnail,.purchase-card,.experience-stage,.scope-summary,.cotiza-incluido,.design-demo-link,.personalization-note,.bridge-modules span){background:#1c2e32;border-color:var(--line)}
[data-theme=dark] .promise-bar .wrap{color:var(--ink)}
[data-theme=dark] :is(.plan-card,.cotiza-opciones,.product-paths article,.occasion-links>a,.style-selector a,.floating-note,.skip-link,.mobile-menu nav,.mobile-dock,.dashboard-module){background:#18282e;color:var(--ink);border-color:var(--line)}
[data-theme=dark] :is(.style-selector a[aria-current],.filter-tabs button[aria-pressed=true]){background:#285b50;color:#fff;border-color:#8bb39f}
[data-theme=dark] :is(.pill,.cotiza-servicio.is-incluido,.cotiza-servicio:has(input:checked),.dashboard-preview,.dashboard-stats>div){background:#273c3f;border-color:#57726b;color:var(--ink)}
[data-theme=dark] :is(.design-tools input,.design-tools textarea,.experience-controls input,.experience-controls select,.experience-controls textarea,.personalization-request textarea,.cotiza-campo input,.cotiza-campo select,.scope-picker select,.palette-options button,.custom-colors input){background:#13232b;border-color:#57726b;color:var(--ink)}
[data-theme=dark] :is(input,textarea)::placeholder{color:#a1b2aa;opacity:1}
[data-theme=dark] .palette-options button[aria-pressed=true]{border-color:#bad2ab;box-shadow:0 0 0 1px #bad2ab}
[data-theme=dark] :is(.dashboard-module p,.dashboard-preview>span,.cotiza-servicio em){color:#b9ccc3}
[data-theme=dark] .event-dashboard{background:#17262f;border-color:var(--line)}
[data-theme=dark] .hero-art{background:#233631}
[data-theme=dark] .notice{background:#453d29;color:#f1e4c5}
[data-theme=dark] .scope-table :is(th,td){border-color:var(--line)}
[data-theme=dark] .mobile-dock a[aria-current]{color:#d1e5bb;background:#28433b}
[data-theme=dark] :is(button,a,input,select,summary,textarea):focus-visible{outline-color:#f2ce86}
[data-theme=dark] .footer-brand img{background:transparent;filter:grayscale(1) invert(1);mix-blend-mode:screen}
@media(max-width:1100px){.nav-inner{gap:12px}.theme-toggle{padding-inline:9px}.desktop-nav{gap:14px}}
@media(max-width:800px){.header-quote{display:none}.theme-toggle{margin-left:auto}.nav-inner{gap:12px}}
@media(max-width:360px){.theme-toggle{padding:8px}.theme-toggle [data-theme-label]{display:none}.nav-inner{gap:9px}}

[data-theme=dark] .mobile-dock a{color:#b3c4bb}[data-theme=dark] .mobile-dock a[aria-current]{color:#d1e5bb}

/* Configure first on mobile; preview remains on the left on desktop. */
.design-detail,.experience-layout{grid-template-areas:"preview controls"}
.design-preview-frame,.experience-stage{grid-area:preview}
.design-tools,.experience-controls{grid-area:controls}
.preview-guidance{font-size:.85rem;line-height:1.65;padding:14px 16px;background:#edf3ee;border-left:3px solid #678769;border-radius:8px}
[data-theme=dark] .preview-guidance{background:#1c2e32;border-color:#bad2ab}
.scope-table .scope-cell{text-align:center;vertical-align:middle}
.scope-mark{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:1.2rem;font-weight:750}
.scope-yes{color:#1d5c36;background:#e4f0e4}.scope-no{color:#875049;background:#f6e9e5}
.scope-addon{display:block;font-size:.68rem;color:var(--muted);margin-top:3px}
[data-theme=dark] .scope-yes{color:#b7ecc4;background:#244536}[data-theme=dark] .scope-no{color:#edc0b9;background:#483332}
.contact-email{overflow-wrap:anywhere}.quote-email{margin-top:12px}.quote-contact{display:block;margin-top:8px;font-size:.73rem;color:#e2ebe6;overflow-wrap:anywhere}
@media(max-width:720px){.design-detail{display:flex;flex-direction:column}.experience-layout{grid-template-areas:"controls" "preview"}.design-tools,.experience-controls{order:0}.design-preview-frame,.experience-stage{order:1}.preview-guidance{font-size:.82rem}}

/* Blend the original white logo canvas into the light footer surface. */
:root[data-theme=light] .footer-brand img{mix-blend-mode:multiply}

/* Botón flotante WhatsApp Tekambra */
.whatsapp-float{
  position:fixed;right:20px;bottom:24px;z-index:95;
  display:inline-flex;align-items:center;gap:10px;
  min-height:54px;padding:0 18px 0 14px;
  border-radius:999px;color:#fff;text-decoration:none;
  background:#25d366;
  box-shadow:0 14px 32px rgba(18,70,42,.28);
  font-weight:700;font-size:.92rem;letter-spacing:.01em;
  transition:transform .2s ease, box-shadow .2s ease;
}
.whatsapp-float:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(18,70,42,.34);color:#fff}
.whatsapp-float-icon{display:grid;place-items:center;width:34px;height:34px}
.whatsapp-float-icon svg{display:block}
.footer-whatsapp{font-weight:700}
@media(max-width:800px){
  .whatsapp-float{right:14px;bottom:78px;padding:0 14px 0 12px;min-height:48px;font-size:.85rem}
  .whatsapp-float-label{display:none}
  .whatsapp-float{width:54px;height:54px;padding:0;justify-content:center;border-radius:50%}
}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}
