/* Wedding Panel — Estilos del módulo 'landing'.
 * Reservado para extracción futura del CSS hoy embebido en templates/landing.php.
 */

/* v0.2.11 — CSS extraído desde includes/routes.php / home landing */
:root {
 --wp-bg: #fffdfb;
 --wp-bg-soft: #f8f2f0;
 --wp-ink: #22161a;
 --wp-text: #6f6266;
 --wp-muted: #9a8d91;
 --wp-line: rgba(34, 22, 26, 0.10);
 --wp-card: rgba(255,255,255,0.84);
 --wp-rose: #b47b8f;
 --wp-rose-dark: #8f5f74;
 --wp-gold: #b89a5e;
 --wp-shadow: 0 24px 70px rgba(34, 22, 26, 0.08);
 }

 * {
 box-sizing: border-box;
 }

 html,
 body {
 margin: 0;
 padding: 0;
 min-height: 100%;
 background: var(--wp-bg);
 color: var(--wp-ink);
 font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 overflow-x: hidden;
 scroll-behavior: smooth;
 }

 body.admin-bar .wph-header {
 top: 32px;
 }

 a {
 color: inherit;
 }

 .wph-page {
 position: relative;
 min-height: 100vh;
 background:
 radial-gradient(circle at 50% -10%, rgba(180, 123, 143, 0.12), transparent 34%),
 linear-gradient(180deg, #fffdfb 0%, #fff8f6 48%, #fffdfb 100%);
 isolation: isolate;
 }

 .wph-page::before {
 content: "";
 position: fixed;
 inset: 0;
 z-index: -1;
 pointer-events: none;
 opacity: 0.45;
 background-image:
 linear-gradient(rgba(34,22,26,0.035) 1px, transparent 1px),
 linear-gradient(90deg, rgba(34,22,26,0.035) 1px, transparent 1px);
 background-size: 64px 64px;
 mask-image: linear-gradient(to bottom, #000 0%, transparent 72%);
 }

 .wph-wrap {
 width: min(1160px, calc(100% - 44px));
 margin: 0 auto;
 }

 .wph-header {
 position: sticky;
 top: 0;
 z-index: 50;
 padding: 18px 0;
 backdrop-filter: blur(18px);
 background: rgba(255,253,251,0.72);
 border-bottom: 1px solid rgba(34,22,26,0.06);
 }

 .wph-header-inner {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 22px;
 }

 .wph-logo {
 display: inline-flex;
 align-items: center;
 gap: 11px;
 text-decoration: none;
 font-weight: 850;
 letter-spacing: -0.04em;
 font-size: 21px;
 }

 .wph-logo-mark {
 width: 38px;
 height: 38px;
 border-radius: 15px;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 background: #22161a;
 color: #fff;
 font-size: 17px;
 box-shadow: 0 14px 32px rgba(34,22,26,0.14);
 }

 .wph-nav {
 display: flex;
 align-items: center;
 gap: 24px;
 }

 .wph-nav a {
 text-decoration: none;
 color: var(--wp-text);
 font-size: 14px;
 font-weight: 700;
 }

 .wph-nav a:hover {
 color: var(--wp-ink);
 }

 .wph-client-btn {
 min-height: 42px;
 padding: 0 20px;
 border-radius: 999px;
 background: var(--wp-ink);
 color: #fff !important;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 box-shadow: 0 16px 36px rgba(34,22,26,0.16);
 }

 .wph-hero {
 min-height: calc(100vh - 74px);
 display: grid;
 grid-template-columns: minmax(0, 1fr) minmax(360px, 0.9fr);
 gap: 60px;
 align-items: center;
 padding: 64px 0 90px;
 }

 .wph-kicker {
 display: inline-flex;
 align-items: center;
 gap: 9px;
 margin-bottom: 22px;
 color: var(--wp-rose-dark);
 font-size: 12px;
 font-weight: 900;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 }

 .wph-kicker::before {
 content: "";
 width: 28px;
 height: 1px;
 background: var(--wp-rose);
 }

 .wph-hero h1 {
 margin: 0;
 max-width: 820px;
 font-family: "Cormorant Garamond", serif;
 font-size: clamp(56px, 8vw, 104px);
 font-weight: 600;
 line-height: 0.88;
 letter-spacing: -0.055em;
 color: var(--wp-ink);
 }

 .wph-hero h1 span {
 color: var(--wp-rose-dark);
 font-style: italic;
 font-weight: 500;
 }

 .wph-hero-text {
 margin: 28px 0 0;
 max-width: 650px;
 color: var(--wp-text);
 font-size: 19px;
 line-height: 1.72;
 }

 .wph-actions {
 display: flex;
 flex-wrap: wrap;
 gap: 14px;
 margin-top: 34px;
 }

 .wph-btn {
 min-height: 54px;
 padding: 0 26px;
 border-radius: 999px;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 text-decoration: none;
 font-size: 15px;
 font-weight: 850;
 transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
 }

 .wph-btn:hover {
 transform: translateY(-2px);
 opacity: 0.95;
 }

 .wph-btn-primary {
 background: var(--wp-ink);
 color: #fff;
 box-shadow: 0 18px 42px rgba(34,22,26,0.17);
 }

 .wph-btn-secondary {
 background: rgba(255,255,255,0.84);
 color: var(--wp-ink);
 border: 1px solid var(--wp-line);
 }

 .wph-trust {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 margin-top: 24px;
 }

 .wph-pill {
 display: inline-flex;
 align-items: center;
 gap: 7px;
 padding: 9px 12px;
 border-radius: 999px;
 background: rgba(255,255,255,0.72);
 border: 1px solid var(--wp-line);
 color: var(--wp-text);
 font-size: 13px;
 font-weight: 650;
 }

 .wph-visual {
 position: relative;
 min-height: 620px;
 }

 .wph-orbit {
 position: absolute;
 inset: 40px 10px auto auto;
 width: 450px;
 height: 450px;
 border-radius: 999px;
 border: 1px solid rgba(34,22,26,0.08);
 animation: wphSpin 22s linear infinite;
 }

 .wph-orbit::before,
 .wph-orbit::after {
 content: "";
 position: absolute;
 width: 12px;
 height: 12px;
 border-radius: 999px;
 background: var(--wp-rose);
 }

 .wph-orbit::before {
 top: 48px;
 right: 64px;
 }

 .wph-orbit::after {
 bottom: 64px;
 left: 38px;
 background: var(--wp-gold);
 }

 @keyframes wphSpin {
 from { transform: rotate(0deg); }
 to { transform: rotate(360deg); }
 }

 .wph-dashboard {
 position: relative;
 z-index: 2;
 width: min(100%, 510px);
 margin-left: auto;
 padding: 18px;
 border-radius: 38px;
 background: rgba(255,255,255,0.70);
 border: 1px solid rgba(255,255,255,0.85);
 box-shadow: 0 34px 100px rgba(34,22,26,0.12);
 backdrop-filter: blur(18px);
 animation: wphFadeUp 0.9s ease both;
 }

 .wph-screen {
 min-height: 560px;
 padding: 24px;
 border-radius: 30px;
 background:
 radial-gradient(circle at top right, rgba(180,123,143,0.28), transparent 34%),
 linear-gradient(160deg, #2a1b20 0%, #10090c 100%);
 color: #fff;
 overflow: hidden;
 }

 .wph-screen-top {
 display: flex;
 align-items: center;
 justify-content: space-between;
 margin-bottom: 28px;
 color: rgba(255,255,255,0.68);
 font-size: 13px;
 font-weight: 800;
 }

 .wph-screen-dots {
 display: flex;
 gap: 6px;
 }

 .wph-screen-dots span {
 width: 9px;
 height: 9px;
 border-radius: 999px;
 background: rgba(255,255,255,0.30);
 }

 .wph-glass {
 padding: 26px;
 border-radius: 28px;
 background: rgba(255,255,255,0.105);
 border: 1px solid rgba(255,255,255,0.18);
 backdrop-filter: blur(16px);
 }

 .wph-glass-label {
 margin-bottom: 14px;
 color: #d7a2b4;
 font-size: 11px;
 font-weight: 900;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 }

 .wph-glass-title {
 margin: 0;
 font-family: "Cormorant Garamond", serif;
 font-size: 54px;
 font-weight: 600;
 line-height: 0.95;
 letter-spacing: -0.04em;
 color: #fff;
 }

 .wph-glass p {
 margin: 14px 0 0;
 color: rgba(255,255,255,0.70);
 line-height: 1.5;
 }

 .wph-stats {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 14px;
 margin-top: 18px;
 }

 .wph-stat {
 padding: 18px;
 border-radius: 22px;
 background: rgba(255,255,255,0.10);
 border: 1px solid rgba(255,255,255,0.11);
 }

 .wph-stat strong {
 display: block;
 font-size: 32px;
 letter-spacing: -0.04em;
 color: #fff;
 }

 .wph-stat span {
 display: block;
 margin-top: 4px;
 color: rgba(255,255,255,0.54);
 font-size: 12px;
 font-weight: 850;
 letter-spacing: 0.08em;
 text-transform: uppercase;
 }

 .wph-mini-list {
 display: grid;
 gap: 10px;
 margin-top: 18px;
 }

 .wph-mini-row {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 12px;
 padding: 14px 16px;
 border-radius: 18px;
 background: rgba(255,255,255,0.08);
 color: rgba(255,255,255,0.72);
 font-size: 14px;
 }

 .wph-mini-row strong {
 color: #fff;
 }

 .wph-float {
 position: absolute;
 z-index: 3;
 padding: 16px 18px;
 border-radius: 22px;
 background: rgba(255,255,255,0.88);
 border: 1px solid rgba(34,22,26,0.08);
 box-shadow: 0 20px 60px rgba(34,22,26,0.12);
 backdrop-filter: blur(14px);
 animation: wphFloat 5.5s ease-in-out infinite;
 }

 .wph-float strong {
 display: block;
 color: var(--wp-ink);
 font-size: 15px;
 margin-bottom: 4px;
 }

 .wph-float span {
 display: block;
 color: var(--wp-text);
 font-size: 13px;
 line-height: 1.35;
 }

 .wph-float.one {
 top: 92px;
 left: 0;
 max-width: 225px;
 }

 .wph-float.two {
 right: -12px;
 bottom: 82px;
 max-width: 240px;
 animation-delay: -2.2s;
 }

 @keyframes wphFloat {
 0%, 100% { transform: translateY(0); }
 50% { transform: translateY(-12px); }
 }

 @keyframes wphFadeUp {
 from {
 opacity: 0;
 transform: translateY(24px);
 }
 to {
 opacity: 1;
 transform: translateY(0);
 }
 }

 .wph-section {
 padding: 92px 0;
 }

 .wph-section-head {
 max-width: 820px;
 margin: 0 auto 42px;
 text-align: center;
 }

 .wph-eyebrow {
 margin-bottom: 13px;
 color: var(--wp-rose-dark);
 font-size: 12px;
 font-weight: 900;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 }

 .wph-section-head h2 {
 margin: 0;
 font-family: "Cormorant Garamond", serif;
 font-size: clamp(42px, 5.6vw, 72px);
 font-weight: 600;
 line-height: 0.94;
 letter-spacing: -0.055em;
 color: var(--wp-ink);
 }

 .wph-section-head p {
 margin: 18px auto 0;
 max-width: 760px;
 color: var(--wp-text);
 font-size: 18px;
 line-height: 1.7;
 }

 .wph-features {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 18px;
 }

 .wph-feature {
 position: relative;
 overflow: hidden;
 padding: 28px;
 border-radius: 30px;
 background: var(--wp-card);
 border: 1px solid var(--wp-line);
 box-shadow: 0 18px 60px rgba(34,22,26,0.055);
 transition: transform 0.22s ease, box-shadow 0.22s ease;
 }

 .wph-feature:hover {
 transform: translateY(-5px);
 box-shadow: 0 24px 74px rgba(34,22,26,0.09);
 }

 .wph-feature-icon {
 width: 48px;
 height: 48px;
 margin-bottom: 18px;
 border-radius: 18px;
 background: #f4e7ec;
 color: var(--wp-rose-dark);
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 22px;
 }

 .wph-feature h3 {
 margin: 0 0 10px;
 font-size: 22px;
 letter-spacing: -0.035em;
 color: var(--wp-ink);
 }

 .wph-feature p {
 margin: 0;
 color: var(--wp-text);
 line-height: 1.62;
 font-size: 15px;
 }

 .wph-split {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 22px;
 }

 .wph-panel {
 padding: 38px;
 border-radius: 34px;
 background: rgba(255,255,255,0.82);
 border: 1px solid var(--wp-line);
 box-shadow: var(--wp-shadow);
 }

 .wph-panel h2 {
 margin: 0 0 14px;
 font-family: "Cormorant Garamond", serif;
 font-size: 52px;
 font-weight: 600;
 line-height: 0.95;
 letter-spacing: -0.055em;
 }

 .wph-panel p {
 margin: 0;
 color: var(--wp-text);
 line-height: 1.7;
 font-size: 16px;
 }

 .wph-list {
 display: grid;
 gap: 13px;
 margin-top: 24px;
 }

 .wph-list-item {
 display: flex;
 gap: 11px;
 align-items: flex-start;
 color: var(--wp-text);
 line-height: 1.5;
 }

 .wph-check {
 width: 23px;
 height: 23px;
 border-radius: 999px;
 background: #f4e7ec;
 color: var(--wp-rose-dark);
 display: inline-flex;
 align-items: center;
 justify-content: center;
 flex: 0 0 auto;
 font-size: 13px;
 font-weight: 950;
 }

 .wph-install {
 display: none;
 margin-top: 24px;
 }

 .wph-install.is-visible {
 display: flex;
 }

 .wph-install-btn {
 min-height: 48px;
 padding: 0 22px;
 border: 0;
 border-radius: 999px;
 background: var(--wp-ink);
 color: #fff;
 font: inherit;
 font-size: 14px;
 font-weight: 900;
 letter-spacing: -0.015em;
 cursor: pointer;
 box-shadow: 0 16px 34px rgba(49,27,35,0.16);
 transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
 }

 .wph-install-btn:hover {
 transform: translateY(-2px);
 box-shadow: 0 20px 42px rgba(49,27,35,0.22);
 }

 .wph-install-btn:disabled {
 opacity: .6;
 cursor: default;
 transform: none;
 box-shadow: none;
 }

 .wph-process {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 16px;
 }

 .wph-step {
 padding: 25px;
 border-radius: 28px;
 background: rgba(255,255,255,0.82);
 border: 1px solid var(--wp-line);
 box-shadow: 0 16px 46px rgba(34,22,26,0.05);
 }

 .wph-step-number {
 width: 34px;
 height: 34px;
 margin-bottom: 16px;
 border-radius: 999px;
 background: var(--wp-ink);
 color: #fff;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 font-weight: 900;
 }

 .wph-step h3 {
 margin: 0 0 8px;
 font-size: 20px;
 letter-spacing: -0.035em;
 }

 .wph-step p {
 margin: 0;
 color: var(--wp-text);
 line-height: 1.56;
 font-size: 15px;
 }

 .wph-faq {
 max-width: 900px;
 margin: 0 auto;
 display: grid;
 gap: 14px;
 }

 .wph-faq-item {
 padding: 24px 26px;
 border-radius: 26px;
 background: rgba(255,255,255,0.84);
 border: 1px solid var(--wp-line);
 box-shadow: 0 16px 44px rgba(34,22,26,0.045);
 }

 .wph-faq-item h3 {
 margin: 0 0 8px;
 font-size: 21px;
 letter-spacing: -0.035em;
 }

 .wph-faq-item p {
 margin: 0;
 color: var(--wp-text);
 line-height: 1.65;
 }

 .wph-contact {
     display: grid;
     grid-template-columns: 0.86fr 1.14fr;
     gap: 22px;
     align-items: stretch;
 }

 .wph-contact-info,
 .wph-contact-card {
     border-radius: 34px;
     background: rgba(255,255,255,0.86);
     border: 1px solid var(--wp-line);
     box-shadow: var(--wp-shadow);
 }

 .wph-contact-info {
     padding: 38px;
     display: flex;
     flex-direction: column;
     justify-content: space-between;
     gap: 28px;
 }

 .wph-contact-info h2 {
     margin: 0;
     font-family: "Cormorant Garamond", serif;
     font-size: clamp(42px, 5.4vw, 70px);
     font-weight: 600;
     line-height: 0.95;
     letter-spacing: -0.055em;
 }

 .wph-contact-info p {
     margin: 18px 0 0;
     color: var(--wp-text);
     font-size: 17px;
     line-height: 1.7;
 }

 .wph-contact-points {
     display: grid;
     gap: 12px;
     margin: 0;
     padding: 0;
     list-style: none;
 }

 .wph-contact-points li {
     display: flex;
     gap: 10px;
     align-items: flex-start;
     color: var(--wp-text);
     line-height: 1.45;
 }

 .wph-contact-points span {
     width: 23px;
     height: 23px;
     border-radius: 999px;
     flex: 0 0 auto;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     background: #f4e7ec;
     color: var(--wp-rose-dark);
     font-size: 13px;
     font-weight: 950;
 }

 .wph-contact-card {
     padding: 30px;
 }

 .wph-request-form {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 16px;
 }

 .wph-field {
     display: grid;
     gap: 7px;
 }

 .wph-field.full {
     grid-column: 1 / -1;
 }

 .wph-field label {
     color: var(--wp-ink);
     font-size: 13px;
     font-weight: 850;
 }

 .wph-field input,
 .wph-field select,
 .wph-field textarea {
     width: 100%;
     min-height: 50px;
     border: 1px solid rgba(34,22,26,0.12);
     border-radius: 16px;
     padding: 0 15px;
     color: var(--wp-ink);
     background: rgba(255,255,255,0.92);
     font: inherit;
     font-size: 15px;
     outline: none;
     transition: border-color 0.2s ease, box-shadow 0.2s ease;
 }

 .wph-field textarea {
     min-height: 116px;
     padding-top: 14px;
     resize: vertical;
 }

 .wph-field input:focus,
 .wph-field select:focus,
 .wph-field textarea:focus {
     border-color: var(--wp-rose);
     box-shadow: 0 0 0 4px rgba(180,123,143,0.13);
 }

 .wph-hidden-field {
     position: absolute;
     left: -9999px;
     width: 1px;
     height: 1px;
     overflow: hidden;
 }

 .wph-submit {
     grid-column: 1 / -1;
     min-height: 54px;
     border: 0;
     border-radius: 999px;
     background: var(--wp-ink);
     color: #fff;
     font-size: 15px;
     font-weight: 900;
     cursor: pointer;
     box-shadow: 0 18px 42px rgba(34,22,26,0.17);
     transition: transform 0.2s ease, opacity 0.2s ease;
 }

 .wph-submit:hover {
     transform: translateY(-2px);
     opacity: 0.95;
 }

 .wph-submit:disabled {
     opacity: 0.58;
     cursor: not-allowed;
     transform: none;
 }

 .wph-form-message {
     grid-column: 1 / -1;
     display: none;
     padding: 13px 15px;
     border-radius: 16px;
     font-size: 14px;
     font-weight: 750;
     line-height: 1.45;
 }

 .wph-form-message.is-success {
     display: block;
     background: rgba(2,122,72,0.10);
     color: #027a48;
 }

 .wph-form-message.is-error {
     display: block;
     background: rgba(180,35,24,0.10);
     color: #b42318;
 }

 .wph-cta {
 padding: 58px;
 border-radius: 38px;
 background:
 radial-gradient(circle at top left, rgba(255,255,255,0.18), transparent 34%),
 linear-gradient(160deg, #2a1b20 0%, #10090c 100%);
 color: #fff;
 text-align: center;
 box-shadow: 0 30px 90px rgba(34,22,26,0.18);
 }

 .wph-cta h2 {
 margin: 0;
 font-family: "Cormorant Garamond", serif;
 font-size: clamp(44px, 5.7vw, 76px);
 font-weight: 600;
 line-height: 0.95;
 letter-spacing: -0.055em;
 color: #fff;
 }

 .wph-cta p {
 margin: 18px auto 0;
 max-width: 720px;
 color: rgba(255,255,255,0.72);
 font-size: 18px;
 line-height: 1.62;
 }

 .wph-cta .wph-actions {
 justify-content: center;
 }

 .wph-footer {
 padding: 38px 0;
 color: var(--wp-muted);
 text-align: center;
 font-size: 14px;
 }

 .wph-reveal {
 animation: wphFadeUp 0.8s ease both;
 }



 /* 0.1.61 — Home comercial más equilibrada, móvil y con scroll más vivo */
 .wph-page {
     --wp-cream: #fffaf6;
 }

 .wph-page::after {
     content: "";
     position: fixed;
     inset: auto -18vw -28vw auto;
     width: 58vw;
     height: 58vw;
     z-index: -1;
     pointer-events: none;
     border-radius: 999px;
     background: radial-gradient(circle, rgba(180,123,143,0.16), transparent 62%);
     filter: blur(6px);
     animation: wphBreath 12s ease-in-out infinite alternate;
 }

 @keyframes wphBreath {
     from { transform: translate3d(0,0,0) scale(0.96); opacity: .78; }
     to { transform: translate3d(-4vw,-3vw,0) scale(1.08); opacity: 1; }
 }

 .wph-section {
     scroll-margin-top: 94px;
 }

 .wph-section:nth-of-type(2n+1) {
     background: linear-gradient(180deg, rgba(255,255,255,0), rgba(248,242,240,0.36), rgba(255,255,255,0));
 }

 .wph-scroll-cue {
     width: 42px;
     height: 46px;
     display: inline-flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     gap: 2px;
     margin-top: 30px;
     color: var(--wp-rose-dark);
     text-decoration: none;
     opacity: .72;
     transition: opacity .2s ease, transform .2s ease;
 }

 .wph-scroll-cue:hover {
     opacity: 1;
     transform: translateY(2px);
 }

 .wph-scroll-cue span {
     width: 15px;
     height: 15px;
     border-right: 2px solid currentColor;
     border-bottom: 2px solid currentColor;
     transform: rotate(45deg);
     animation: wphArrowFlow 1.8s ease-in-out infinite;
 }

 .wph-scroll-cue span:nth-child(2) { animation-delay: .16s; opacity: .62; }
 .wph-scroll-cue span:nth-child(3) { animation-delay: .32s; opacity: .35; }

 @keyframes wphArrowFlow {
     0%, 100% { transform: rotate(45deg) translate(0,0); }
     50% { transform: rotate(45deg) translate(4px,4px); }
 }

 .wph-feature-icon::before {
     font-size: 22px;
     line-height: 1;
 }
 .wph-feature:nth-child(1) .wph-feature-icon::before { content: "✉"; }
 .wph-feature:nth-child(2) .wph-feature-icon::before { content: "◯"; }
 .wph-feature:nth-child(3) .wph-feature-icon::before { content: "✓"; }
 .wph-feature:nth-child(4) .wph-feature-icon::before { content: "€"; }
 .wph-feature:nth-child(5) .wph-feature-icon::before { content: "⌚"; }
 .wph-feature:nth-child(6) .wph-feature-icon::before { content: "♡"; }

 .wph-feature,
 .wph-panel,
 .wph-step,
 .wph-faq-item,
 .wph-contact-info,
 .wph-contact-card,
 .wph-cta {
     transform: translateY(22px);
     opacity: 0;
     transition: opacity .75s ease, transform .85s cubic-bezier(.16,1,.3,1), box-shadow .22s ease;
 }

 .wph-inview {
     opacity: 1 !important;
     transform: translateY(0) !important;
 }

 .wph-feature:nth-child(2), .wph-step:nth-child(2) { transition-delay: .06s; }
 .wph-feature:nth-child(3), .wph-step:nth-child(3) { transition-delay: .12s; }
 .wph-feature:nth-child(4), .wph-step:nth-child(4) { transition-delay: .18s; }
 .wph-feature:nth-child(5) { transition-delay: .24s; }
 .wph-feature:nth-child(6) { transition-delay: .30s; }

 .wph-panel::before,
 .wph-contact-card::before,
 .wph-feature::before {
     content: "";
     position: absolute;
     inset: 0 0 auto;
     height: 3px;
     background: linear-gradient(90deg, transparent, rgba(180,123,143,.55), rgba(184,154,94,.42), transparent);
     opacity: .72;
 }
 .wph-panel,
 .wph-contact-card { position: relative; overflow: hidden; }

 .wph-btn-primary,
 .wph-client-btn,
 .wph-submit {
     position: relative;
     overflow: hidden;
 }
 .wph-btn-primary::after,
 .wph-client-btn::after,
 .wph-submit::after {
     content: "";
     position: absolute;
     inset: 0;
     background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.20) 48%, transparent 62%);
     transform: translateX(-120%);
     transition: transform .7s ease;
 }
 .wph-btn-primary:hover::after,
 .wph-client-btn:hover::after,
 .wph-submit:hover::after {
     transform: translateX(120%);
 }

 .wph-screen {
     background:
     radial-gradient(circle at top right, rgba(180,123,143,0.30), transparent 34%),
     radial-gradient(circle at 15% 90%, rgba(184,154,94,0.16), transparent 42%),
     linear-gradient(160deg, #2a1b20 0%, #10090c 100%);
 }



 /* 0.1.62 — Home: scroll centrado, paneles con icono y más fluidez visual */
 .wph-hero {
     position: relative;
 }

 .wph-hero .wph-scroll-cue {
     position: absolute;
     left: 50%;
     bottom: 28px;
     margin: 0;
     transform: translateX(-50%);
 }

 .wph-hero .wph-scroll-cue:hover {
     transform: translateX(-50%) translateY(3px);
 }

 .wph-scroll-cue {
     width: 54px;
     height: 64px;
     filter: drop-shadow(0 14px 22px rgba(143,95,116,.12));
 }

 .wph-scroll-cue::before {
     content: "";
     position: absolute;
     inset: 4px 11px;
     border-radius: 999px;
     background: radial-gradient(circle, rgba(255,255,255,.72), rgba(255,255,255,0));
     opacity: .42;
     transform: scale(.84);
     animation: wphCueGlow 2.4s ease-in-out infinite;
 }

 @keyframes wphCueGlow {
     0%, 100% { opacity: .28; transform: scale(.76); }
     50% { opacity: .58; transform: scale(1); }
 }

 .wph-section::before {
     content: "";
     display: block;
     width: min(340px, 62vw);
     height: 1px;
     margin: -14px auto 58px;
     background: linear-gradient(90deg, transparent, rgba(180,123,143,.34), rgba(184,154,94,.26), transparent);
 }

 .wph-section:first-of-type::before {
     display: none;
 }

 .wph-panel {
     isolation: isolate;
 }

 .wph-panel-icon {
     width: 58px;
     height: 58px;
     margin-bottom: 22px;
     border-radius: 22px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     color: var(--wp-rose-dark);
     background:
       radial-gradient(circle at 30% 20%, rgba(255,255,255,.92), rgba(255,255,255,.42)),
       linear-gradient(135deg, rgba(180,123,143,.16), rgba(184,154,94,.10));
     border: 1px solid rgba(180,123,143,.20);
     box-shadow: 0 18px 38px rgba(34,22,26,.075);
 }

 .wph-panel-icon svg {
     width: 28px;
     height: 28px;
     stroke: currentColor;
 }

 .wph-panel::after {
     content: "";
     position: absolute;
     right: -70px;
     bottom: -90px;
     width: 230px;
     height: 230px;
     border-radius: 999px;
     background: radial-gradient(circle, rgba(180,123,143,.13), transparent 64%);
     pointer-events: none;
     z-index: -1;
 }

 .wph-panel-mock {
     margin-top: 28px;
     padding: 14px;
     width: min(270px, 100%);
     border-radius: 30px;
     background: rgba(34,22,26,.92);
     box-shadow: 0 24px 55px rgba(34,22,26,.16);
     border: 1px solid rgba(255,255,255,.26);
 }

 .wph-panel-mock-screen {
     min-height: 146px;
     border-radius: 23px;
     background:
       radial-gradient(circle at 86% 8%, rgba(180,123,143,.26), transparent 35%),
       linear-gradient(180deg, #fffaf7, #f7ece8);
     padding: 16px;
     overflow: hidden;
 }

 .wph-panel-mock-bar {
     width: 68px;
     height: 6px;
     margin: 0 auto 16px;
     border-radius: 99px;
     background: rgba(34,22,26,.18);
 }

 .wph-panel-mock-row {
     height: 11px;
     border-radius: 99px;
     background: rgba(143,95,116,.18);
     margin-bottom: 9px;
 }

 .wph-panel-mock-row:nth-child(3) { width: 82%; }
 .wph-panel-mock-row:nth-child(4) { width: 64%; background: rgba(184,154,94,.20); }
 .wph-panel-mock-row:nth-child(5) { width: 92%; }

 .wph-panel-mock-pills {
     display: flex;
     gap: 8px;
     margin-top: 16px;
 }

 .wph-panel-mock-pills span {
     width: 38px;
     height: 28px;
     border-radius: 999px;
     background: rgba(255,255,255,.92);
     border: 1px solid rgba(180,123,143,.16);
     box-shadow: 0 8px 20px rgba(34,22,26,.05);
 }

 .wph-step-number {
     box-shadow: 0 14px 32px rgba(34,22,26,.12);
 }

 .wph-step::before,
 .wph-faq-item::before {
     content: "";
     display: block;
     width: 34px;
     height: 1px;
     margin-bottom: 16px;
     background: linear-gradient(90deg, var(--wp-rose), transparent);
     opacity: .55;
 }

 @media (max-width: 640px) {
     .wph-page::before {
         background-size: 48px 48px;
         opacity: .32;
     }

     .wph-page::after {
         width: 90vw;
         height: 90vw;
         inset: auto -42vw -34vw auto;
         opacity: .72;
         animation-duration: 18s;
     }

     .wph-hero h1 {
         font-size: clamp(44px, 13.5vw, 58px);
         max-width: 12ch;
     }

     .wph-hero-text strong {
         color: var(--wp-ink);
     }

     .wph-hero .wph-scroll-cue {
         position: static;
         left: auto;
         bottom: auto;
         margin: 28px auto 0;
         transform: none;
     }

     .wph-hero .wph-scroll-cue:hover {
         transform: translateY(2px);
     }

     .wph-scroll-cue {
         margin-top: 24px;
         margin-left: auto;
         margin-right: auto;
     }

     .wph-section {
         padding: 64px 0;
         scroll-margin-top: 76px;
     }

     .wph-section-head h2,
     .wph-panel h2,
     .wph-contact-info h2,
     .wph-cta h2 {
         font-size: clamp(38px, 11vw, 48px);
         line-height: .96;
     }

     .wph-feature,
     .wph-panel,
     .wph-step,
     .wph-faq-item {
         box-shadow: 0 14px 42px rgba(34,22,26,0.055);
     }

     .wph-feature h3,
     .wph-step h3,
     .wph-faq-item h3 {
         font-size: 20px;
     }

     .wph-contact-info p,
     .wph-section-head p,
     .wph-panel p {
         font-size: 16px;
     }
 }

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

 @media (max-width: 980px) {
 .wph-nav {
 display: none;
 }

 .wph-hero {
 grid-template-columns: 1fr;
 min-height: auto;
 gap: 44px;
 padding: 44px 0 72px;
 }

 .wph-visual {
 min-height: auto;
 }

 .wph-orbit,
 .wph-float {
 display: none;
 }

 .wph-dashboard {
 margin: 0 auto;
 }

 .wph-features,
 .wph-process {
 grid-template-columns: 1fr 1fr;
 }

 .wph-split,
 .wph-contact {
 grid-template-columns: 1fr;
 }
 }

 @media (max-width: 640px) {
 .wph-wrap {
 width: min(100% - 30px, 1160px);
 }

 .wph-header {
 padding: 14px 0;
 }

 .wph-logo {
 font-size: 19px;
 }

 .wph-logo-mark {
 width: 36px;
 height: 36px;
 border-radius: 14px;
 }

 .wph-hero {
 padding: 38px 0 58px;
 }

 .wph-kicker {
 font-size: 10px;
 letter-spacing: 0.14em;
 margin-bottom: 16px;
 }

 .wph-hero h1 {
 font-size: 48px;
 line-height: 0.94;
 letter-spacing: -0.048em;
 }

 .wph-hero-text {
 margin-top: 22px;
 font-size: 16.5px;
 line-height: 1.68;
 }

 .wph-actions {
 flex-direction: column;
 margin-top: 28px;
 }

 .wph-btn {
 width: 100%;
 min-height: 52px;
 }

 .wph-trust {
 gap: 8px;
 }

 .wph-pill {
 width: 100%;
 justify-content: center;
 }

 .wph-dashboard {
 padding: 11px;
 border-radius: 30px;
 }

 .wph-screen {
 min-height: auto;
 padding: 18px;
 border-radius: 24px;
 }

 .wph-screen-top {
 margin-bottom: 18px;
 }

 .wph-glass {
 padding: 20px;
 border-radius: 23px;
 }

 .wph-glass-title {
 font-size: 42px;
 }

 .wph-glass p {
 font-size: 14px;
 }

 .wph-stats {
 grid-template-columns: 1fr 1fr;
 gap: 10px;
 }

 .wph-stat {
 padding: 14px;
 border-radius: 18px;
 }

 .wph-stat strong {
 font-size: 26px;
 }

 .wph-stat span {
 font-size: 10px;
 }

 .wph-mini-row {
 padding: 12px 13px;
 font-size: 13px;
 }

 .wph-section {
 padding: 58px 0;
 }

 .wph-section-head {
 margin-bottom: 28px;
 text-align: left;
 }

 .wph-section-head h2 {
 font-size: 42px;
 line-height: 0.98;
 }

 .wph-section-head p {
 font-size: 16px;
 }

 .wph-features,
 .wph-process {
 grid-template-columns: 1fr;
 }

 .wph-feature,
 .wph-panel,
 .wph-step,
 .wph-faq-item {
 border-radius: 24px;
 }

 .wph-panel,
 .wph-contact-info,
 .wph-contact-card {
 padding: 26px;
 }

 .wph-request-form {
 grid-template-columns: 1fr;
 }


 .wph-panel h2 {
 font-size: 40px;
 }

 .wph-cta {
 padding: 32px 24px;
 border-radius: 28px;
 text-align: left;
 }

 .wph-cta h2 {
 font-size: 42px;
 }

 .wph-cta p {
 font-size: 16px;
 }

 .wph-cta .wph-actions {
 justify-content: stretch;
 }
 }
 

 /* 0.1.63 — Home: flechas centradas, FAQ plegada y proceso más editorial */
 .wph-hero .wph-scroll-cue,
 .wph-scroll-cue {
     position: relative !important;
     left: auto !important;
     right: auto !important;
     bottom: auto !important;
     transform: none !important;
     display: flex !important;
     margin: 34px auto 0 !important;
     width: 46px;
     height: 58px;
     align-items: center;
     justify-content: center;
     filter: none;
 }
 .wph-hero .wph-scroll-cue:hover,
 .wph-scroll-cue:hover { transform: translateY(3px) !important; }
 .wph-scroll-cue::before { display: none !important; }
 .wph-scroll-cue span {
     border-color: rgba(143,95,116,.64);
     width: 17px;
     height: 17px;
 }
 .wph-scroll-cue span:nth-child(1) { opacity: .86; }
 .wph-scroll-cue span:nth-child(2) { opacity: .52; }
 .wph-scroll-cue span:nth-child(3) { opacity: .26; }

 .wph-panel-mock { display: none !important; }

 .wph-process {
     position: relative;
     gap: 18px;
 }
 .wph-step {
     position: relative;
     overflow: hidden;
 }
 .wph-step::after {
     content: "";
     position: absolute;
     width: 110px;
     height: 110px;
     right: -38px;
     top: -42px;
     border-radius: 999px;
     background: radial-gradient(circle, rgba(180,123,143,.11), transparent 68%);
     pointer-events: none;
 }
 .wph-step-number {
     background: linear-gradient(135deg, var(--wp-ink), #4a2b35);
     box-shadow: 0 14px 30px rgba(34,22,26,.14);
 }
 .wph-step h3 {
     font-family: var(--wp-serif);
     font-weight: 650;
     letter-spacing: -.045em;
 }
 .wph-step p {
     color: rgba(68,53,58,.74);
 }

 .wph-faq {
     max-width: 920px;
 }
 .wph-faq-item {
     padding: 0;
     overflow: hidden;
 }
 .wph-faq-item::before { display: none !important; }
 .wph-faq-item summary {
     list-style: none;
     cursor: pointer;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 18px;
     padding: 22px 26px;
     font-weight: 850;
     color: var(--wp-ink);
     letter-spacing: -.03em;
 }
 .wph-faq-item summary::-webkit-details-marker { display: none; }
 .wph-faq-item summary span {
     font-size: 20px;
     line-height: 1.2;
 }
 .wph-faq-item summary::after {
     content: "+";
     width: 34px;
     height: 34px;
     border-radius: 999px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     flex: 0 0 auto;
     background: rgba(180,123,143,.10);
     color: var(--wp-rose-dark);
     font-size: 22px;
     line-height: 1;
     transition: transform .22s ease, background .22s ease;
 }
 .wph-faq-item[open] summary::after {
     content: "−";
     background: rgba(184,154,94,.13);
     transform: rotate(180deg);
 }
 .wph-faq-item p {
     padding: 0 26px 24px;
     margin: 0;
     color: rgba(68,53,58,.72);
 }

 @media (max-width: 640px) {
     .wph-scroll-cue,
     .wph-hero .wph-scroll-cue {
         margin: 30px auto 0 !important;
     }
     .wph-process {
         grid-template-columns: 1fr;
     }
     .wph-step {
         padding: 24px;
     }
     .wph-faq-item summary {
         padding: 20px 20px;
     }
     .wph-faq-item summary span {
         font-size: 18px;
     }
     .wph-faq-item p {
         padding: 0 20px 22px;
     }
 }
