/*! tailwindcss v4.2.0 | MIT License | https://tailwindcss.com */

@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--container-2xl:42rem;--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-bold:700;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:#f2b90b;--color-text-light:#666;--font-heading:"Montserrat", sans-serif}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{font-size:62.5%;font-family:var(--ff-body);color:var(--c-text);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-size:var(--fs-base);line-height:var(--lh-normal);background:var(--c-white);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--ff-heading);line-height:var(--lh-tight);margin:0}h1{font-size:var(--fs-h1);font-weight:var(--fw-semibold)}h2{font-size:var(--fs-h2);font-weight:var(--fw-medium)}h3{font-size:var(--fs-h3);font-weight:var(--fw-medium)}h4{font-size:var(--fs-h4);font-weight:var(--fw-medium)}h5{font-size:var(--fs-h5);font-weight:var(--fw-medium)}h6{font-size:var(--fs-h6);font-weight:var(--fw-medium)}p{margin:0 0 var(--sp-4);line-height:var(--lh-relaxed)}p:last-child{margin-bottom:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul,ol{margin:0;padding:0}button{font-family:inherit}*,:before,:after{box-sizing:border-box}}@layer components{.heading{font-family:var(--ff-heading);font-weight:var(--fw-bold);color:var(--c-dark)}.section-title{font-family:var(--ff-heading);font-weight:var(--fw-bold);font-size:var(--fs-4xl);color:var(--c-dark);text-align:center;margin-bottom:var(--sp-2);text-transform:capitalize}.section-title .dots{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-3);display:flex}.section-title .dots span{background:var(--c-primary);border-radius:var(--radius-full);width:.95rem;height:.95rem;display:block}.section-desc{text-align:center;color:var(--c-text-light);max-width:var(--container-max);margin:var(--sp-5) auto var(--sp-12);line-height:var(--lh-relaxed);font-size:var(--fs-base)}.section-desc p{margin:0}.text-primary{color:var(--c-primary)}.btn{font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-sm);padding:var(--sp-3) var(--sp-6);border-radius:var(--radius);transition:all var(--transition);cursor:pointer;line-height:var(--lh-normal);border:none;display:inline-block}.btn-primary{background:var(--c-primary);color:var(--c-white)}.btn-primary:hover{background:var(--c-primary-dark);transform:translateY(-2px)}.section{padding:var(--sp-20) 0}.section--alt{background:var(--c-bg-alt)}.section--white{background:var(--c-white)}.topbar{background:var(--c-white);border-bottom:1px solid var(--c-border-light)}.topbar__inner{justify-content:space-between;align-items:center;display:flex;padding-top:var(--sp-3)!important;padding-bottom:var(--sp-3)!important}.topbar__logo{flex-direction:column;display:flex}.topbar__logo img{width:auto;height:5rem}.topbar__logo-text{font-family:var(--ff-heading);font-size:3.5rem;font-weight:var(--fw-extrabold);color:var(--c-dark);letter-spacing:-.2rem;line-height:1}.topbar__logo-text .v{color:var(--c-primary);font-style:italic}.topbar__logo-text .cusco{color:var(--c-primary);font-weight:var(--fw-bold)}.topbar__tagline{color:var(--c-text-muted);font-size:1rem;font-weight:var(--fw-medium);letter-spacing:.04em;margin-top:.2rem}.topbar__right{flex-direction:column;align-items:flex-end;gap:.6rem;display:flex}.topbar__links{align-items:center;gap:var(--sp-6);display:flex}.topbar__links a{font-size:var(--fs-xs);color:#555;font-weight:var(--fw-medium);transition:color var(--transition)}.topbar__links a:hover{color:var(--c-primary)}.topbar__flags{margin-left:var(--sp-2);align-items:center;gap:.6rem;display:flex}.topbar__flags img{object-fit:contain;border-radius:2px;width:2rem;height:2rem}.topbar__contact{align-items:center;gap:var(--sp-5);display:flex}.topbar__contact a{font-size:var(--fs-xs);color:#444;font-weight:var(--fw-semibold);transition:color var(--transition);align-items:center;gap:.6rem;display:flex}.topbar__contact a:hover{color:var(--c-primary)}.topbar__contact i{color:var(--c-primary);font-size:var(--fs-base)}.header{background:var(--c-white);z-index:var(--z-sticky);box-shadow:var(--shadow-sm);position:sticky;top:0}.header__inner{align-items:center;gap:var(--sp-4);height:4.8rem;display:flex}.header__logo img{width:auto;height:3.2rem}.header__logo-text{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-extrabold);color:var(--c-dark);text-transform:lowercase}.header__logo-text .v{color:var(--c-primary);font-style:italic}.nav{flex:1;justify-content:center;align-items:center;gap:0;display:flex}.nav__link{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);border-radius:var(--radius);white-space:nowrap;transition:all var(--transition);color:var(--c-text);padding:.6rem 1.2rem}.nav__link:hover,.nav__link--active{background:var(--c-primary);color:var(--c-dark)}.nav__link--parent{align-items:center;gap:.4rem;display:inline-flex}.nav__dropdown{position:relative}.nav__dropdown-menu{z-index:var(--z-dropdown);padding-top:.4rem;display:none;position:absolute;top:100%;left:0}.nav__dropdown:hover .nav__dropdown-menu{display:block}.nav__dropdown-inner{background:var(--c-white);border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid var(--c-border-light);padding:var(--sp-2) 0;min-width:22rem}.nav__dropdown-item{padding:var(--sp-2) var(--sp-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--c-text);transition:all var(--transition);display:block}.nav__dropdown-item:hover{color:var(--c-primary);background:#f9f9f9}.nav__dropdown-item--active{color:var(--c-primary);background:#f2b90b1a}.menu-toggle{cursor:pointer;padding:var(--sp-1);background:0 0;border:none;margin-left:auto}.menu-toggle .material-icons-outlined{color:var(--c-dark);font-size:3rem}.drawer-overlay{z-index:var(--z-overlay);opacity:0;pointer-events:none;background:#00000080;transition:opacity .3s;position:fixed;inset:0}.drawer-overlay--open{opacity:1;pointer-events:auto}.drawer{background:var(--c-white);width:30rem;max-width:85vw;height:100%;z-index:var(--z-drawer);box-shadow:var(--shadow-lg);flex-direction:column;transition:transform .3s ease-in-out;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.drawer--open{transform:translate(0)}.drawer__header{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--c-border-light);justify-content:space-between;align-items:center;display:flex}.drawer__logo img{width:auto;height:3.6rem}.drawer__close{cursor:pointer;padding:var(--sp-1);border-radius:var(--radius);transition:background var(--transition);background:0 0;border:none}.drawer__close:hover{background:#f5f5f5}.drawer__close .material-icons-outlined{color:var(--c-text-light);font-size:2.4rem}.drawer__nav{padding:var(--sp-4);flex:1;overflow-y:auto}.drawer__link{font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-semibold);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius);transition:background var(--transition);color:var(--c-text);border-bottom:1px solid var(--c-border-light);justify-content:space-between;align-items:center;display:flex}.drawer__link:last-child{border-bottom:none}.drawer__link:hover{background:#f9f9f9}.drawer__link--active{background:var(--c-primary);color:var(--c-dark);border-bottom-color:#0000}.drawer__chevron{color:var(--c-text-muted);transition:transform .3s;font-size:var(--fs-base)!important}.drawer__link--expanded .drawer__chevron{color:var(--c-primary);transform:rotate(180deg)}.drawer__submenu{padding-left:var(--sp-3);display:none}.drawer__submenu--open{display:block}.drawer__sublink{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius);color:var(--c-text-light);transition:all var(--transition);display:flex}.drawer__sublink:before{content:"";border-radius:var(--radius-full);background:var(--c-border);flex-shrink:0;width:6px;height:6px}.drawer__sublink:hover{color:var(--c-text);background:#f9f9f9}.drawer__sublink:hover:before{background:var(--c-primary)}.drawer__sublink--active{color:var(--c-primary);font-weight:var(--fw-semibold);background:#f2b90b1a}.drawer__sublink--active:before{background:var(--c-primary)}.drawer__footer{border-top:1px solid var(--c-border-light);padding:var(--sp-5);gap:var(--sp-3);flex-direction:column;display:flex}.drawer__social{justify-content:center;align-items:center;gap:var(--sp-3);display:flex}.drawer__social-icon{border-radius:var(--radius-full);background:var(--c-bg-alt);width:4rem;height:4rem;color:var(--c-text-light);transition:all var(--transition);justify-content:center;align-items:center;display:flex}.drawer__social-icon:hover{background:var(--c-primary);color:var(--c-dark)}.hero{min-height:82vh;color:var(--c-white);align-items:center;display:flex;position:relative;overflow:hidden}.hero__bg{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero__overlay{z-index:1;background:linear-gradient(135deg,#0000008c,#0000004d);position:absolute;inset:0}.hero__content{z-index:2;width:100%;padding:var(--sp-16) 0;position:relative}.hero__inner{max-width:var(--container-max)}.hero__title{font-family:var(--ff-heading);font-size:var(--fs-h1);font-weight:var(--fw-semibold);margin-bottom:var(--sp-4);text-shadow:0 2px 8px #0000004d;font-synthesis:none;min-height:2.75em;line-height:1.1}.hero__desc{font-synthesis:none;font-size:var(--fs-md);opacity:.9;margin-bottom:var(--sp-8);max-width:var(--container-max);line-height:var(--lh-relaxed)}.hero__desc p{margin:0}.card{background:var(--c-white);border-radius:var(--radius-xl);transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);border:1px solid #0f172a0f;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 30px #0f172a0f}.card:hover{border-color:#f2b90b66;transform:translateY(-6px);box-shadow:0 16px 38px #0f172a1f}.card__img-wrap{aspect-ratio:4/3;position:relative;overflow:hidden}.card__img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.card:hover .card__img{transform:scale(1.05)}.card__img-placeholder{background:#f5f5f5;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.card__img-placeholder .material-icons-outlined{color:#ccc;font-size:4.8rem}.card__badge{top:var(--sp-3);left:var(--sp-3);background:var(--c-primary);color:var(--c-dark);font-family:var(--ff-heading);font-size:1rem;font-weight:var(--fw-bold);border-radius:var(--radius-sm);text-transform:uppercase;padding:.4rem 1rem;position:absolute}.card__body{padding:var(--sp-5);gap:var(--sp-2);flex-direction:column;flex:1;display:flex}.card__title{padding-top:var(--sp-3);font-family:var(--ff-heading);font-weight:var(--fw-semibold);color:var(--c-dark);font-size:var(--fs-lg);line-height:var(--lh-tight);margin-bottom:var(--sp-1);transition:color var(--transition);border-top:1px solid #0f172a14}.card:hover .card__title{color:var(--c-primary)}.card__meta{gap:var(--sp-2);font-size:var(--fs-xs);color:#475569;margin-bottom:var(--sp-2);flex-wrap:wrap;display:flex}.card__meta-item{background:#f8fafccc;border:1px solid #64748b40;border-radius:999px;align-items:center;gap:.5rem;padding:.3rem .8rem;display:flex}.card__meta-item .material-icons-outlined{font-size:var(--fs-sm);color:#c08700}.card__desc{font-size:var(--fs-sm);color:#475569;font-weight:var(--fw-regular);-webkit-line-clamp:3;margin-bottom:var(--sp-2);-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.card__footer{padding-top:var(--sp-3);justify-content:space-between;align-items:center;gap:var(--sp-2);border-top:1px dashed #64748b59;margin-top:auto;display:flex}.card__footer>*{flex:0 0 50%}.card__price{font-size:var(--fs-sm);font-weight:var(--fw-regular);color:#64748b;transition:color var(--transition);align-items:center;gap:.4rem;display:flex}.card__price-amount{font-family:var(--ff-heading);font-weight:var(--fw-bold);font-size:var(--fs-md);color:#b77900}.card__price--empty{font-size:var(--fs-sm);color:var(--c-text-light);font-weight:var(--fw-regular)}.card__action{padding:var(--sp-2) var(--sp-3);font-family:var(--ff-heading);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:#111827;transition:transform var(--transition-fast), box-shadow var(--transition-fast);background:linear-gradient(135deg,#f2b90b 0%,#f7ce49 100%);border-radius:999px;justify-content:center;align-items:center;gap:.3rem;display:flex}.card:hover .card__action{transform:translateY(-1px);box-shadow:0 8px 18px #f2b90b59}.card__action .material-icons-outlined{font-size:var(--fs-sm)}.card:focus-visible{outline-offset:2px;outline:3px solid #f2b90b73}.value-card{background:var(--c-bg-alt);border-radius:var(--radius-lg);text-align:center;transition:all var(--transition);padding:3.2rem}.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.value-card__icon{border-radius:var(--radius-full);background:var(--c-primary);width:5.6rem;height:5.6rem;margin:0 auto var(--sp-5);justify-content:center;align-items:center;display:flex}.value-card__icon .material-icons-outlined{color:var(--c-white);font-size:3.2rem}.value-card__title{font-family:var(--ff-heading);font-weight:var(--fw-bold);color:var(--c-dark);font-size:var(--fs-base);margin-bottom:var(--sp-2)}.value-card__desc{font-size:var(--fs-xs);font-weight:var(--fw-light);color:var(--c-text-light);line-height:1.6}.value-card__desc p{margin:0}.separator{padding:var(--sp-20) 0;background:var(--c-dark);height:60vh;color:var(--c-white);text-align:right;background-position:50%;background-size:cover;background-attachment:fixed;justify-content:end;align-items:center;display:flex;position:relative}.separator__overlay{position:absolute;inset:0}.separator__content{z-index:10;position:relative}.separator__title{font-family:var(--ff-heading);font-size:var(--fs-2xl);font-weight:var(--fw-extrabold);margin-bottom:var(--sp-4)}.separator__inner{width:60%;margin-left:auto}.separator__desc{font-size:var(--fs-base);padding-bottom:var(--sp-4);opacity:.9;line-height:var(--lh-relaxed)}.separator__desc p{margin:0}.sep2-wrap{padding:var(--sp-16) 0}.sep2{border-radius:var(--radius-xl);height:40vh;min-height:200px;box-shadow:var(--shadow-xl);grid-template-columns:3fr 2fr;margin-top:-60px;margin-bottom:-300px;display:grid;overflow:hidden}.sep2__media{background-color:var(--c-border);background-position:50%;background-size:cover;justify-content:center;align-items:center;display:flex;position:relative}.sep2__media-gradient{background:linear-gradient(135deg, var(--c-primary), #e8a900);position:absolute;inset:0}.sep2__panel{padding:var(--sp-6) var(--sp-8);color:var(--c-white);background-color:#7a5c00;background-image:radial-gradient(circle,#ffffff2e 1px,#0000 1px);background-size:18px 18px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.sep2__text{justify-content:center;align-items:center;gap:var(--sp-3);z-index:1;flex-direction:column;display:flex;position:relative}.sep2__sub{font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:.06em;opacity:.85;text-align:center}.sep2__title{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-bold);text-align:center;line-height:var(--lh-tight);color:var(--c-white);margin:0}.sep2__btn{align-items:center;gap:var(--sp-2);background:var(--c-primary);color:var(--c-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;padding:var(--sp-2) var(--sp-5);border-radius:var(--radius);transition:background var(--transition);width:-moz-fit-content;width:fit-content;text-decoration:none;display:inline-flex}.sep2__btn:hover{background:var(--c-primary-light)}.sep2__deco{bottom:8px;right:var(--sp-4);gap:var(--sp-1);opacity:.18;z-index:0;display:flex;position:absolute}.sep2__deco .material-icons-outlined{color:var(--c-white);font-size:6rem}@media (max-width:768px){.sep2-wrap{padding:var(--sp-8) 0}.sep2{grid-template-rows:180px auto;grid-template-columns:1fr;height:auto;margin-top:-30px;margin-bottom:-150px}.sep2__media{min-height:180px}.sep2__panel{padding:var(--sp-5) var(--sp-4)}.sep2__title{font-size:var(--fs-lg)}.sep2__deco .material-icons-outlined{font-size:3.5rem}}@media (max-width:480px){.sep2-wrap{padding:var(--sp-6) 0}.sep2{border-radius:var(--radius);grid-template-rows:150px auto;margin-top:0;margin-bottom:-80px}.sep2__media{min-height:150px}.sep2__panel{padding:var(--sp-4) var(--sp-3)}.sep2__sub{font-size:var(--fs-2xs,.7rem)}.sep2__title{font-size:var(--fs-md)}.sep2__btn{font-size:var(--fs-2xs,.7rem);padding:var(--sp-2) var(--sp-4)}.sep2__deco .material-icons-outlined{font-size:2.5rem}}.faq-item{border:1px solid var(--c-border);border-radius:var(--radius);transition:border-color var(--transition);overflow:hidden}.faq-item[open]{border-color:var(--c-primary)}.faq-item summary{padding:var(--sp-3) var(--sp-5);font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-base);cursor:pointer;color:var(--c-text);justify-content:space-between;align-items:center;gap:var(--sp-3);transition:background var(--transition);list-style:none;display:flex}.faq-item summary:hover{background:#fafafa}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary .icon{font-size:var(--fs-lg);color:var(--c-primary);flex-shrink:0;transition:transform .3s}.faq-item[open] summary .icon{transform:rotate(180deg)}.faq-item__title{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--c-dark);line-height:var(--lh-normal);margin:0}.faq-item__body{padding:0 var(--sp-4) var(--sp-3);font-size:var(--fs-sm);color:var(--c-text-light);line-height:var(--lh-relaxed)}.blog-card{background:var(--c-white);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:all var(--transition);display:block;overflow:hidden}.blog-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.blog-card__img{object-fit:cover;width:100%;height:192px}.blog-card__img-wrap{position:relative}.blog-card__placeholder{background:#f5f5f5;justify-content:center;align-items:center;width:100%;height:192px;display:flex}.blog-card__placeholder .material-icons-outlined{color:#ccc;font-size:4rem}.blog-card__cat{top:var(--sp-3);left:var(--sp-3);background:var(--c-primary);color:var(--c-dark);font-family:var(--ff-heading);font-size:1rem;font-weight:var(--fw-bold);border-radius:var(--radius-sm);text-transform:uppercase;padding:.2rem 1rem;position:absolute}.blog-card__body{padding:var(--sp-5)}.blog-card__title{font-family:var(--ff-heading);font-weight:var(--fw-bold);color:var(--c-dark);font-size:var(--fs-base);line-height:var(--lh-tight);margin-bottom:var(--sp-3)}.blog-card__meta{font-size:var(--fs-xs);color:var(--c-text-light);flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.blog-card__meta .material-icons-outlined{font-size:var(--fs-sm);color:var(--c-primary)}.sp-grid{gap:var(--sp-8);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:1023px){.sp-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:639px){.sp-grid{grid-template-columns:1fr}}.sp-card{text-align:center;align-items:center;gap:var(--sp-4);flex-direction:column;display:flex}.sp-card__img-wrap{flex-shrink:0;width:220px;height:220px;position:relative}.sp-card__img{object-fit:cover;border-radius:var(--radius-full);z-index:1;width:100%;height:100%;display:block;position:relative}.sp-card__img-placeholder{border-radius:var(--radius-full);background:var(--c-bg-alt);z-index:1;width:100%;height:100%;color:var(--c-text-muted);justify-content:center;align-items:center;font-size:4rem;display:flex;position:relative}.sp-card__deco{border-radius:var(--radius-full);background:var(--c-primary-light);opacity:.7;z-index:1;width:60px;height:60px;position:absolute;bottom:6px;right:6px}.sp-card__title{font-family:var(--ff-heading);font-weight:var(--fw-bold);font-size:var(--fs-md);color:var(--c-dark);margin:0}.sp-card__desc{font-size:var(--fs-sm);color:var(--c-text-light);line-height:var(--lh-relaxed);max-width:28ch;margin:0 auto}.sp-card__desc p{margin:0}.recognition{padding:var(--sp-10) 0;background:var(--c-white);border-top:1px solid var(--c-border)}.recognition__grid{gap:var(--sp-8);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.recognition__item{filter:grayscale();opacity:.5;max-width:120px;transition:all .3s}.recognition__item:hover{filter:grayscale(0);opacity:1}.recognition__item img{object-fit:contain;width:100%;height:auto}.placeholder-box{max-width:var(--container-max);border:2px dashed var(--c-border);border-radius:var(--radius);padding:var(--sp-10);text-align:center;color:var(--c-text-light);align-items:center;gap:var(--sp-3);font-size:var(--fs-base);flex-direction:column;margin:0 auto;display:flex}.placeholder-box .material-icons-outlined{color:#f2b90b80;font-size:4.8rem}.site-footer{color:#999;background:#1a1a1a;padding-top:5.6rem}.footer__title{font-family:var(--ff-heading);font-weight:var(--fw-bold);color:var(--c-white);font-size:var(--fs-base);margin-bottom:var(--sp-5)}.footer__logo img{filter:brightness(0)invert();width:auto;height:4rem}.footer__logo-text{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-extrabold);color:var(--c-white);text-transform:lowercase}.footer__logo-text .v{color:var(--c-primary);font-style:italic}.footer__desc{font-size:var(--fs-sm);color:#777;margin-bottom:var(--sp-5);line-height:1.6}.footer__newsletter-title{color:var(--c-white);font-size:var(--fs-sm);font-weight:var(--fw-bold);margin-bottom:.4rem;display:block}.footer__newsletter-sub{font-size:var(--fs-xs);color:#777;margin-bottom:var(--sp-2)}.footer__form{max-width:28rem;display:flex}.footer__input{padding:var(--sp-2) var(--sp-3);color:var(--c-white);font-size:var(--fs-sm);border-radius:var(--radius) 0 0 var(--radius);transition:border-color var(--transition);background:#2a2a2a;border:1px solid #444;outline:none;flex:1}.footer__input:focus{border-color:var(--c-primary)}.footer__submit{padding:var(--sp-2) var(--sp-4);background:var(--c-primary);color:var(--c-dark);font-family:var(--ff-heading);font-weight:var(--fw-bold);font-size:var(--fs-sm);border-radius:0 var(--radius) var(--radius) 0;cursor:pointer;transition:background var(--transition);border:none}.footer__submit:hover{background:var(--c-primary-dark)}.footer__social{gap:var(--sp-2);display:flex}.footer__social-icon{border-radius:var(--radius-full);color:#999;width:3.6rem;height:3.6rem;transition:all var(--transition);background:#333;justify-content:center;align-items:center;display:flex}.footer__social-icon:hover{background:var(--c-primary);color:var(--c-dark)}.footer__links{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.footer__links a{font-size:var(--fs-sm);color:#777;transition:color var(--transition)}.footer__links a:hover{color:var(--c-primary)}.footer__contact-list{gap:var(--sp-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.footer__contact-item{font-size:var(--fs-sm);align-items:flex-start;gap:1rem;display:flex}.footer__contact-item .material-icons-outlined{color:var(--c-primary);font-size:var(--fs-base);flex-shrink:0;margin-top:.2rem}.footer__contact-item a{transition:color var(--transition)}.footer__contact-item a:hover{color:var(--c-primary)}.footer__bottom{margin-top:var(--sp-10);padding:var(--sp-5) 0;border-top:1px solid #333}.footer__bottom-inner{justify-content:space-between;align-items:center;gap:var(--sp-2);font-size:var(--fs-xs);color:#666;display:flex}.footer__bottom a{transition:color var(--transition)}.footer__bottom a:hover{color:var(--c-primary)}@media (max-width:768px){.separator{background-attachment:scroll!important}.section-title{font-size:var(--fs-lg)}.hero__title{font-size:3.2rem}.separator__title{font-size:var(--fs-xl)}.separator__inner{width:100%}.footer__bottom-inner{flex-direction:column}}@media (min-width:768px){.section-title{font-size:var(--fs-h2)}.hero__title{font-size:var(--fs-4xl)}.separator__title{font-size:4rem}}@media (min-width:1024px){.hero__title{font-size:var(--fs-5xl)}}.tc1{border-radius:var(--radius-xl);aspect-ratio:3/4;background-color:var(--c-border);color:inherit;box-shadow:var(--shadow-xl);transition:transform var(--transition), box-shadow var(--transition);background-position:50%;background-size:cover;flex-direction:column;justify-content:flex-end;text-decoration:none;display:flex;position:relative;overflow:hidden}.tc1:hover{transform:translateY(-5px);box-shadow:0 18px 48px #0000004d}.tc1__overlay{z-index:var(--z-overlay);padding:var(--sp-16) var(--sp-4) var(--sp-4);gap:var(--sp-2);background:linear-gradient(#0000 0%,#00000080 20%,#000c 100%);flex-direction:column;display:flex;position:relative}.tc1__sub{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:#ffffffd1;letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--sp-1);display:block}.tc1__title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--c-white);line-height:var(--lh-tight);margin:0}.tc1__features{gap:var(--sp-1) var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.tc1__feat{align-items:center;gap:var(--sp-1);font-size:var(--fs-xs);font-weight:var(--fw-light);color:#ffffffd9;white-space:nowrap;text-overflow:ellipsis;display:flex;overflow:hidden}.tc1__feat .dot{width:var(--sp-1);height:var(--sp-1);border-radius:var(--radius-full);background:var(--c-primary);flex-shrink:0;display:inline-block}.packages-wrap .section-title{padding-top:200px!important}@media (max-width:768px){.packages-wrap .section-title{padding-top:10px!important}}.bslider{position:relative}.bslider__viewport{border-radius:var(--radius-lg);overflow:hidden}.bslider__track{will-change:transform;display:flex}.bslider__item{flex-shrink:0}.bslider__dots{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-6);display:flex}.bslider__dot{border-radius:var(--radius-full);background:var(--c-border);cursor:pointer;width:10px;height:10px;transition:background var(--transition), transform var(--transition);border:none;padding:0}.bslider__dot.active{background:var(--c-primary);transform:scale(1.3)}.bslider .post-card,.bslider .post-card:hover{box-shadow:none}.tc2{background:var(--c-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:inherit;transition:transform var(--transition), box-shadow var(--transition);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.tc2:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.tc2__img-wrap{aspect-ratio:4/3;position:relative;overflow:hidden}.tc2__img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow);display:block}.tc2:hover .tc2__img{transform:scale(1.04)}.tc2__img-placeholder{background:var(--c-bg-alt);width:100%;height:100%;color:var(--c-text-muted);justify-content:center;align-items:center;font-size:3.6rem;display:flex}.tc2__wish{top:var(--sp-3);right:var(--sp-3);border-radius:var(--radius-full);cursor:pointer;width:36px;height:36px;color:var(--c-text-muted);transition:color var(--transition), background var(--transition);z-index:1;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.tc2__wish:hover{color:var(--c-danger);background:var(--c-white)}.tc2__wish .material-icons-outlined{font-size:1.8rem}.tc2__body{padding:var(--sp-6);gap:var(--sp-3);flex-direction:column;flex:1;display:flex}.tc2__title{font-family:var(--ff-heading);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--c-dark);line-height:var(--lh-tight);margin:0}.tc2__overview{font-size:var(--fs-sm);font-weight:var(--fw-light);-webkit-line-clamp:4;margin-bottom:var(--sp-4);-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.tc2__meta{gap:var(--sp-1) var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.tc2__meta-item{align-items:center;gap:var(--sp-1);font-size:var(--fs-xs);color:var(--c-text-light);display:flex}.tc2__meta-item .material-icons-outlined{font-size:1.4rem}.tc2__footer{padding-top:var(--sp-3);border-top:1px solid var(--c-border-light);justify-content:space-between;align-items:flex-end;margin-top:auto;display:flex}.tc2__price-wrap{flex-direction:column;gap:2px;display:flex}.tc2__price-original{font-size:var(--fs-xs);color:var(--c-text-muted);text-decoration:line-through}.tc2__price{align-items:baseline;gap:var(--sp-1);display:flex}.tc2__price-amount{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-extrabold);color:var(--c-primary)}.tc2__price-label{font-size:var(--fs-xs);color:var(--c-text-light)}.tc2__rating{align-items:center;gap:3px;display:flex}.tc2__star{color:var(--c-primary);font-size:1.6rem}.tc2__rating-num{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--c-dark)}.tc2__rating-count{font-size:var(--fs-xs);color:var(--c-text-muted)}.posts-listing-wrap{width:100%;max-width:1280px;padding:0 var(--sp-5);margin:0 auto}.posts-listing-grid{gap:var(--sp-5);grid-template-columns:1fr;align-items:stretch;display:grid}@media (min-width:640px){.posts-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.posts-listing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.post-card{background:var(--c-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:inherit;transition:transform var(--transition), box-shadow var(--transition);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.post-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.post-card__img-wrap{aspect-ratio:16/10;width:100%;overflow:hidden}.post-card__img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow);display:block}.post-card:hover .post-card__img{transform:scale(1.04)}.post-card__img-placeholder{background:var(--c-bg-alt);width:100%;height:100%;color:var(--c-text-muted);justify-content:center;align-items:center;font-size:3.6rem;display:flex}.post-card__body{padding:var(--sp-4) var(--sp-5) var(--sp-5);gap:var(--sp-2);flex-direction:column;flex:1;display:flex}.post-card__cat{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--c-primary);text-transform:capitalize;letter-spacing:.02em}.post-card__title{font-family:var(--ff-heading);font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--c-dark);line-height:var(--lh-tight);margin:0}.post-card__excerpt{font-size:var(--fs-sm);color:var(--c-text-light);line-height:var(--lh-normal);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.post-card__excerpt p{margin:0}.post-card__date{font-size:var(--fs-xs);color:var(--c-text-muted);margin-top:auto}.wpp-widget{bottom:var(--sp-6);right:var(--sp-6);z-index:var(--z-modal);transition:opacity .3s,visibility .3s;position:fixed}.drawer--open~.wpp-widget,.drawer-overlay--open~.wpp-widget{opacity:0;visibility:hidden;pointer-events:none}.wpp-widget__bubble{border-radius:var(--radius-full);background:var(--c-success);cursor:pointer;width:60px;height:60px;transition:transform var(--transition), box-shadow var(--transition);justify-content:center;align-items:center;animation:2s infinite wpp-pulse;display:flex;box-shadow:0 4px 16px #25d36666}.wpp-widget__bubble:hover{animation:none;transform:scale(1.1);box-shadow:0 6px 24px #25d36680}@keyframes wpp-pulse{0%{box-shadow:0 0 #25d36680}70%{box-shadow:0 0 0 18px #25d36600}to{box-shadow:0 0 #25d36600}}.wpp-widget__bubble .fa-whatsapp{color:var(--c-white);font-size:32px}.wpp-widget__tooltip{background:var(--c-white);border-radius:var(--radius-lg);width:300px;box-shadow:var(--shadow-xl);padding:var(--sp-5);opacity:0;visibility:hidden;transition:all .3s;position:absolute;bottom:72px;right:0;transform:translateY(10px)}.wpp-widget__tooltip--open{opacity:1;visibility:visible;transform:translateY(0)}.wpp-widget__tooltip-close{top:var(--sp-2);right:var(--sp-2);cursor:pointer;padding:var(--sp-1);border-radius:var(--radius-full);transition:background var(--transition);background:0 0;border:none;position:absolute}.wpp-widget__tooltip-close:hover{background:var(--c-bg-alt)}.wpp-widget__tooltip-close .material-icons-outlined{color:var(--c-text-muted);font-size:1.8rem}.wpp-widget__header{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);padding-bottom:var(--sp-4);border-bottom:1px solid var(--c-border-light);display:flex}.wpp-widget__header .fa-whatsapp{color:var(--c-success);font-size:28px}.wpp-widget__cta{font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--c-dark);line-height:var(--lh-tight);display:block}.wpp-widget__status{font-size:var(--fs-xs);color:var(--c-success);font-weight:var(--fw-medium);display:block}.wpp-widget__msg{font-size:var(--fs-sm);color:var(--c-text-light);line-height:var(--lh-relaxed);margin:0 0 var(--sp-4);background:var(--c-bg-alt);padding:var(--sp-3);border-radius:var(--radius)}.wpp-widget__send{justify-content:center;align-items:center;gap:var(--sp-2);background:var(--c-success);width:100%;color:var(--c-white);font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-bold);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius);transition:background var(--transition);display:flex}.wpp-widget__send:hover{background:#1fb855}.wpp-widget__send .material-icons-outlined{font-size:var(--fs-base)}@media (max-width:480px){.wpp-widget{bottom:var(--sp-4);right:var(--sp-4)}.wpp-widget__bubble{width:52px;height:52px}.wpp-widget__bubble .fa-whatsapp{font-size:28px}.wpp-widget__tooltip{width:calc(100vw - 48px);right:-8px}}.tp-breadcrumbs{padding:var(--sp-3) 0;font-size:var(--fs-xs)}.tp-breadcrumbs a{color:var(--c-text-light);transition:color var(--transition);text-decoration:none}.tp-breadcrumbs a:hover{color:var(--c-primary)}.tp-breadcrumbs__sep{margin:0 var(--sp-2);color:var(--c-border)}.tp-breadcrumbs__current{color:var(--c-text);font-weight:var(--fw-medium)}.tp-header{padding:var(--sp-6) 0 var(--sp-4)}.tp-header__title{font-family:var(--ff-heading);font-size:var(--fs-2xl);font-weight:var(--fw-semibold);color:var(--c-dark);line-height:var(--lh-tight);padding-top:var(--sp-4);margin:0}.tp-layout{gap:var(--sp-8);padding-bottom:var(--sp-12);grid-template-columns:1fr 360px;display:grid}.tp-gallery{gap:var(--sp-2);margin-bottom:var(--sp-8);grid-template-columns:160px 1fr;display:grid}.tp-gallery__main{border-radius:var(--radius-lg);background:var(--c-border);aspect-ratio:4/3;position:relative;overflow:hidden}.tp-gallery__big{object-fit:cover;width:100%;height:100%;transition:opacity .3s;display:block}.tp-gallery__nav{color:#fff;border-radius:var(--radius-full);cursor:pointer;width:36px;height:36px;transition:background var(--transition);z-index:2;background:#00000080;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.tp-gallery__nav:hover{background:#000000bf}.tp-gallery__nav--prev{left:var(--sp-2)}.tp-gallery__nav--next{right:var(--sp-2)}.tp-gallery__thumbs{gap:var(--sp-2);flex-direction:column;height:100%;display:flex;overflow:hidden}.tp-gallery__thumb{border-radius:var(--radius);cursor:pointer;opacity:.55;width:100%;min-height:0;transition:all var(--transition);background:0 0;border:2px solid #0000;flex:1;padding:0;position:relative;overflow:hidden}.tp-gallery__thumb:hover{opacity:.85}.tp-gallery__thumb--active{border-color:var(--c-primary);opacity:1}.tp-gallery__thumb img{object-fit:cover;width:100%;height:100%;display:block}.tp-gallery__thumb--more img{filter:brightness(.4)}.tp-gallery__more{color:#fff;font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;justify-content:center;align-items:center;line-height:1.2;display:flex;position:absolute;inset:0}.tp-tabs{margin-bottom:var(--sp-8)}.tp-tabs__nav{border-bottom:1px solid var(--c-border);scrollbar-width:none;gap:0;display:flex;overflow-x:auto}.tp-tabs__nav::-webkit-scrollbar{display:none}.tp-tabs__btn{padding:var(--sp-3) var(--sp-5);font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-medium);color:var(--c-text-light);cursor:pointer;white-space:nowrap;transition:color var(--transition);background:0 0;border:none;text-decoration:none;position:relative}.tp-tabs__btn:after{content:"";height:2px;transition:background var(--transition);background:0 0;position:absolute;bottom:-1px;left:0;right:0}.tp-tabs__btn:hover{color:var(--c-dark)}.tp-tabs__btn--active{color:var(--c-dark);font-weight:var(--fw-bold)}.tp-tabs__btn--active:after{background:var(--c-dark)}.tp-tabs__panel{visibility:hidden;opacity:0;height:0;overflow:hidden}.tp-tabs__panel--active{visibility:visible;opacity:1;height:auto;padding-top:var(--sp-6);overflow:visible}.tp-accordion__header{display:none}.tp-accordion__body{max-height:none;overflow:visible}.tp-faq{gap:var(--sp-3);flex-direction:column;display:flex}.tp-content{color:var(--c-text);line-height:var(--lh-relaxed);font-size:var(--fs-base)}.tp-content p{margin-bottom:var(--sp-3)}.tp-content strong{color:var(--c-dark);font-weight:var(--fw-semibold)}.tp-content h2,.tp-content h3,.tp-content h4{font-family:var(--ff-heading);color:var(--c-primary-dark,#b8860b);margin:var(--sp-6) 0 var(--sp-3);line-height:var(--lh-tight)}.tp-content h2:first-child,.tp-content h3:first-child,.tp-content h4:first-child{margin-top:0}.tp-content h2{font-size:var(--fs-xl);font-weight:var(--fw-bold)}.tp-content h3{font-size:var(--fs-lg);font-weight:var(--fw-bold)}.tp-content h4{font-size:var(--fs-md);font-weight:var(--fw-semibold)}.tp-content ul{padding-left:var(--sp-6);margin-bottom:var(--sp-4);list-style:outside}.tp-content ol{padding-left:var(--sp-6);margin-bottom:var(--sp-4);list-style:decimal}.tp-content li{margin-bottom:var(--sp-2);display:list-item}.tp-content blockquote{border-left:4px solid var(--c-primary);padding:var(--sp-4) var(--sp-5);margin:var(--sp-6) 0;background:var(--c-bg-alt);border-radius:0 var(--radius) var(--radius) 0;color:var(--c-text-light);font-style:italic}.tp-content blockquote p:last-child{margin-bottom:0}.tp-content img,.tp-content figure img{border-radius:var(--radius);max-width:100%;height:auto;margin:var(--sp-5) 0}.tp-content figure.wp-caption,.tp-content figure.aligncenter{margin:var(--sp-6) auto;text-align:center;max-width:100%}.tp-content figcaption.wp-caption-text{margin-top:var(--sp-3);font-size:var(--fs-sm);color:var(--c-text-light);line-height:var(--lh-normal);font-style:normal}.tp-content table{border-collapse:collapse;width:100%;margin:var(--sp-4) 0;font-size:var(--fs-sm)}.tp-content thead th{background:var(--c-dark);color:var(--c-white);font-family:var(--ff-heading);font-weight:var(--fw-bold);padding:var(--sp-3) var(--sp-4);text-align:left}.tp-content tbody td{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--c-border)}.tp-content tbody tr:nth-child(2n){background:var(--c-bg-alt)}.tp-content tbody tr:hover{background:#fdf8e8}@media (max-width:640px){.tp-content table{font-size:var(--fs-xs)}.tp-content thead th,.tp-content tbody td{padding:var(--sp-2) var(--sp-3)}}.tp-content ul.tp-list--yes,.tp-content ol.tp-list--yes{padding-left:0!important;list-style:none!important}.tp-content .tp-list--yes li{padding-left:var(--sp-6);display:block;position:relative}.tp-content .tp-list--yes li:before{content:"✓";font-weight:var(--fw-bold);color:#22c55e;font-size:1.1em;position:absolute;top:0;left:0}.tp-content ul.tp-list--no,.tp-content ol.tp-list--no{padding-left:0!important;list-style:none!important}.tp-content .tp-list--no li{padding-left:var(--sp-6);display:block;position:relative}.tp-content .tp-list--no li:before{content:"✗";font-weight:var(--fw-bold);color:#ef4444;font-size:1.1em;position:absolute;top:0;left:0}.tp-list--yes-item,.tp-list--no-item{padding-left:var(--sp-6);position:relative}.tp-list--yes-item:before{content:"✓";font-weight:var(--fw-bold);color:#22c55e;font-size:1.1em;position:absolute;top:0;left:0}.tp-list--no-item:before{content:"✗";font-weight:var(--fw-bold);color:#ef4444;font-size:1.1em;position:absolute;top:0;left:0}.tp-content--days{counter-reset:day-counter}.tp-content--days h3,.tp-content--days h4{counter-increment:day-counter;min-height:56px;margin-top:var(--sp-6);padding-left:72px;padding-top:var(--sp-2);border-top:1px solid var(--c-border);align-items:center;display:flex;position:relative}.tp-content--days h3:first-child,.tp-content--days h4:first-child{border-top:none;margin-top:0}.tp-content--days h3:before,.tp-content--days h4:before{content:"DAY";left:0;top:var(--sp-3);font-family:var(--ff-heading);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--c-primary);letter-spacing:.1em;text-transform:uppercase;position:absolute}.tp-content--days h3:after,.tp-content--days h4:after{content:counter(day-counter, decimal-leading-zero);left:0;top:calc(var(--sp-3) + 14px);font-family:var(--ff-heading);font-size:1.6rem;font-weight:var(--fw-extrabold);color:var(--c-primary);line-height:1;position:absolute}.tp-content--days>p{padding-left:72px}.tp-section{margin-bottom:var(--sp-8)}.tp-section__title{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--c-dark);align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-4);display:flex}.tp-section__title .material-icons-outlined{color:var(--c-primary);font-size:22px}.tp-sidebar__sticky{gap:var(--sp-5);flex-direction:column;display:flex;position:sticky;top:80px}.tp-price-card{border-radius:var(--radius-lg);padding:var(--sp-6);background:#fdf8e8;border:1px solid #e8d68a}.tp-price-card__price{gap:var(--sp-2);text-align:center;margin-bottom:var(--sp-5);padding-bottom:var(--sp-4);border-bottom:1px solid #e8d68a;flex-direction:column;display:flex}.tp-price-card__label{font-size:var(--fs-xs);color:var(--c-text-light);display:block}.tp-price-card__amount{font-family:var(--ff-heading);font-size:var(--fs-2xl);font-weight:var(--fw-extrabold);color:var(--c-dark);line-height:1.2;display:block}.tp-price-card__amount p{margin:0;display:inline}.tp-price-card__per{font-size:var(--fs-xs);color:var(--c-text-light);display:block}.tp-price-card__details{gap:var(--sp-3);margin-bottom:var(--sp-5);flex-direction:column;display:flex}.tp-price-card__row{align-items:flex-start;gap:var(--sp-3);display:flex}.tp-price-card__icon{color:var(--c-primary);flex-shrink:0;margin-top:2px;font-size:22px}.tp-price-card__row div{flex-direction:column;display:flex}.tp-price-card__row strong{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--c-dark)}.tp-price-card__row span:not(.material-icons-outlined){font-size:var(--fs-sm);color:var(--c-text)}.tp-price-card__actions{gap:var(--sp-2);display:flex}.tp-btn{padding:var(--sp-3) var(--sp-4);font-family:var(--ff-heading);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.05em;border-radius:var(--radius);transition:all var(--transition);cursor:pointer;text-align:center;flex:1;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.tp-btn--primary{background:var(--c-primary);color:var(--c-dark);border:2px solid var(--c-primary)}.tp-btn--primary:hover{background:var(--c-primary-light,#e6b800)}.tp-btn--outline{color:var(--c-dark);border:2px solid var(--c-dark);background:0 0}.tp-btn--outline:hover{background:var(--c-dark);color:var(--c-white)}.tp-help-card{background:var(--c-bg-alt);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:var(--sp-5);text-align:center}.tp-help-card__icon{color:var(--c-primary);margin-bottom:var(--sp-2);font-size:2.5rem;display:block}.tp-help-card__title{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--c-dark);margin:0 0 var(--sp-2)}.tp-help-card__text{font-size:var(--fs-xs);color:var(--c-text-light);margin:0 0 var(--sp-3);line-height:var(--lh-relaxed)}.tp-help-card__phone{font-family:var(--ff-heading);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--c-primary);text-decoration:none}.tp-help-card__phone:hover{text-decoration:underline}@media (max-width:1024px){.tp-layout{gap:var(--sp-6);grid-template-columns:1fr}.tp-sidebar__sticky{position:static}}@media (max-width:768px){.tp-header__title{font-size:1.4rem}.tp-gallery{grid-template-rows:auto auto;grid-template-columns:1fr}.tp-gallery__thumbs{flex-direction:row;order:2;overflow:auto hidden}.tp-gallery__thumb{aspect-ratio:1;width:64px}.tp-gallery__main{aspect-ratio:16/10;order:1}.tp-price-card__actions{flex-direction:column}.tp-tabs__nav{display:none}.tp-tabs__panels{border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden}.tp-tabs__panel{visibility:visible;opacity:1;border-bottom:1px solid var(--c-border);height:auto;padding-top:0;position:relative;overflow:visible}.tp-tabs__panel:last-child{border-bottom:none}.tp-tabs__panel .tp-accordion__header{padding:var(--sp-4) var(--sp-5);font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--c-dark);cursor:pointer;background:var(--c-white);-webkit-user-select:none;user-select:none;transition:background var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.tp-tabs__panel .tp-accordion__header:hover{background:var(--c-bg-alt)}.tp-tabs__panel .tp-accordion__header .material-icons-outlined{color:var(--c-text-light);transition:transform var(--transition);flex-shrink:0;font-size:2rem}.tp-tabs__panel.tp-accordion--open .tp-accordion__header{background:var(--c-bg-alt);border-bottom:1px solid var(--c-border)}.tp-tabs__panel.tp-accordion--open .tp-accordion__header .material-icons-outlined{transform:rotate(180deg)}.tp-tabs__panel .tp-accordion__body{max-height:0;transition:max-height .4s;overflow:hidden}.tp-tabs__panel.tp-accordion--open .tp-accordion__body{max-height:10000px}.tp-tabs__panel .tp-accordion__body>.tp-content,.tp-tabs__panel .tp-accordion__body>.tp-faq{padding:var(--sp-5)}}@media (max-width:480px){.tp-breadcrumbs{font-size:.65rem}.tp-header{padding:var(--sp-4) 0 var(--sp-2)}.tp-gallery__nav{width:32px;height:32px}.tp-gallery__thumb{width:54px}}.tp-booking{margin-bottom:var(--sp-8);padding-top:var(--sp-6);border-top:none}.tp-booking__header h2{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--c-dark);margin-bottom:var(--sp-2)}.tp-booking__header p{color:var(--c-text-light);margin-bottom:var(--sp-5)}.tp-booking__benefits{gap:var(--sp-4);margin-bottom:var(--sp-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tp-booking__benefit{border-radius:var(--radius);padding:var(--sp-4);box-shadow:none;background:0 0;border:none}.tp-booking__benefit h3{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--c-dark);margin-bottom:var(--sp-2)}.tp-booking__benefit p:last-child{margin-bottom:0}.tp-booking__card{border-radius:var(--radius-lg);box-shadow:none;background:0 0;border:none;padding:0}.tp-stepper{margin-bottom:var(--sp-4);align-items:center;display:flex}.tp-stepper__item{align-items:center;gap:var(--sp-2);color:var(--c-text-light);display:inline-flex}.tp-stepper__num{width:28px;height:28px;font-size:1.3rem;font-weight:var(--fw-bold);border:2px solid #d6d6d6;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.tp-stepper__label{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.tp-stepper__line{height:2px;margin:0 var(--sp-3);background:#ece1c3;flex:1}.tp-stepper__item--active{color:var(--c-dark)}.tp-stepper__item--active .tp-stepper__num{border-color:var(--c-primary);background:var(--c-primary);color:var(--c-dark)}.tp-booking__card--hidden{display:none}.tp-booking__grid{gap:var(--sp-5);grid-template-columns:1fr 220px;align-items:start;display:grid}.tp-booking__controls{gap:var(--sp-3);flex-direction:column;display:flex}.tp-booking__label{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--c-dark);align-items:center;gap:var(--sp-2);display:inline-flex}.tp-booking__label-icon{color:var(--c-primary);font-size:1.8rem}.tp-booking__select{width:100%;padding:var(--sp-2) var(--sp-1);font-size:var(--fs-base);color:var(--c-text);background:0 0;border:none;outline:none}.tp-booking__vehicle-image{margin-top:var(--sp-2);object-fit:contain;border-radius:var(--radius);width:40%;max-width:240px;height:auto;box-shadow:none;background:0 0;border:none}.tp-booking__total{border-radius:var(--radius);padding:var(--sp-4);text-align:center;background:0 0;border:none}.tp-booking__total span{font-family:var(--ff-heading);text-transform:uppercase;letter-spacing:.05em;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--c-dark);display:block}.tp-booking__total strong{font-family:var(--ff-heading);margin:var(--sp-2) 0;color:var(--c-dark);font-size:5rem;line-height:1;font-weight:var(--fw-extrabold);display:block}.tp-booking__total small{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--c-dark)}.tp-booking__actions{margin-top:var(--sp-6);padding-top:var(--sp-4);justify-content:center;gap:var(--sp-3);border-top:none;flex-wrap:wrap;display:flex}.tp-booking__btn{border-radius:var(--radius);min-width:14rem;min-height:5.4rem;font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-bold);white-space:nowrap;letter-spacing:.02em;cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;padding:1.2rem 2.8rem;line-height:1.1;display:inline-flex}.tp-booking__btn--primary{background:var(--c-primary);color:var(--c-dark)}.tp-booking__btn--primary:hover{background:var(--c-primary-dark);color:var(--c-white)}.tp-booking__btn--back{background:var(--c-dark);color:#fff}.tp-booking__btn--back:hover{background:#1f1f1f}.tp-booking-form{gap:var(--sp-4);flex-direction:column;display:flex}.tp-booking-form__field{gap:var(--sp-1);flex-direction:column;display:flex}.tp-booking-form__field label{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--c-dark);align-items:center;gap:var(--sp-2);display:inline-flex}.tp-booking-form__icon{color:var(--c-primary);font-size:1.8rem}.tp-booking-form__req{color:var(--c-danger)}.tp-booking-form__field input,.tp-booking-form__field textarea{border-radius:var(--radius);width:100%;padding:var(--sp-3) 0;font-size:var(--fs-base);color:var(--c-text);background:0 0;border:none;border-bottom:1px solid #0000001f}.tp-booking-form__field textarea{resize:vertical;min-height:160px}.tp-booking-form__field input:focus,.tp-booking-form__field textarea:focus{border-bottom-color:var(--c-primary);box-shadow:none;outline:none}.tp-booking-form__feedback{align-items:flex-start;gap:var(--sp-2);border-radius:var(--radius);padding:var(--sp-3) var(--sp-4);margin-top:var(--sp-2);font-size:var(--fs-sm);border:1px solid #0000;display:none}.tp-booking-form__feedback--success{color:#0f8a3d;background:#e6f9ee;border-color:#b2e6c8;display:flex}.tp-booking-form__feedback--error{color:#b91c1c;background:#fef2f2;border-color:#fecaca;display:flex}.tp-transfer-hero{width:100%;margin:0 0 var(--sp-6);height:50vh;min-height:320px;position:relative;overflow:hidden}.tp-transfer-hero__image{object-fit:cover;object-position:center top;width:100%;height:100%}@media (max-width:900px){.tp-booking__grid{grid-template-columns:1fr}.tp-booking__total{max-width:260px}}@media (max-width:680px){.tp-booking__benefits{grid-template-columns:1fr}.tp-booking__actions{flex-direction:column}.tp-booking__btn{width:100%}.tp-booking__label,.tp-booking-form__field label{font-size:var(--fs-base)}}.archive-hero{padding:var(--sp-16) 0;text-align:center;background:linear-gradient(122deg,#0f172a 0%,#172554 42%,#1d4ed8 100%) 50%/cover no-repeat;align-items:center;min-height:60vh;display:flex;position:relative;overflow:hidden}.archive-hero--with-media{background-color:#0f172a}.archive-hero__overlay{opacity:.4;background-color:#020617b3;background-image:radial-gradient(circle at 12% 22%,#ffe48a38 0%,#0000 35%),radial-gradient(circle at 87% 12%,#fde68a33 0%,#0000 33%),radial-gradient(circle at 50% 95%,#ffffff14 0%,#0000 30%);position:absolute;inset:0}.archive-hero__content{z-index:1;position:relative}.archive-hero__title{font-family:var(--ff-heading);font-size:clamp(2.6rem,6vw,4.4rem);font-weight:var(--fw-bold);color:var(--c-white);margin:0 0 var(--sp-3);letter-spacing:-.02em;text-wrap:balance;line-height:1.06}.archive-hero__desc{color:#ffffffe0;max-width:72rem;font-size:clamp(1.5rem,2vw,1.9rem);line-height:var(--lh-relaxed);text-wrap:pretty;margin:0 auto}.archive-breadcrumbs{justify-content:center;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);font-size:var(--fs-sm);color:#ffffffe6;display:flex}.archive-breadcrumbs a{color:#ffffffeb;text-decoration:none}.archive-breadcrumbs a:hover{color:#fde68a}.archive-breadcrumbs__sep{color:#ffffffa6}.archive-cats{background:var(--c-white);border-bottom:1px solid var(--c-border);position:static}.archive-cats__list{gap:var(--sp-2);padding:var(--sp-3) 0;-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;overflow-x:auto}.archive-cats__list::-webkit-scrollbar{display:none}.archive-cats__item{align-items:center;gap:var(--sp-1);white-space:nowrap;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--c-text);background:var(--c-white);border:1px solid var(--c-border);transition:all var(--transition-fast);border-radius:8px;padding:.8rem 1.2rem;text-decoration:none;display:inline-flex}.archive-cats__item:hover{color:var(--c-text);background:#fafafa;border-color:#d6d6d6}.archive-cats__item--active{background:var(--c-white);color:var(--c-dark);font-weight:var(--fw-semibold);border-color:#bdbdbd}.archive-cats__count{background:#f3f3f3;border:1px solid #e3e3e3;border-radius:8px;padding:.1rem .6rem;font-size:1.1rem}.archive-cats__item--active .archive-cats__count{background:#efefef}.archive-results{font-size:var(--fs-base);font-family:var(--ff-heading);color:#334155;margin-bottom:var(--sp-8);letter-spacing:.01em}.archive-listing{padding:var(--sp-10) 0 var(--sp-16);background:radial-gradient(circle at 95% 2%,#f2b90b14 0%,#0000 30%),radial-gradient(circle at 4% 90%,#3b82f60f 0%,#0000 30%),#fff}.archive-toolbar{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-6);flex-wrap:wrap;display:flex}.archive-search{min-width:24rem;max-width:42rem;height:4rem;padding:0 var(--sp-3);font-size:var(--fs-sm);color:var(--c-text);background:#fff;border:1px solid #d8d8d8;border-radius:8px;flex:1}.archive-search:focus{border-color:#b0b0b0;outline:none}.archive-item.hidden-by-search,.archive-item.hidden-by-page{display:none}.archive-pagination{margin-top:var(--sp-8);justify-content:center;align-items:center;gap:var(--sp-3);display:flex}.archive-pagination__btn{color:#333;min-width:10.8rem;height:3.6rem;font-size:var(--fs-sm);cursor:pointer;background:#fff;border:1px solid #d8d8d8;border-radius:8px}.archive-pagination__btn:disabled{opacity:.45;cursor:not-allowed}.archive-pagination__info{font-size:var(--fs-sm);color:#666}.archive-grid{gap:var(--sp-6);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}.archive-empty{border-radius:var(--radius-xl);padding:var(--sp-12);text-align:center;background:#f8fafce0;border:1px dashed #64748b73}.archive-empty .material-icons-outlined{color:#94a3b8;margin-bottom:var(--sp-3);font-size:4.6rem}.archive-empty p{color:#475569;font-size:var(--fs-md);margin:0}@media (min-width:768px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.archive-hero{padding:var(--sp-12) 0;min-height:60vh}.archive-hero__desc{font-size:var(--fs-sm)}.archive-cats__list{padding:var(--sp-3) 0}.archive-cats__item{font-size:var(--fs-xs);padding:.8rem 1.2rem}.archive-results{margin-bottom:var(--sp-6)}.archive-listing{padding:var(--sp-8) 0 var(--sp-12)}.archive-empty{padding:var(--sp-8)}.archive-search{min-width:100%;max-width:100%}}.cf{background:var(--c-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--sp-8);max-width:640px;margin:0 auto}.cf__title{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--c-dark);margin-bottom:var(--sp-1)}.cf__subtitle{font-size:var(--fs-sm);color:var(--c-text-light);margin-bottom:var(--sp-6)}.cf__form{gap:var(--sp-4);flex-direction:column;display:flex}.cf__row{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.cf__field{gap:var(--sp-1);flex-direction:column;display:flex}.cf__label{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-text)}.cf__req{color:var(--c-danger)}.cf__input{font-family:var(--ff-body);font-size:var(--fs-base);padding:var(--sp-3) var(--sp-4);border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-white);color:var(--c-text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;width:100%}.cf__input::placeholder{color:var(--c-text-muted)}.cf__input:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px #f2b90b26}.cf__textarea{resize:vertical;min-height:100px}.cf__footer{align-items:center;gap:var(--sp-4);flex-wrap:wrap;display:flex}.cf__btn{font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--c-dark);background:var(--c-primary);border-radius:var(--radius);padding:var(--sp-3) var(--sp-6);cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast);align-items:center;gap:var(--sp-2);border:none;display:inline-flex}.cf__btn:hover{background:var(--c-primary-dark);transform:translateY(-1px)}.cf__btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.cf__btn-loading{align-items:center;gap:var(--sp-2);display:inline-flex}.cf__spinner{animation:.8s linear infinite cf-spin}@keyframes cf-spin{to{transform:rotate(360deg)}}.cf__recaptcha-notice{color:var(--c-text-muted);flex:1;font-size:1.1rem}.cf__recaptcha-notice a{color:var(--c-text-light);text-decoration:underline}.cf__alert{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--radius);font-size:var(--fs-sm);margin-top:var(--sp-2);display:flex}.cf__alert .material-icons-outlined{flex-shrink:0;font-size:2rem}.cf__alert--success{color:#1a7a3a;background:#e6f9ee;border:1px solid #b2e6c8}.cf__alert--error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}@media (max-width:600px){.cf{padding:var(--sp-5)}.cf__row{grid-template-columns:1fr}.cf__footer{flex-direction:column;align-items:stretch}.cf__btn{justify-content:center;width:100%}.cf__recaptcha-notice{text-align:center}}.eq-overlay{z-index:var(--z-overlay);opacity:0;visibility:hidden;transition:opacity var(--transition), visibility var(--transition);background:#0000008c;position:fixed;inset:0}.eq-overlay--open{opacity:1;visibility:visible}.eq-modal{background:var(--c-white);width:480px;max-width:100vw;height:100vh;z-index:var(--z-modal);padding:var(--sp-8);transition:right var(--transition-slow);position:fixed;top:0;right:-480px;overflow-y:auto;box-shadow:-8px 0 30px #00000026}.eq-modal--open{right:0}.eq-modal__close{top:var(--sp-4);right:var(--sp-4);cursor:pointer;color:var(--c-text-light);padding:var(--sp-1);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;position:absolute}.eq-modal__close:hover{color:var(--c-dark);background:var(--c-bg-alt)}.eq-modal__close .material-icons-outlined{font-size:2.4rem}.eq-modal__title{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--c-primary-dark);margin:0 0 var(--sp-6);display:block}.eq-form{gap:var(--sp-4);flex-direction:column;display:flex}.eq-form__row{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.eq-form__field{gap:var(--sp-1);flex-direction:column;display:flex}.eq-form__label{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-text)}.eq-form__req{color:var(--c-danger);margin-left:2px}.eq-form__hint{color:var(--c-text-muted);font-size:1.1rem}.eq-form__input{font-family:var(--ff-body);font-size:var(--fs-base);padding:var(--sp-2) var(--sp-3);border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-white);color:var(--c-text);width:100%;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}.eq-form__input:focus{border-color:var(--c-primary);box-shadow:0 0 0 2px #f2b90b26}.eq-form__select{appearance:none;padding-right:var(--sp-8);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%23666' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}.eq-form__textarea{resize:vertical;min-height:90px}.eq-form__input[readonly]{background:var(--c-bg-alt);color:var(--c-text-light);cursor:default}.eq-form__checkbox{align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--c-text);cursor:pointer;display:flex}.eq-form__checkbox input[type=checkbox]{accent-color:var(--c-primary);flex-shrink:0;width:16px;height:16px;margin-top:3px}.eq-form__submit{font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--c-white);background:var(--c-primary-dark);border-radius:var(--radius-sm);padding:var(--sp-3) var(--sp-6);cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast);align-items:center;gap:var(--sp-2);border:none;align-self:flex-start;display:inline-flex}.eq-form__submit:hover{background:var(--c-primary);color:var(--c-dark)}.eq-form__submit:disabled{opacity:.7;cursor:not-allowed}.eq-form__submit-loading{align-items:center;gap:var(--sp-2);display:inline-flex}.eq-form__alert{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-sm);font-size:var(--fs-sm);display:flex}.eq-form__alert .material-icons-outlined{flex-shrink:0;font-size:2rem}.eq-form__alert--success{color:#1a7a3a;background:#e6f9ee;border:1px solid #b2e6c8}.eq-form__alert--error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}@media (max-width:520px){.eq-modal{width:100vw;padding:var(--sp-5) var(--sp-4)}.eq-form__row{grid-template-columns:1fr}}.bp-breadcrumbs{padding:var(--sp-3) 0;font-size:var(--fs-sm);color:var(--c-text-light)}.bp-breadcrumbs .container{align-items:center;gap:var(--sp-1);flex-wrap:wrap;display:flex}.bp-breadcrumbs a{color:var(--c-text-light);transition:color var(--transition-fast);text-decoration:none}.bp-breadcrumbs a:hover{color:var(--c-primary-dark)}.bp-breadcrumbs__sep{color:var(--c-text-muted);vertical-align:middle;font-family:Material Icons Outlined;font-size:1.6rem}.bp-breadcrumbs__current{color:var(--c-text);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;max-width:340px;overflow:hidden}.bp-header{padding:var(--sp-8) 0 var(--sp-5)}.bp-header__cat{background:var(--c-primary);color:var(--c-dark);font-family:var(--ff-heading);font-size:var(--fs-xs);font-weight:var(--fw-bold);padding:var(--sp-1) var(--sp-4);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--sp-4);display:inline-block}.bp-header__title{font-family:var(--ff-heading);font-size:var(--fs-3xl);font-weight:var(--fw-extrabold);color:var(--c-dark);line-height:var(--lh-tight);margin-bottom:var(--sp-3)}.bp-header__meta{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--c-text-light);flex-wrap:wrap;display:flex}.bp-header__avatar{border-radius:var(--radius-full);object-fit:cover;width:32px;height:32px}.bp-header__author{font-weight:var(--fw-semibold);color:var(--c-text)}.bp-header__dot{color:var(--c-text-muted)}.bp-header__icon{color:var(--c-text-muted);font-size:1.6rem!important}.bp-featured{margin-bottom:var(--sp-8)}.bp-featured__img{object-fit:cover;border-radius:var(--radius-lg);width:100%;max-height:500px}.bp-layout{gap:var(--sp-10);padding-bottom:var(--sp-12);grid-template-columns:70% 30%;align-items:start;display:grid}.bp-article{min-width:0}.bp-toc{background:var(--c-white);border-radius:var(--radius-lg);border:1px solid var(--c-border);margin-bottom:var(--sp-8);overflow:hidden}.bp-toc__toggle{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-4) var(--sp-5);cursor:pointer;font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--c-dark);background:0 0;border:none;display:flex}.bp-toc__toggle .material-icons-outlined{color:var(--c-primary);font-size:2.2rem}.bp-toc__toggle-label{text-align:left;flex:1}.bp-toc__chevron{transition:transform var(--transition)}.bp-toc__nav{padding:0 var(--sp-5) var(--sp-4);counter-reset:toc-item;flex-direction:column;display:none}.bp-toc.is-open .bp-toc__nav{display:flex}.bp-toc__link{font-size:var(--fs-sm);color:var(--c-text-light);padding:var(--sp-2) var(--sp-3);border-left:2px solid var(--c-border);transition:all var(--transition-fast);line-height:var(--lh-relaxed);text-decoration:none}.bp-toc__link:before{counter-increment:toc-item;content:counter(toc-item) ". ";font-weight:var(--fw-semibold);color:var(--c-dark)}.bp-toc__link:hover{color:var(--c-dark);border-left-color:var(--c-primary)}.bp-toc__link--active{color:var(--c-primary-dark);border-left-color:var(--c-primary);font-weight:var(--fw-semibold)}.bp-toc__link--sub{padding-left:var(--sp-8);font-size:var(--fs-xs)}.bp-content{font-family:var(--ff-body);font-size:var(--fs-md);color:var(--c-text);line-height:1.85}.bp-content p{margin-bottom:1.5em}.bp-postlist p{margin-bottom:0}.bp-postlist__title{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--c-dark);margin:0 0 var(--sp-2);padding:0;scroll-margin-top:80px}.bp-question-title{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--c-dark);line-height:var(--lh-tight);margin:var(--sp-5) 0 var(--sp-2);padding:0}.bp-question-title.bp-faq-title{margin-top:var(--sp-5);margin-bottom:var(--sp-7);padding-bottom:24px!important}.bp-content h2{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--c-dark);line-height:var(--lh-tight);margin:2em 0 .8em;scroll-margin-top:80px}.bp-blog-page .bp-content h2{margin:0}.bp-blog-page .bp-content h2.bp-faq-title{margin:0 0 var(--sp-7)}.bp-content h3{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--c-dark);margin:1.5em 0 .6em;scroll-margin-top:80px}.bp-content h4{font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--c-dark);margin:1.2em 0 .5em}.bp-content .faq-item__title{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--c-dark);line-height:var(--lh-normal);margin:0}.bp-content img{border-radius:var(--radius);width:100%;max-width:100%;height:auto;margin:var(--sp-6) 0}.bp-content figure.wp-caption,.bp-content figure.aligncenter{margin:var(--sp-6) auto;text-align:center;max-width:100%}.bp-content figcaption.wp-caption-text{margin-top:var(--sp-3);font-size:var(--fs-sm);color:var(--c-text-light);line-height:var(--lh-normal);font-style:normal}.bp-content a{color:var(--c-primary-dark);text-underline-offset:2px;text-decoration:underline}.bp-content a:hover{color:var(--c-primary)}.bp-content ul,.bp-content ol{padding-left:var(--sp-6);margin-bottom:1.5em}.bp-content ul{list-style:outside}.bp-content ol{list-style:decimal}.bp-content li{margin-bottom:.5em}.bp-content blockquote{border-left:4px solid var(--c-primary);padding:var(--sp-4) var(--sp-5);margin:var(--sp-6) 0;background:var(--c-bg-alt);border-radius:0 var(--radius) var(--radius) 0;color:var(--c-text-light);font-style:italic}.bp-content table{border-collapse:collapse;width:100%;margin:var(--sp-6) 0;font-size:var(--fs-sm)}.bp-content th,.bp-content td{padding:var(--sp-3) var(--sp-4);border:1px solid var(--c-border);text-align:left}.bp-content th{background:var(--c-bg-alt);font-weight:var(--fw-bold)}.bp-content pre{color:#cdd6f4;padding:var(--sp-5);border-radius:var(--radius);margin:var(--sp-6) 0;font-size:var(--fs-sm);background:#1e1e2e;overflow-x:auto}.bp-content code{background:var(--c-bg-alt);border-radius:var(--radius-sm);padding:2px 6px;font-size:.9em}.bp-content pre code{background:0 0;padding:0}.bp-share{align-items:center;gap:var(--sp-4);padding:var(--sp-6) 0;border-top:1px solid var(--c-border);margin-top:var(--sp-8);display:flex}.bp-share__label{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-text)}.bp-share__btns{gap:var(--sp-2);display:flex}.bp-share__btn{border-radius:var(--radius-full);width:38px;height:38px;color:var(--c-white);font-size:var(--fs-sm);cursor:pointer;transition:transform var(--transition-fast), opacity var(--transition-fast);border:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.bp-share__btn:hover{opacity:.9;transform:scale(1.1)}.bp-share__btn--fb{background:#1877f2}.bp-share__btn--tw{background:#000}.bp-share__btn--wa{background:#25d366}.bp-share__btn--copy{background:var(--c-text-muted)}.bp-share__btn--copy .material-icons-outlined{font-size:1.8rem}.bp-author-card{background:var(--c-bg-alt);border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-6);margin-top:var(--sp-4)}.bp-author-card__label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--c-text-muted);margin-bottom:var(--sp-3);display:block}.bp-author-card__info{align-items:center;gap:var(--sp-4);display:flex}.bp-author-card__avatar{border-radius:var(--radius-full);object-fit:cover;width:48px;height:48px}.bp-author-card__name{font-family:var(--ff-heading);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--c-dark)}.bp-prevnext{gap:var(--sp-4);padding-top:var(--sp-6);border-top:1px solid var(--c-border);margin-top:var(--sp-6);grid-template-columns:1fr 1fr;display:grid}.bp-prevnext__link{align-items:center;gap:var(--sp-3);color:inherit;padding:var(--sp-4) var(--sp-5);border:1px solid var(--c-border);border-radius:var(--radius);transition:all var(--transition-fast);text-decoration:none;display:flex}.bp-prevnext__link:hover{border-color:var(--c-primary);background:#fffdf5}.bp-prevnext__link--next{text-align:right;justify-content:flex-end}.bp-prevnext__link .material-icons-outlined{color:var(--c-primary);flex-shrink:0;font-size:2.2rem}.bp-prevnext__label{font-size:var(--fs-xs);color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;display:block}.bp-prevnext__title{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-dark);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.bp-sidebar__sticky{gap:var(--sp-6);flex-direction:column;display:flex;position:sticky;top:80px}.bp-widget{background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:var(--sp-5);margin-top:var(--sp-8)}.bp-widget__title{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--c-dark);margin-bottom:var(--sp-4);align-items:center;gap:var(--sp-2);display:flex}.bp-widget__title .material-icons-outlined{color:var(--c-primary);font-size:2rem}.bp-search{border:1px solid var(--c-border);border-radius:var(--radius);display:flex;overflow:hidden}.bp-search__input{padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);font-family:var(--ff-body);color:var(--c-text);background:var(--c-white);border:none;outline:none;flex:1}.bp-search__input::placeholder{color:var(--c-text-muted)}.bp-search__btn{padding:var(--sp-3);background:var(--c-primary);cursor:pointer;color:var(--c-dark);border:none;align-items:center;display:flex}.bp-search__btn .material-icons-outlined{font-size:2rem}.bp-search__btn:hover{background:var(--c-primary-dark)}.bp-search-results{margin-top:var(--sp-3);border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-white);max-height:280px;display:none;overflow:auto}.bp-search-results.is-open{display:block}.bp-search-results__item{padding:var(--sp-3) var(--sp-4);color:var(--c-text);border-bottom:1px solid var(--c-border-light);font-size:var(--fs-sm);text-decoration:none;display:block}.bp-search-results__item:last-child{border-bottom:none}.bp-search-results__item:hover{background:var(--c-bg-alt);color:var(--c-primary-dark)}.bp-search-results__status{padding:var(--sp-3) var(--sp-4);color:var(--c-text-light);font-size:var(--fs-xs)}.bp-widget-posts{gap:var(--sp-4);flex-direction:column;display:flex}.bp-widget-posts__item{gap:var(--sp-3);color:inherit;transition:background var(--transition-fast);padding:var(--sp-2);margin:calc(-1 * var(--sp-2));border-radius:var(--radius-sm);text-decoration:none;display:flex}.bp-widget-posts__item:hover{background:var(--c-bg-alt)}.bp-widget-posts__img{object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0;width:72px;height:54px}.bp-widget-posts__info{flex-direction:column;gap:3px;min-width:0;display:flex}.bp-widget-posts__title{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-text);line-height:var(--lh-tight);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.bp-widget-posts__date{color:var(--c-text-muted);font-size:1.1rem}.bp-widget-cats{margin:0;padding:0;list-style:none}.bp-widget-cats li{border-bottom:1px solid var(--c-border-light)}.bp-widget-cats li:last-child{border-bottom:none}.bp-widget-cats__link{padding:var(--sp-3) 0;color:var(--c-text);font-size:var(--fs-sm);transition:color var(--transition-fast);justify-content:space-between;align-items:center;text-decoration:none;display:flex}.bp-widget-cats__link:hover{color:var(--c-primary-dark)}.bp-widget-cats__count{background:var(--c-bg-alt);padding:2px var(--sp-2);border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--c-text-muted);font-weight:var(--fw-semibold)}.bp-widget-tags{gap:var(--sp-2);flex-wrap:wrap;display:flex}.bp-widget-tags__item{font-size:var(--fs-xs);color:var(--c-text);background:var(--c-bg-alt);padding:var(--sp-1) var(--sp-3);border-radius:var(--radius-sm);border:1px solid var(--c-border);transition:all var(--transition-fast);text-decoration:none}.bp-widget-tags__item:hover{background:var(--c-primary);color:var(--c-dark);border-color:var(--c-primary)}@media (max-width:1024px){.bp-layout{grid-template-columns:1fr}.bp-sidebar{order:2}.bp-sidebar__sticky{max-height:none;position:static}.bp-article{order:1}}@media (max-width:768px){.bp-header__title{font-size:var(--fs-xl)}.bp-prevnext{grid-template-columns:1fr}.bp-breadcrumbs__current{max-width:180px}.bp-featured__img{max-height:300px}}@media (max-width:480px){.bp-header{padding:var(--sp-5) 0 var(--sp-3)}.bp-header__title{font-size:var(--fs-lg)}.bp-content{font-size:var(--fs-base)}.bp-share{flex-direction:column;align-items:flex-start}}}@layer utilities{.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.container{width:100%;max-width:var(--container-max);padding:0 var(--container-padding);margin:0 auto}.mx-auto{margin-inline:auto}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-0\.5{height:calc(var(--spacing) * .5)}.h-30{height:calc(var(--spacing) * 30)}.w-14{width:calc(var(--spacing) * 14)}.max-w-2xl{max-width:var(--container-2xl)}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.bg-primary{background-color:var(--color-primary)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.text-center{text-align:center}.font-heading{font-family:var(--font-heading)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-black{color:var(--color-black)}.text-text-light{color:var(--color-text-light)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}@media (min-width:64rem){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}img{content-visibility:auto}img[loading=lazy]{contain-intrinsic-size:400px 260px}:root{--c-primary:#f2b90b;--c-primary-dark:#d9a30a;--c-primary-light:#f5cb3d;--c-dark:#000;--c-text:#333;--c-text-light:#666;--c-text-muted:#999;--c-border:#e5e5e5;--c-border-light:#f0f0f0;--c-bg-alt:#f4f3f2;--c-white:#fff;--c-black:#000;--c-success:#25d366;--c-danger:#e53e3e;--c-warning:#f6ad55;--ff-heading:"Montserrat", sans-serif;--ff-body:"Karla", sans-serif;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--lh-tight:1.2;--lh-normal:1.5;--lh-relaxed:1.7;--fs-xs:1.2rem;--fs-sm:1.4rem;--fs-base:1.6rem;--fs-md:1.8rem;--fs-lg:2rem;--fs-xl:2.4rem;--fs-2xl:3rem;--fs-3xl:3.6rem;--fs-4xl:4.8rem;--fs-5xl:6rem;--fs-h1:4.2rem;--fs-h2:3rem;--fs-h3:2.4rem;--fs-h4:2rem;--fs-h5:1.8rem;--fs-h6:1.6rem;--sp-1:.4rem;--sp-2:.8rem;--sp-3:1.2rem;--sp-4:1.6rem;--sp-5:2rem;--sp-6:2.4rem;--sp-8:3.2rem;--sp-10:4rem;--sp-12:4.8rem;--sp-16:6.4rem;--sp-20:8rem;--radius-sm:.4rem;--radius:.8rem;--radius-lg:1.2rem;--radius-xl:1.6rem;--radius-full:50%;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 30px #0000001f;--shadow-xl:0 12px 40px #00000026;--transition:.25s ease;--transition-fast:.15s ease;--transition-slow:.4s ease;--z-dropdown:50;--z-sticky:50;--z-overlay:60;--z-drawer:70;--z-modal:80;--z-tooltip:90;--container-max:1280px;--container-padding:24px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}

/* WordPress Navigation Menu additions */
.nav__list { display: flex; align-items: center; gap: 0.8rem; list-style: none; margin: 0; padding: 0; }
.nav__list li { position: relative; margin: 0; }
.nav__list li a { display: block; padding: 0.8rem 1.6rem; font-family: var(--ff-heading, sans-serif); font-size: 1.4rem; font-weight: 600; color: #111; border-radius: 9999px; text-decoration: none; }
.nav__list li:hover > a, .nav__list li.current-menu-item > a { background: #F2B90B; color: #000; }
.nav__list ul.sub-menu { position: absolute; top: 100%; left: 0; min-width: 220px; background: #fff; box-shadow: 0 10px 30px rgba(0,0,0,0.12); border-radius: 12px; border: 1px solid #f0f0f0; padding: 8px 0; list-style: none; display: none; z-index: 50; }
.nav__list li:hover > ul.sub-menu { display: block; }
.nav__list ul.sub-menu li a { padding: 8px 16px; border-radius: 0; font-size: 1.3rem; color: #333; }
.nav__list ul.sub-menu li a:hover { background: #F4F3F2; color: #d9a30a; }
.drawer__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.drawer__list li a { display: block; padding: 10px 14px; font-family: var(--ff-heading, sans-serif); font-size: 1.6rem; font-weight: 600; border-radius: 8px; border-bottom: 1px solid #f0f0f0; color: #111; text-decoration: none; }
.drawer__list li.current-menu-item > a { background: #F2B90B; color: #000; }
.drawer__list ul.sub-menu { list-style: none; padding-left: 16px; margin: 4px 0; }
.drawer__list ul.sub-menu li a { font-size: 1.4rem; color: #666; border-bottom: none; }

/* ═══════════════════════════════════════════
   Swiper Carousel Custom Styles
   ═══════════════════════════════════════════ */
.blog-swiper, .related-tours-swiper {
	position: relative;
	overflow: hidden;
	padding: 10px 4px 50px !important;
}
.blog-swiper .swiper-slide, .related-tours-swiper .swiper-slide {
	height: auto;
	display: flex;
}
.blog-swiper .post-card, .related-tours-swiper .card {
	width: 100%;
	display: flex;
	flex-direction: column;
}
.blog-swiper-pagination .swiper-pagination-bullet, .related-swiper-pagination .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background: #cbd5e1;
	opacity: 1;
	transition: all .25s ease;
}
.blog-swiper-pagination .swiper-pagination-bullet-active, .related-swiper-pagination .swiper-pagination-bullet-active {
	background: #F2B90B;
	width: 28px;
	border-radius: 9999px;
}
.blog-swiper-prev, .blog-swiper-next, .related-swiper-prev, .related-swiper-next {
	width: 44px;
	height: 44px;
	background: rgba(255, 255, 255, 0.95);
	border-radius: 50%;
	color: #000;
	box-shadow: 0 4px 14px rgba(0,0,0,0.15);
	transition: all .25s ease;
	top: 45%;
}
.blog-swiper-prev:after, .blog-swiper-next:after, .related-swiper-prev:after, .related-swiper-next:after {
	font-size: 16px;
	font-weight: bold;
}
.blog-swiper-prev:hover, .blog-swiper-next:hover, .related-swiper-prev:hover, .related-swiper-next:hover {
	background: #F2B90B;
	color: #000;
	transform: scale(1.08);
}



/* ═══════════════════════════════════════════
   TOUR DETAIL PAGE & ENQUIRE MODAL STYLES (1:1 PARITY)
   ═══════════════════════════════════════════ */
  .tp-breadcrumbs a:hover {
    color: var(--c-primary);
  }

  .tp-breadcrumbs__sep {
    margin: 0 var(--sp-2);
    color: var(--c-border);
  }

  .tp-breadcrumbs__current {
    color: var(--c-text);
    font-weight: var(--fw-medium);
  }

  /* Header */
  .tp-header {
    padding: var(--sp-6) 0 var(--sp-4);
  }

  .tp-header__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl);
    font-weight: var(--fw-semibold);
    color: var(--c-dark);
    margin: 0;
    line-height: var(--lh-tight);
    padding-top: var(--sp-4);
  }

  /* Layout: main + sidebar */
  .tp-layout {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: var(--sp-8);
    padding-bottom: var(--sp-12);
  }

  /* ── Gallery ── */
  .tp-gallery {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: var(--sp-2);
    margin-bottom: var(--sp-8);
  }

  .tp-gallery__main {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--c-border);
    aspect-ratio: 4/3;
  }

  .tp-gallery__big {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: opacity 0.3s;
  }

  .tp-gallery__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    width: 36px;
    height: 36px;
    border-radius: var(--radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background var(--transition);
    z-index: 2;
  }

  .tp-gallery__nav:hover {
    background: rgba(0, 0, 0, 0.75);
  }

  .tp-gallery__nav--prev {
    left: var(--sp-2);
  }

  .tp-gallery__nav--next {
    right: var(--sp-2);
  }

  .tp-gallery__thumbs {
    display: flex;
    flex-direction: column;
    gap: var(--sp-2);
    overflow: hidden;
    height: 100%;
  }

  .tp-gallery__thumb {
    flex: 1;
    min-height: 0;
    width: 100%;
    border-radius: var(--radius);
    overflow: hidden;
    border: 2px solid transparent;
    cursor: pointer;
    padding: 0;
    background: none;
    opacity: 0.55;
    transition: all var(--transition);
    position: relative;
  }

  .tp-gallery__thumb:hover {
    opacity: 0.85;
  }

  .tp-gallery__thumb--active {
    border-color: var(--c-primary);
    opacity: 1;
  }

  .tp-gallery__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .tp-gallery__thumb--more img {
    filter: brightness(0.4);
  }

  .tp-gallery__more {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: var(--fs-xs);
    font-weight: var(--fw-bold);
    text-align: center;
    line-height: 1.2;
  }

  /* ── Tabs ── */
  .tp-tabs {
    margin-bottom: var(--sp-8);
  }

  .tp-tabs__nav {
    display: flex;
    gap: 0;
    border-bottom: 1px solid var(--c-border);
    overflow-x: auto;
    scrollbar-width: none;
  }

  .tp-tabs__nav::-webkit-scrollbar {
    display: none;
  }

  .tp-tabs__btn {
    background: none;
    border: none;
    padding: var(--sp-3) var(--sp-5);
    font-family: var(--ff-heading);
    font-size: var(--fs-base);
    font-weight: var(--fw-medium);
    color: var(--c-text-light);
    cursor: pointer;
    white-space: nowrap;
    position: relative;
    transition: color var(--transition);
    text-decoration: none;
  }

  .tp-tabs__btn::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    height: 2px;
    background: transparent;
    transition: background var(--transition);
  }

  .tp-tabs__btn:hover {
    color: var(--c-dark);
  }

  .tp-tabs__btn--active {
    color: var(--c-dark);
    font-weight: var(--fw-bold);
  }

  .tp-tabs__btn--active::after {
    background: var(--c-dark);
  }

  .tp-tabs__panel {
    height: 0;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
  }

  .tp-tabs__panel--active {
    height: auto;
    overflow: visible;
    visibility: visible;
    opacity: 1;
    padding-top: var(--sp-6);
  }

  /* Desktop: hide accordion header, show body freely */
  .tp-accordion__header {
    display: none;
  }

  .tp-accordion__body {
    max-height: none;
    overflow: visible;
  }

  .tp-faq {
    display: flex;
    flex-direction: column;
    gap: var(--sp-3);
  }

  .tp-content {
    color: var(--c-text);
    line-height: var(--lh-relaxed);
    font-size: var(--fs-base);
  }

  .tp-content p {
    margin-bottom: var(--sp-3);
  }

  .tp-content strong {
    color: var(--c-dark);
    font-weight: var(--fw-semibold);
  }

  .tp-content h2,
  .tp-content h3,
  .tp-content h4 {
    font-family: var(--ff-heading);
    color: var(--c-primary-dark, #b8860b);
    margin: var(--sp-6) 0 var(--sp-3);
    line-height: var(--lh-tight);
  }

  .tp-content h2:first-child,
  .tp-content h3:first-child,
  .tp-content h4:first-child {
    margin-top: 0;
  }

  .tp-content h2 {
    font-size: var(--fs-xl);
    font-weight: var(--fw-bold);
  }

  .tp-content h3 {
    font-size: var(--fs-lg);
    font-weight: var(--fw-bold);
  }

  .tp-content h4 {
    font-size: var(--fs-md);
    font-weight: var(--fw-semibold);
  }

  .tp-content ul {
    list-style: disc;
    padding-left: var(--sp-6);
    margin-bottom: var(--sp-4);
  }

  .tp-content ol {
    list-style: decimal;
    padding-left: var(--sp-6);
    margin-bottom: var(--sp-4);
  }

  .tp-content li {
    margin-bottom: var(--sp-2);
    display: list-item;
  }

  .tp-content blockquote {
    border-left: 4px solid var(--c-primary);
    padding: var(--sp-4) var(--sp-5);
    margin: var(--sp-6) 0;
    background: var(--c-bg-alt);
    border-radius: 0 var(--radius) var(--radius) 0;
    font-style: italic;
    color: var(--c-text-light);
  }

  .tp-content blockquote p:last-child {
    margin-bottom: 0;
  }

  .tp-content img,
  .tp-content figure img {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: var(--radius);
    margin: var(--sp-5) auto;
    display: block;
  }

  .tp-content figure.wp-caption,
  .tp-content figure.aligncenter {
    margin: var(--sp-6) auto;
    max-width: 100%;
    text-align: center;
  }

  .tp-content figcaption.wp-caption-text {
    margin-top: var(--sp-3);
    font-size: var(--fs-sm);
    color: var(--c-text-light);
    line-height: var(--lh-normal);
    font-style: normal;
  }

  /* Tables */
  .tp-content table {
    width: 100%;
    border-collapse: collapse;
    margin: var(--sp-4) 0;
    font-size: var(--fs-sm);
  }

  .tp-content thead th {
    background: var(--c-dark);
    color: var(--c-white);
    font-family: var(--ff-heading);
    font-weight: var(--fw-bold);
    padding: var(--sp-3) var(--sp-4);
    text-align: left;
  }

  .tp-content tbody td {
    padding: var(--sp-3) var(--sp-4);
    border-bottom: 1px solid var(--c-border);
  }

  .tp-content tbody tr:nth-child(even) {
    background: var(--c-bg-alt);
  }

  .tp-content tbody tr:hover {
    background: #fdf8e8;
  }

  @media (max-width: 640px) {
    .tp-content table {
      font-size: var(--fs-xs);
    }

    .tp-content thead th,
    .tp-content tbody td {
      padding: var(--sp-2) var(--sp-3);
    }
  }

  /* Incluye: items with check */
  .tp-content ul.tp-list--yes,
  .tp-content ol.tp-list--yes {
    list-style: none !important;
    padding-left: 0 !important;
  }

  .tp-content .tp-list--yes li {
    position: relative;
    padding-left: var(--sp-6);
    display: block;
  }

  .tp-content .tp-list--yes li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: var(--fw-bold);
    color: #22c55e;
    font-size: 1.1em;
  }

  /* No incluye: items with X */
  .tp-content ul.tp-list--no,
  .tp-content ol.tp-list--no {
    list-style: none !important;
    padding-left: 0 !important;
  }

  .tp-content .tp-list--no li {
    position: relative;
    padding-left: var(--sp-6);
    display: block;
  }

  .tp-content .tp-list--no li::before {
    content: '✗';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: var(--fw-bold);
    color: #ef4444;
    font-size: 1.1em;
  }

  /* Paragraphs styled as include/exclude items */
  .tp-list--yes-item,
  .tp-list--no-item {
    position: relative;
    padding-left: var(--sp-6);
  }

  .tp-list--yes-item::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: var(--fw-bold);
    color: #22c55e;
    font-size: 1.1em;
  }

  .tp-list--no-item::before {
    content: '✗';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: var(--fw-bold);
    color: #ef4444;
    font-size: 1.1em;
  }

  /* ── Itinerary DAY style ── */
  .tp-content--days {
    counter-reset: day-counter;
  }

  .tp-content--days h3,
  .tp-content--days h4 {
    counter-increment: day-counter;
    position: relative;
    padding-left: 72px;
    min-height: 56px;
    display: flex;
    align-items: center;
    margin-top: var(--sp-6);
    padding-top: var(--sp-2);
    border-top: 1px solid var(--c-border);
  }

  .tp-content--days h3:first-child,
  .tp-content--days h4:first-child {
    margin-top: 0;
    border-top: none;
  }

  .tp-content--days h3::before,
  .tp-content--days h4::before {
    content: 'DAY';
    position: absolute;
    left: 0;
    top: var(--sp-3);
    font-family: var(--ff-heading);
    font-size: var(--fs-xs);
    font-weight: var(--fw-bold);
    color: var(--c-primary);
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .tp-content--days h3::after,
  .tp-content--days h4::after {
    content: counter(day-counter, decimal-leading-zero);
    position: absolute;
    left: 0;
    top: calc(var(--sp-3) + 14px);
    font-family: var(--ff-heading);
    font-size: 1.6rem;
    font-weight: var(--fw-extrabold);
    color: var(--c-primary);
    line-height: 1;
  }

  .tp-content--days>p {
    padding-left: 72px;
  }

  /* ── Section (below tabs) ── */
  .tp-section {
    margin-bottom: var(--sp-8);
  }

  .tp-section__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-lg);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    display: flex;
    align-items: center;
    gap: var(--sp-2);
    margin: 0 0 var(--sp-4);
  }

  .tp-section__title .material-icons-outlined {
    color: var(--c-primary);
    font-size: 22px;
  }

  /* ── Sidebar ── */
  .tp-sidebar__sticky {
    position: sticky;
    top: 80px;
    display: flex;
    flex-direction: column;
    gap: var(--sp-5);
  }

  /* Price Card */
  .tp-price-card {
    background: #fdf8e8;
    border: 1px solid #e8d68a;
    border-radius: var(--radius-lg);
    padding: var(--sp-6);
  }

  .tp-price-card__price {
    display: flex;
    flex-direction: column;
    gap: var(--sp-2);
    text-align: center;
    margin-bottom: var(--sp-5);
    padding-bottom: var(--sp-4);
    border-bottom: 1px solid #e8d68a;
  }

  .tp-price-card__label {
    display: block;
    font-size: var(--fs-xs);
    color: var(--c-text-light);
  }

  .tp-price-card__amount {
    display: block;
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl);
    font-weight: var(--fw-extrabold);
    color: var(--c-dark);
    line-height: 1.2;
  }

  .tp-price-card__amount p {
    margin: 0;
    display: inline;
  }

  .tp-price-card__per {
    display: block;
    font-size: var(--fs-xs);
    color: var(--c-text-light);
  }

  .tp-price-card__details {
    display: flex;
    flex-direction: column;
    gap: var(--sp-3);
    margin-bottom: var(--sp-5);
  }

  .tp-price-card__row {
    display: flex;
    align-items: flex-start;
    gap: var(--sp-3);
  }

  .tp-price-card__icon {
    color: var(--c-primary);
    font-size: 22px;
    flex-shrink: 0;
    margin-top: 2px;
  }

  .tp-price-card__row div {
    display: flex;
    flex-direction: column;
  }

  .tp-price-card__row strong {
    font-family: var(--ff-heading);
    font-size: var(--fs-sm);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
  }

  .tp-price-card__row span:not(.material-icons-outlined) {
    font-size: var(--fs-sm);
    color: var(--c-text);
  }

  .tp-price-card__actions {
    display: flex;
    gap: var(--sp-2);
  }

  .tp-btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--sp-3) var(--sp-4);
    font-family: var(--ff-heading);
    font-size: var(--fs-xs);
    font-weight: var(--fw-bold);
    letter-spacing: 0.05em;
    text-decoration: none;
    border-radius: var(--radius);
    transition: all var(--transition);
    cursor: pointer;
    text-align: center;
  }

  .tp-btn--primary {
    background: var(--c-primary);
    color: var(--c-dark);
    border: 2px solid var(--c-primary);
  }

  .tp-btn--primary:hover {
    background: var(--c-primary-light, #e6b800);
  }

  .tp-btn--outline {
    background: transparent;
    color: var(--c-dark);
    border: 2px solid var(--c-dark);
  }

  .tp-btn--outline:hover {
    background: var(--c-dark);
    color: var(--c-white);
  }

  /* Help Card */
  .tp-help-card {
    background: var(--c-bg-alt);
    border: 1px solid var(--c-border);
    border-radius: var(--radius-lg);
    padding: var(--sp-5);
    text-align: center;
  }

  .tp-help-card__icon {
    font-size: 2.5rem;
    color: var(--c-primary);
    display: block;
    margin-bottom: var(--sp-2);
  }

  .tp-help-card__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-sm);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    margin: 0 0 var(--sp-2);
  }

  .tp-help-card__text {
    font-size: var(--fs-xs);
    color: var(--c-text-light);
    margin: 0 0 var(--sp-3);
    line-height: var(--lh-relaxed);
  }

  .tp-help-card__phone {
    font-family: var(--ff-heading);
    font-size: var(--fs-md);
    font-weight: var(--fw-bold);
    color: var(--c-primary);
    text-decoration: none;
  }

  .tp-help-card__phone:hover {
    text-decoration: underline;
  }


  /* ── Tour Page Responsive ── */
  @media (max-width: 1024px) {
    .tp-layout {
      grid-template-columns: 1fr;
      gap: var(--sp-6);
    }

    .tp-sidebar__sticky {
      position: static;
    }
  }

  @media (max-width: 768px) {
    .tp-header__title {
      font-size: 1.4rem;
    }

    .tp-gallery {
      grid-template-columns: 1fr;
      grid-template-rows: auto auto;
    }

    .tp-gallery__thumbs {
      flex-direction: row;
      overflow-x: auto;
      overflow-y: hidden;
      order: 2;
    }

    .tp-gallery__thumb {
      width: 64px;
      aspect-ratio: 1;
    }

    .tp-gallery__main {
      order: 1;
      aspect-ratio: 16/10;
    }

    .tp-price-card__actions {
      flex-direction: column;
    }

    /* Tabs → Accordion on mobile */
    .tp-tabs__nav {
      display: none;
    }

    .tp-tabs__panels {
      border: 1px solid var(--c-border);
      border-radius: var(--radius-lg);
      overflow: hidden;
    }

    .tp-tabs__panel {
      height: auto;
      overflow: visible;
      visibility: visible;
      opacity: 1;
      padding-top: 0;
      position: relative;
      border-bottom: 1px solid var(--c-border);
    }

    .tp-tabs__panel:last-child {
      border-bottom: none;
    }

    .tp-tabs__panel .tp-accordion__header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: var(--sp-4) var(--sp-5);
      font-family: var(--ff-heading);
      font-size: var(--fs-base);
      font-weight: var(--fw-semibold);
      color: var(--c-dark);
      cursor: pointer;
      background: var(--c-white);
      user-select: none;
      transition: background var(--transition-fast);
    }

    .tp-tabs__panel .tp-accordion__header:hover {
      background: var(--c-bg-alt);
    }

    .tp-tabs__panel .tp-accordion__header .material-icons-outlined {
      font-size: 2rem;
      color: var(--c-text-light);
      transition: transform var(--transition);
      flex-shrink: 0;
    }

    .tp-tabs__panel.tp-accordion--open .tp-accordion__header {
      background: var(--c-bg-alt);
      border-bottom: 1px solid var(--c-border);
    }

    .tp-tabs__panel.tp-accordion--open .tp-accordion__header .material-icons-outlined {
      transform: rotate(180deg);
    }

    .tp-tabs__panel .tp-accordion__body {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.4s ease;
    }

    .tp-tabs__panel.tp-accordion--open .tp-accordion__body {
      max-height: 10000px;
    }

    .tp-tabs__panel .tp-accordion__body>.tp-content,
    .tp-tabs__panel .tp-accordion__body>.tp-faq {
      padding: var(--sp-5);
    }
  }

  @media (max-width: 480px) {
    .tp-breadcrumbs {
      font-size: 0.65rem;
    }

    .tp-header {
      padding: var(--sp-4) 0 var(--sp-2);
    }

    .tp-gallery__nav {
      width: 32px;
      height: 32px;
    }

    .tp-gallery__thumb {
      width: 54px;
    }
  }

  /* ── Private Transport Booking ── */
  .tp-booking {
    margin-bottom: var(--sp-8);
    border-top: none;
    padding-top: var(--sp-6);
  }

  .tp-booking__header h2 {
    font-family: var(--ff-heading);
    font-size: var(--fs-xl);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    margin-bottom: var(--sp-2);
  }

  .tp-booking__header p {
    color: var(--c-text-light);
    margin-bottom: var(--sp-5);
  }

  .tp-booking__benefits {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--sp-4);
    margin-bottom: var(--sp-5);
  }

  .tp-booking__benefit {
    background: transparent;
    border: none;
    border-radius: var(--radius);
    padding: var(--sp-4);
    box-shadow: none;
  }

  .tp-booking__benefit h3 {
    font-size: var(--fs-base);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    margin-bottom: var(--sp-2);
  }

  .tp-booking__benefit p:last-child {
    margin-bottom: 0;
  }

  .tp-booking__card {
    background: transparent;
    border: none;
    border-radius: var(--radius-lg);
    padding: 0;
    box-shadow: none;
  }

  .tp-stepper {
    display: flex;
    align-items: center;
    margin-bottom: var(--sp-4);
  }

  .tp-stepper__item {
    display: inline-flex;
    align-items: center;
    gap: var(--sp-2);
    color: var(--c-text-light);
  }

  .tp-stepper__num {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    border: 2px solid #d6d6d6;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    font-weight: var(--fw-bold);
  }

  .tp-stepper__label {
    font-family: var(--ff-heading);
    font-size: var(--fs-sm);
    font-weight: var(--fw-semibold);
  }

  .tp-stepper__line {
    flex: 1;
    height: 2px;
    background: #ece1c3;
    margin: 0 var(--sp-3);
  }

  .tp-stepper__item--active {
    color: var(--c-dark);
  }

  .tp-stepper__item--active .tp-stepper__num {
    border-color: var(--c-primary);
    background: var(--c-primary);
    color: var(--c-dark);
  }

  .tp-booking__card--hidden {
    display: none;
  }

  .tp-booking__grid {
    display: grid;
    grid-template-columns: 1fr 220px;
    gap: var(--sp-5);
    align-items: start;
  }

  .tp-booking__controls {
    display: flex;
    flex-direction: column;
    gap: var(--sp-3);
  }

  .tp-booking__label {
    font-family: var(--ff-heading);
    font-size: var(--fs-lg);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    display: inline-flex;
    align-items: center;
    gap: var(--sp-2);
  }

  .tp-booking__label-icon {
    font-size: 1.8rem;
    color: var(--c-primary);
  }

  .tp-booking__select {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: none;
    padding: var(--sp-2) var(--sp-1);
    font-size: var(--fs-base);
    color: var(--c-text);
    outline: none;
  }

  .tp-booking__vehicle-image {
    margin-top: var(--sp-2);
    width: 40%;
    max-width: 240px;
    height: auto;
    object-fit: contain;
    border-radius: var(--radius);
    border: none;
    background: transparent;
    box-shadow: none;
  }

  .tp-booking__total {
    background: transparent;
    border: none;
    border-radius: var(--radius);
    padding: var(--sp-4);
    text-align: center;
  }

  .tp-booking__total span {
    display: block;
    font-family: var(--ff-heading);
    text-transform: uppercase;
    letter-spacing: .05em;
    font-size: var(--fs-sm);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
  }

  .tp-booking__total strong {
    display: block;
    font-family: var(--ff-heading);
    font-size: 5rem;
    line-height: 1;
    margin: var(--sp-2) 0;
    color: var(--c-dark);
    font-weight: var(--fw-extrabold);
  }

  .tp-booking__total small {
    font-size: var(--fs-sm);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
  }

  .tp-booking__actions {
    margin-top: var(--sp-6);
    padding-top: var(--sp-4);
    border-top: none;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: var(--sp-3);
  }

  .tp-booking__btn {
    border: none;
    border-radius: var(--radius);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 14rem;
    min-height: 5.4rem;
    padding: 1.2rem 2.8rem;
    font-family: var(--ff-heading);
    font-size: var(--fs-base);
    font-weight: var(--fw-bold);
    line-height: 1.1;
    white-space: nowrap;
    letter-spacing: .02em;
    cursor: pointer;
    transition: all var(--transition-fast);
  }

  .tp-booking__btn--primary {
    background: var(--c-primary);
    color: var(--c-dark);
  }

  .tp-booking__btn--primary:hover {
    background: var(--c-primary-dark);
    color: var(--c-white);
  }

  .tp-booking__btn--back {
    background: var(--c-dark);
    color: #fff;
  }

  .tp-booking__btn--back:hover {
    background: #1f1f1f;
  }

  .tp-booking-form {
    display: flex;
    flex-direction: column;
    gap: var(--sp-4);
  }

  .tp-booking-form__field {
    display: flex;
    flex-direction: column;
    gap: var(--sp-1);
  }

  .tp-booking-form__field label {
    font-family: var(--ff-heading);
    font-size: var(--fs-lg);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    display: inline-flex;
    align-items: center;
    gap: var(--sp-2);
  }

/* ═════════════════════════════════════════════════════════════════
   DEFINITIVE SINGLE TOUR PAGE STYLING (100% PARITY WITH PRODUCTION)
   ═════════════════════════════════════════════════════════════════ */

.tp-header {
  padding: 24px 0 16px !important;
  background: transparent !important;
}

.tp-header__title {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 2.8rem !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin: 0 0 8px !important;
  line-height: 1.2 !important;
}

.tp-breadcrumbs {
  font-size: 1.3rem !important;
  color: #64748b !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
  margin-bottom: 24px !important;
}

.tp-breadcrumbs a {
  color: #64748b !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.tp-breadcrumbs a:hover {
  color: #F2B90B !important;
}

.tp-breadcrumbs__sep {
  color: #cbd5e1 !important;
  font-size: 1.4rem !important;
}

.tp-breadcrumbs__current {
  color: #0f172a !important;
  font-weight: 600 !important;
}

/* Layout: 2 Columns (Main 1fr + Sidebar 360px) */
.tp-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 32px !important;
  align-items: start !important;
  padding-bottom: 48px !important;
}

.tp-main {
  min-width: 0 !important;
  width: 100% !important;
}

.tp-sidebar {
  min-width: 0 !important;
  width: 100% !important;
}

.tp-sidebar__sticky {
  position: sticky !important;
  top: 90px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

/* Gallery: 2 Columns (Left Thumbs 140px + Right Main Image 4:3) */
.tp-gallery {
  display: grid !important;
  grid-template-columns: 140px 1fr !important;
  gap: 14px !important;
  margin-bottom: 36px !important;
  align-items: stretch !important;
}

.tp-gallery__thumbs {
  display: grid !important;
  grid-template-rows: repeat(4, 1fr) !important;
  gap: 10px !important;
  height: 100% !important;
  max-height: 460px !important;
}

.tp-gallery__thumb {
  width: 100% !important;
  height: 100% !important;
  min-height: 80px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 2px solid transparent !important;
  cursor: pointer !important;
  padding: 0 !important;
  background: #f1f5f9 !important;
  opacity: 0.6 !important;
  transition: all 0.25s ease !important;
  position: relative !important;
  display: block !important;
}

.tp-gallery__thumb:hover {
  opacity: 0.9 !important;
}

.tp-gallery__thumb--active {
  border-color: #F2B90B !important;
  opacity: 1 !important;
  box-shadow: 0 4px 12px rgba(242, 185, 11, 0.3) !important;
}

.tp-gallery__thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.tp-gallery__thumb--more img {
  filter: brightness(0.35) !important;
}

.tp-gallery__more {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.8) !important;
  pointer-events: none !important;
}

.tp-gallery__main {
  position: relative !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #0f172a0f !important;
  aspect-ratio: 4/3 !important;
  width: 100% !important;
  max-height: 460px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
}

.tp-gallery__big {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: opacity 0.25s ease !important;
}

.tp-gallery__nav {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: rgba(0, 0, 0, 0.55) !important;
  color: #ffffff !important;
  border: none !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  z-index: 5 !important;
}

.tp-gallery__nav:hover {
  background: #F2B90B !important;
  color: #000000 !important;
  transform: translateY(-50%) scale(1.1) !important;
}

.tp-gallery__nav--prev {
  left: 12px !important;
}

.tp-gallery__nav--next {
  right: 12px !important;
}

/* Description Section */
.tp-section {
  margin-bottom: 36px !important;
}

.tp-section__title {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 2.0rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 16px !important;
}

.tp-section__title .material-icons-outlined {
  color: #F2B90B !important;
  font-size: 24px !important;
}

/* Tabs */
.tp-tabs {
  margin-bottom: 40px !important;
}

.tp-tabs__nav {
  display: flex !important;
  gap: 4px !important;
  border-bottom: 2px solid #e2e8f0 !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  margin-bottom: 24px !important;
}

.tp-tabs__nav::-webkit-scrollbar {
  display: none !important;
}

.tp-tabs__btn {
  background: transparent !important;
  border: none !important;
  padding: 12px 20px !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.5rem !important;
  font-weight: 600 !important;
  color: #64748b !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  position: relative !important;
  transition: all 0.2s ease !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
}

.tp-tabs__btn:hover {
  color: #0f172a !important;
}

.tp-tabs__btn--active {
  color: #0f172a !important;
  font-weight: 700 !important;
  border-bottom-color: #F2B90B !important;
}

.tp-tabs__panel {
  display: none !important;
}

.tp-tabs__panel--active {
  display: block !important;
  animation: tpFadeIn 0.3s ease !important;
}

.tp-accordion__header {
  display: none !important;
}

/* Rich Content */
.tp-content {
  color: #334155 !important;
  line-height: 1.75 !important;
  font-size: 1.5rem !important;
}

.tp-content p {
  margin-bottom: 16px !important;
}

.tp-content h2, .tp-content h3, .tp-content h4 {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  color: #b8860b !important;
  margin: 28px 0 14px !important;
  line-height: 1.3 !important;
}

.tp-content h2:first-child, .tp-content h3:first-child, .tp-content h4:first-child {
  margin-top: 0 !important;
}

.tp-content h2 { font-size: 2.2rem !important; font-weight: 700 !important; }
.tp-content h3 { font-size: 1.8rem !important; font-weight: 700 !important; }
.tp-content h4 { font-size: 1.6rem !important; font-weight: 600 !important; }

.tp-content ul {
  list-style: disc !important;
  padding-left: 24px !important;
  margin-bottom: 20px !important;
}

.tp-content ol {
  list-style: decimal !important;
  padding-left: 24px !important;
  margin-bottom: 20px !important;
}

.tp-content li {
  margin-bottom: 8px !important;
}

.tp-content--days h3, .tp-content--days h4 {
  counter-increment: day-counter;
  position: relative !important;
  padding-left: 72px !important;
  min-height: 54px !important;
  display: flex !important;
  align-items: center !important;
  margin-top: 24px !important;
  padding-top: 8px !important;
  border-top: 1px solid #e2e8f0 !important;
}

.tp-content--days h3:first-child, .tp-content--days h4:first-child {
  margin-top: 0 !important;
  border-top: none !important;
}

.tp-content--days h3::before, .tp-content--days h4::before {
  content: 'DAY' !important;
  position: absolute !important;
  left: 0 !important;
  top: 8px !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: #F2B90B !important;
  letter-spacing: 0.1em !important;
}

.tp-content--days h3::after, .tp-content--days h4::after {
  content: counter(day-counter, decimal-leading-zero) !important;
  position: absolute !important;
  left: 0 !important;
  top: 24px !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 2.2rem !important;
  font-weight: 800 !important;
  color: #F2B90B !important;
  line-height: 1 !important;
}

.tp-content--days > p {
  padding-left: 72px !important;
}

/* Sidebar Price Card */
.tp-price-card {
  background: #fdf8e8 !important;
  border: 1px solid #e8d68a !important;
  border-radius: 16px !important;
  padding: 24px !important;
  box-shadow: 0 10px 25px rgba(242, 185, 11, 0.12) !important;
}

.tp-price-card__price {
  text-align: center !important;
  padding-bottom: 16px !important;
  margin-bottom: 20px !important;
  border-bottom: 1px solid #e8d68a !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

.tp-price-card__label {
  font-size: 1.2rem !important;
  color: #78716c !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.tp-price-card__amount {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 3.2rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  line-height: 1.1 !important;
}

.tp-price-card__per {
  font-size: 1.2rem !important;
  color: #78716c !important;
}

.tp-price-card__details {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  margin-bottom: 24px !important;
}

.tp-price-card__row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.tp-price-card__icon {
  color: #F2B90B !important;
  font-size: 22px !important;
  flex-shrink: 0 !important;
}

.tp-price-card__row div {
  display: flex !important;
  flex-direction: column !important;
}

.tp-price-card__row strong {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
}

.tp-price-card__row span:not(.material-icons-outlined) {
  font-size: 1.3rem !important;
  color: #475569 !important;
}

.tp-price-card__actions {
  display: flex !important;
  gap: 10px !important;
}

.tp-btn {
  flex: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 16px !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
  text-align: center !important;
}

.tp-btn--primary {
  background: #F2B90B !important;
  color: #000000 !important;
  border: 2px solid #F2B90B !important;
}

.tp-btn--primary:hover {
  background: #d9a30a !important;
  border-color: #d9a30a !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(242, 185, 11, 0.35) !important;
}

.tp-btn--outline {
  background: transparent !important;
  color: #0f172a !important;
  border: 2px solid #0f172a !important;
}

.tp-btn--outline:hover {
  background: #0f172a !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

.tp-help-card {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 20px !important;
  text-align: center !important;
}

.tp-help-card__icon {
  font-size: 32px !important;
  color: #F2B90B !important;
  display: block !important;
  margin-bottom: 8px !important;
}

.tp-help-card__title {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  margin: 0 0 6px !important;
}

.tp-help-card__text {
  font-size: 1.3rem !important;
  color: #64748b !important;
  margin: 0 0 10px !important;
  line-height: 1.5 !important;
}

.tp-help-card__phone {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  color: #F2B90B !important;
  text-decoration: none !important;
}

.tp-help-card__phone:hover {
  text-decoration: underline !important;
}

/* Responsiveness */
@media (max-width: 1024px) {
  .tp-layout {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  .tp-sidebar__sticky {
    position: static !important;
  }
}

@media (max-width: 768px) {
  .tp-gallery {
    grid-template-columns: 1fr !important;
  }
  .tp-gallery__thumbs {
    grid-template-columns: repeat(4, 1fr) !important;
    grid-template-rows: 1fr !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 4/1 !important;
    order: 2 !important;
  }
  .tp-gallery__thumb {
    min-height: 0 !important;
  }
  .tp-gallery__main {
    order: 1 !important;
    aspect-ratio: 16/10 !important;
    max-height: none !important;
  }
  .tp-tabs__nav {
    display: none !important;
  }
  .tp-tabs__panels {
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }
  .tp-tabs__panel {
    display: block !important;
    border-bottom: 1px solid #e2e8f0 !important;
  }
  .tp-tabs__panel:last-child {
    border-bottom: none !important;
  }
  .tp-accordion__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    font-family: var(--font-heading, "Montserrat", sans-serif) !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    background: #ffffff !important;
    cursor: pointer !important;
  }
  .tp-accordion__header:hover {
    background: #f8fafc !important;
  }
  .tp-tabs__panel:not(.tp-accordion--open) .tp-accordion__body {
    display: none !important;
  }
  .tp-tabs__panel.tp-accordion--open .tp-accordion__body {
    display: block !important;
    padding: 20px !important;
    background: #ffffff !important;
  }
}
/* ═════════════════════════════════════════════════════════════════
   PIXEL-PERFECT SIDEBAR STYLING: PRICE CARD & HELP CARD
   ═════════════════════════════════════════════════════════════════ */

.tp-sidebar__sticky {
  position: sticky !important;
  top: 90px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}

/* 1. Price Card */
.tp-price-card {
  background-color: #fffdf5 !important;
  border: 1px solid #f2e29f !important;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  box-shadow: 0 10px 30px rgba(242, 185, 11, 0.08) !important;
}

.tp-price-card__price {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding-bottom: 20px !important;
  margin-bottom: 22px !important;
  border-bottom: 1px solid #f0dfa0 !important;
}

.tp-price-card__label {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #64748b !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  margin-bottom: 4px !important;
}

.tp-price-card__amount {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 3.8rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  line-height: 1.1 !important;
  margin: 2px 0 4px !important;
}

.tp-price-card__amount p {
  margin: 0 !important;
  display: inline !important;
}

.tp-price-card__per {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.25rem !important;
  font-weight: 500 !important;
  color: #64748b !important;
}

/* Details list inside price card */
.tp-price-card__details {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  margin-bottom: 26px !important;
}

.tp-price-card__row {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.tp-price-card__icon {
  color: #F2B90B !important;
  font-size: 24px !important;
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.tp-price-card__row div {
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
}

.tp-price-card__row strong {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.45rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  line-height: 1.2 !important;
}

.tp-price-card__row span:not(.material-icons-outlined) {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.3rem !important;
  font-weight: 500 !important;
  color: #475569 !important;
  line-height: 1.3 !important;
}

/* Action Buttons */
.tp-price-card__actions {
  display: flex !important;
  gap: 12px !important;
}

.tp-btn {
  flex: 1 !important;
  height: 48px !important;
  border-radius: 10px !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
  text-align: center !important;
  padding: 0 16px !important;
}

.tp-btn--primary {
  background-color: #F2B90B !important;
  color: #000000 !important;
  border: 2px solid #F2B90B !important;
  box-shadow: 0 4px 12px rgba(242, 185, 11, 0.25) !important;
}

.tp-btn--primary:hover {
  background-color: #e0aa08 !important;
  border-color: #e0aa08 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(242, 185, 11, 0.35) !important;
}

.tp-btn--outline {
  background-color: transparent !important;
  color: #0f172a !important;
  border: 2px solid #0f172a !important;
}

.tp-btn--outline:hover {
  background-color: #0f172a !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

/* 2. Help Card */
.tp-help-card {
  background-color: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  text-align: center !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.03) !important;
}

.tp-help-card__icon {
  font-size: 3.4rem !important;
  color: #F2B90B !important;
  display: block !important;
  margin: 0 auto 12px !important;
  line-height: 1 !important;
}

.tp-help-card__title {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.7rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  margin: 0 0 8px !important;
  line-height: 1.2 !important;
}

.tp-help-card__text {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.35rem !important;
  font-weight: 500 !important;
  color: #64748b !important;
  margin: 0 0 14px !important;
  line-height: 1.5 !important;
}

.tp-help-card__phone {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.8rem !important;
  font-weight: 800 !important;
  color: #F2B90B !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.2s ease !important;
}

.tp-help-card__phone:hover {
  text-decoration: underline !important;
  color: #d49f05 !important;
  transform: scale(1.03) !important;
}
/* ═════════════════════════════════════════════════════════════════
   ENQUIRE MODAL / CONSULTAR AHORA (EXACT 100% PARITY)
   ═════════════════════════════════════════════════════════════════ */

.eq-overlay {
  position: fixed !important;
  inset: 0 !important;
  background-color: rgba(0, 0, 0, 0.6) !important;
  backdrop-filter: blur(2px) !important;
  z-index: 99998 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: all 0.3s ease !important;
}

.eq-overlay--open {
  opacity: 1 !important;
  visibility: visible !important;
}

.eq-modal {
  position: fixed !important;
  top: 0 !important;
  right: -520px !important;
  width: 480px !important;
  max-width: 95vw !important;
  height: 100vh !important;
  background: #ffffff !important;
  z-index: 99999 !important;
  overflow-y: auto !important;
  padding: 32px 28px 40px !important;
  box-shadow: -10px 0 40px rgba(0, 0, 0, 0.2) !important;
  transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: flex !important;
  flex-direction: column !important;
}

.eq-modal--open {
  right: 0 !important;
}

.eq-modal__close {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  background: #f1f5f9 !important;
  border: none !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #64748b !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.eq-modal__close:hover {
  background: #e2e8f0 !important;
  color: #0f172a !important;
  transform: scale(1.05) !important;
}

.eq-modal__close .material-icons-outlined {
  font-size: 20px !important;
}

.eq-modal__title {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 2.6rem !important;
  font-weight: 800 !important;
  color: #eab308 !important;
  margin: 0 0 24px !important;
  line-height: 1.2 !important;
  display: block !important;
}

.eq-form {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

.eq-form__row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
}

.eq-form__field {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  min-width: 0 !important;
}

.eq-form__label {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  color: #1f2937 !important;
  display: flex !important;
  align-items: center !important;
}

.eq-form__req {
  color: #ef4444 !important;
  font-weight: 700 !important;
  margin-left: 3px !important;
}

.eq-form__hint {
  font-size: 1.15rem !important;
  color: #9ca3af !important;
  margin-top: 2px !important;
}

.eq-form__input {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.4rem !important;
  color: #111827 !important;
  background-color: #ffffff !important;
  border: 1px solid #d1d5db !important;
  border-radius: 8px !important;
  height: 44px !important;
  padding: 8px 12px !important;
  width: 100% !important;
  outline: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  box-sizing: border-box !important;
}

.eq-form__input:focus {
  border-color: #eab308 !important;
  box-shadow: 0 0 0 3px rgba(234, 179, 8, 0.2) !important;
}

.eq-form__input[readonly] {
  background-color: #f3f4f6 !important;
  color: #6b7280 !important;
  border-color: #e5e7eb !important;
  cursor: default !important;
}

.eq-form__select {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%236b7280' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  padding-right: 32px !important;
  cursor: pointer !important;
}

.eq-form__textarea {
  min-height: 90px !important;
  height: auto !important;
  resize: vertical !important;
  padding: 10px 12px !important;
}

.eq-form__actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 14px !important;
  margin-top: 6px !important;
}

.eq-whatsapp-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.4rem !important;
  font-weight: 600 !important;
  color: #1f2937 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  cursor: pointer !important;
}

.eq-whatsapp-link:hover {
  color: #25d366 !important;
}

.eq-whatsapp-link i,
.eq-whatsapp-link svg {
  color: #25d366 !important;
  font-size: 1.8rem !important;
}

.eq-submit-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  height: 46px !important;
  padding: 0 24px !important;
  background-color: #eab308 !important;
  background: linear-gradient(135deg, #f59e0b 0%, #eab308 100%) !important;
  color: #ffffff !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.35) !important;
  transition: all 0.2s ease !important;
}

.eq-submit-btn:hover {
  background: linear-gradient(135deg, #d97706 0%, #f59e0b 100%) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(245, 158, 11, 0.45) !important;
}

.eq-submit-btn .material-icons-outlined {
  font-size: 1.8rem !important;
}

@media (max-width: 480px) {
  .eq-modal {
    padding: 24px 18px 32px !important;
    width: 100vw !important;
  }
  .eq-form__row {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .eq-submit-btn {
    width: 100% !important;
  }
}
/* ═════════════════════════════════════════════════════════════════
   FAQ ACCORDIONS (EXACT MATCH WITH LIVE SITE / ASTRO)
   ═════════════════════════════════════════════════════════════════ */

.faq-item {
  background-color: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  transition: all 0.25s ease !important;
  margin-bottom: 0 !important;
}

.faq-item:hover {
  border-color: #cbd5e1 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03) !important;
}

.faq-item[open] {
  border-color: #F2B90B !important;
  box-shadow: 0 4px 16px rgba(242, 185, 11, 0.1) !important;
}

.faq-item summary {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 16px 20px !important;
  cursor: pointer !important;
  list-style: none !important;
  gap: 16px !important;
  background: #ffffff !important;
  transition: background-color 0.2s ease !important;
  user-select: none !important;
}

.faq-item summary::-webkit-details-marker {
  display: none !important;
}

.faq-item summary:hover {
  background-color: #f8fafc !important;
}

.faq-item__title {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.55rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  flex: 1 !important;
}

.faq-item summary .icon {
  font-size: 2.2rem !important;
  color: #F2B90B !important;
  flex-shrink: 0 !important;
  transition: transform 0.3s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.faq-item[open] summary .icon {
  transform: rotate(180deg) !important;
}

.faq-item__body {
  padding: 0 20px 18px 20px !important;
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.4rem !important;
  color: #475569 !important;
  line-height: 1.65 !important;
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 14px !important;
}

.faq-item__body p {
  margin: 0 0 10px !important;
}

.faq-item__body p:last-child {
  margin-bottom: 0 !important;
}

.faq-item__body ul {
  margin: 8px 0 8px 20px !important;
  padding: 0 !important;
  list-style-type: disc !important;
}

.faq-item__body li {
  margin-bottom: 6px !important;
}
/* ═════════════════════════════════════════════════════════════════
   ENQUIRE MODAL (100% VISUAL MATCH WITH USER SCREENSHOT)
   ═════════════════════════════════════════════════════════════════ */

.eq-overlay {
  position: fixed !important;
  inset: 0 !important;
  background-color: rgba(0, 0, 0, 0.5) !important;
  z-index: 99998 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: all 0.3s ease !important;
}

.eq-overlay--open {
  opacity: 1 !important;
  visibility: visible !important;
}

.eq-modal {
  position: fixed !important;
  top: 0 !important;
  right: -520px !important;
  width: 480px !important;
  max-width: 100vw !important;
  height: 100vh !important;
  background: #ffffff !important;
  z-index: 99999 !important;
  overflow-y: auto !important;
  padding: 32px 30px 48px !important;
  box-shadow: -8px 0 30px rgba(0, 0, 0, 0.15) !important;
  transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.eq-modal--open {
  right: 0 !important;
}

.eq-modal__close {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  color: #64748b !important;
  padding: 6px !important;
  border-radius: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: color 0.2s ease !important;
}

.eq-modal__close:hover {
  color: #0f172a !important;
}

.eq-modal__close .material-icons-outlined {
  font-size: 2.4rem !important;
}

.eq-modal__title {
  display: block !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 2.6rem !important;
  font-weight: 800 !important;
  color: #d97706 !important;
  color: #df9b00 !important;
  margin: 0 0 24px !important;
  line-height: 1.2 !important;
}

.eq-form {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

.eq-form__row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
}

.eq-form__field {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  min-width: 0 !important;
}

.eq-form__label {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  display: flex !important;
  align-items: center !important;
}

.eq-form__req {
  color: #ef4444 !important;
  font-weight: 700 !important;
  margin-left: 2px !important;
}

.eq-form__hint {
  font-size: 1.15rem !important;
  color: #94a3b8 !important;
  margin-top: 2px !important;
}

.eq-form__input {
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.4rem !important;
  color: #1e293b !important;
  background-color: #ffffff !important;
  border: 1px solid #d1d5db !important;
  border-radius: 6px !important;
  height: 44px !important;
  padding: 8px 12px !important;
  width: 100% !important;
  outline: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  box-sizing: border-box !important;
}

.eq-form__input::placeholder {
  color: #9ca3af !important;
}

.eq-form__input:focus {
  border-color: #df9b00 !important;
  box-shadow: 0 0 0 3px rgba(223, 155, 0, 0.2) !important;
}

.eq-form__input[readonly] {
  background-color: #f1f5f9 !important;
  color: #64748b !important;
  border-color: #e2e8f0 !important;
  cursor: default !important;
}

.eq-form__select {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%2364748b' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  padding-right: 32px !important;
  cursor: pointer !important;
}

.eq-form__textarea {
  min-height: 110px !important;
  height: auto !important;
  resize: vertical !important;
  padding: 10px 12px !important;
}

.eq-form__checkbox {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  font-size: 1.3rem !important;
  color: #475569 !important;
  cursor: pointer !important;
  line-height: 1.45 !important;
  margin-top: 4px !important;
}

.eq-form__checkbox input[type="checkbox"] {
  margin-top: 2px !important;
  accent-color: #df9b00 !important;
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
}

.eq-form__submit {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  background-color: #df9b00 !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 12px 38px !important;
  cursor: pointer !important;
  transition: background 0.2s ease, transform 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: flex-start !important;
  margin-top: 6px !important;
}

.eq-form__submit:hover {
  background-color: #c98a00 !important;
  transform: translateY(-1px) !important;
}

.eq-form__submit:disabled {
  opacity: 0.7 !important;
  cursor: not-allowed !important;
}

.eq-form__alert {
  display: none !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 12px 16px !important;
  border-radius: 6px !important;
  font-size: 1.35rem !important;
  font-family: var(--font-sans, system-ui, sans-serif) !important;
  margin-top: 10px !important;
}

.eq-form__alert.is-visible {
  display: flex !important;
}

.eq-form__alert--success {
  background-color: #ecfdf5 !important;
  color: #065f46 !important;
  border: 1px solid #a7f3d0 !important;
}

.eq-form__alert--error {
  background-color: #fef2f2 !important;
  color: #991b1b !important;
  border: 1px solid #fecaca !important;
}

@media (max-width: 480px) {
  .eq-modal {
    padding: 24px 20px 36px !important;
    width: 100vw !important;
  }
  .eq-form__row {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .eq-form__submit {
    width: 100% !important;
  }
}
/* ═════════════════════════════════════════════════════════════════
   SITE FOOTER (100% PARITY WITH LIVE ASTRO PRODUCTION)
   ═════════════════════════════════════════════════════════════════ */

.site-footer {
  background-color: #1a1a1a !important;
  color: #999999 !important;
  padding-top: 56px !important;
  font-family: var(--font-sans, system-ui, sans-serif) !important;
}

.site-footer .container {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.footer__logo img {
  height: 40px !important;
  width: auto !important;
  filter: brightness(0) invert(1) !important;
  display: block !important;
}

.footer__desc {
  font-size: 1.35rem !important;
  line-height: 1.6 !important;
  color: #a0a0a0 !important;
  margin: 0 0 20px 0 !important;
}

.footer__newsletter-title {
  display: block !important;
  color: #ffffff !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  margin-bottom: 4px !important;
}

.footer__newsletter-sub {
  font-size: 1.2rem !important;
  color: #a0a0a0 !important;
  margin: 0 0 10px 0 !important;
}

.footer__form {
  display: flex !important;
  max-width: 280px !important;
}

.footer__input {
  flex: 1 !important;
  padding: 8px 12px !important;
  background-color: #2a2a2a !important;
  border: 1px solid #444444 !important;
  color: #ffffff !important;
  font-size: 1.3rem !important;
  border-radius: 6px 0 0 6px !important;
  outline: none !important;
  transition: border-color 0.2s ease !important;
  box-sizing: border-box !important;
}

.footer__input:focus {
  border-color: #F2B90B !important;
}

.footer__submit {
  padding: 8px 16px !important;
  background-color: #F2B90B !important;
  color: #0f172a !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-weight: 700 !important;
  font-size: 1.3rem !important;
  border: none !important;
  border-radius: 0 6px 6px 0 !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
}

.footer__submit:hover {
  background-color: #df9b00 !important;
}

.footer__social {
  display: flex !important;
  gap: 8px !important;
  margin-top: 16px !important;
}

.footer__social-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background-color: #333333 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #b0b0b0 !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

.footer__social-icon:hover {
  background-color: #F2B90B !important;
  color: #0f172a !important;
  transform: translateY(-2px) !important;
}

.footer__title {
  display: block !important;
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  font-size: 1.6rem !important;
  margin-bottom: 20px !important;
}

.footer__links {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.footer__links li {
  margin: 0 !important;
}

.footer__links a {
  font-size: 1.35rem !important;
  color: #a0a0a0 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  display: inline-block !important;
}

.footer__links a:hover {
  color: #F2B90B !important;
  transform: translateX(2px) !important;
}

.footer__contact-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.footer__contact-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  font-size: 1.35rem !important;
  color: #a0a0a0 !important;
}

.footer__contact-item .material-icons-outlined {
  color: #F2B90B !important;
  font-size: 1.8rem !important;
  margin-top: 1px !important;
  flex-shrink: 0 !important;
}

.footer__contact-item a {
  color: #a0a0a0 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.footer__contact-item a:hover {
  color: #F2B90B !important;
}

.footer__bottom {
  margin-top: 48px !important;
  border-top: 1px solid #333333 !important;
  padding: 20px 0 !important;
}

.footer__bottom-inner {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  font-size: 1.25rem !important;
  color: #a0a0a0 !important;
  flex-wrap: wrap !important;
}

.footer__bottom-inner p {
  margin: 0 !important;
}

.footer__bottom a {
  color: #a0a0a0 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.footer__bottom a:hover {
  color: #F2B90B !important;
}
/* ═════════════════════════════════════════════════════════════════
   PAX STEPPER & DYNAMIC CALCULATION CARD (EXACT 1:1 MATCH)
   ═════════════════════════════════════════════════════════════════ */

.tp-pax-section {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 18px 0 20px !important;
  border-top: 1px dashed #e8d68a !important;
  padding-top: 18px !important;
}

.tp-pax-control {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}

.tp-pax-label {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.55rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
}

.tp-pax-stepper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background-color: #ffffff !important;
  border: 1px solid #e2dcd2 !important;
  border-radius: 50px !important;
  padding: 4px 10px !important;
}

.tp-pax-btn {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background-color: #f5f5f4 !important;
  border: none !important;
  color: #44403c !important;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  line-height: 1 !important;
  padding: 0 !important;
}

.tp-pax-btn:hover {
  background-color: #e7e5e4 !important;
  color: #1c1917 !important;
  transform: scale(1.05) !important;
}

.tp-pax-count {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  color: #1c1917 !important;
  min-width: 24px !important;
  text-align: center !important;
}

/* Inner calculation white card */
.tp-calc-card {
  background-color: #ffffff !important;
  border: 1px solid #e2dcd2 !important;
  border-radius: 12px !important;
  padding: 16px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02) !important;
}

.tp-calc-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}

.tp-calc-row--main .tp-calc-label {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.5rem !important;
  font-weight: 600 !important;
  color: #475569 !important;
}

.tp-calc-row--main .tp-calc-total {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 2.6rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}

.tp-calc-row--sub .tp-calc-sublabel,
.tp-calc-row--sub .tp-calc-per-person {
  font-size: 1.25rem !important;
  color: #64748b !important;
  font-weight: 500 !important;
}
/* ═════════════════════════════════════════════════════════════════
   POST CARD & BLOG SWIPER (100% PARITY WITH ASTRO & DESIGNS)
   ═════════════════════════════════════════════════════════════════ */

.post-card {
  display: flex !important;
  flex-direction: column !important;
  background-color: #ffffff !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  text-decoration: none !important;
  color: inherit !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(0, 0, 0, 0.04) !important;
}

.post-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12) !important;
}

.post-card__img-wrap {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  overflow: hidden !important;
  position: relative !important;
  background-color: #f1f5f9 !important;
}

.post-card__img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.4s ease !important;
}

.post-card:hover .post-card__img {
  transform: scale(1.05) !important;
}

.post-card__img-placeholder {
  width: 100% !important;
  height: 100% !important;
  background-color: #e2e8f0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #94a3b8 !important;
}

.post-card__img-placeholder .material-icons-outlined {
  font-size: 4rem !important;
}

.post-card__body {
  padding: 20px 22px 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  flex: 1 !important;
}

.post-card__date {
  font-size: 1.2rem !important;
  color: #94a3b8 !important;
  font-weight: 500 !important;
  display: block !important;
  margin-bottom: 2px !important;
  text-transform: capitalize !important;
}

.post-card__title {
  font-family: var(--font-heading, "Montserrat", sans-serif) !important;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  transition: color 0.2s ease !important;
}

.post-card:hover .post-card__title {
  color: #df9b00 !important;
}

.post-card__excerpt {
  font-size: 1.35rem !important;
  color: #64748b !important;
  line-height: 1.5 !important;
  margin: 4px 0 12px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.post-card__readmore {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  color: #df9b00 !important;
  margin-top: auto !important;
  transition: gap 0.2s ease, color 0.2s ease !important;
}

.post-card__readmore .material-icons-outlined {
  font-size: 1.6rem !important;
  transition: transform 0.2s ease !important;
}

.post-card:hover .post-card__readmore .material-icons-outlined {
  transform: translateX(4px) !important;
}

/* Swiper navigation buttons */
.blog-swiper .swiper-button-prev,
.blog-swiper .swiper-button-next {
  width: 44px !important;
  height: 44px !important;
  background-color: #ffffff !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
  color: #0f172a !important;
  z-index: 10 !important;
  transition: all 0.2s ease !important;
}

.blog-swiper .swiper-button-prev:after,
.blog-swiper .swiper-button-next:after {
  font-size: 1.5rem !important;
  font-weight: 800 !important;
}

.blog-swiper .swiper-button-prev:hover,
.blog-swiper .swiper-button-next:hover {
  background-color: #F2B90B !important;
  color: #0f172a !important;
  transform: scale(1.08) !important;
}

.blog-swiper-pagination .swiper-pagination-bullet {
  width: 10px !important;
  height: 10px !important;
  background: #cbd5e1 !important;
  opacity: 1 !important;
  transition: all 0.25s ease !important;
}

.blog-swiper-pagination .swiper-pagination-bullet-active {
  width: 26px !important;
  border-radius: 6px !important;
  background: #F2B90B !important;
}

/* ═════════════════════════════════════════════════════════════════
   BLOG SINGLE PAGE (100% PARITY WITH ASTRO .bp-*) 
   ═════════════════════════════════════════════════════════════════ */

    flex-wrap: wrap;
  }

  .bp-breadcrumbs a {
    color: var(--c-text-light);
    text-decoration: none;
    transition: color var(--transition-fast);
  }

  .bp-breadcrumbs a:hover {
    color: var(--c-primary-dark);
  }

  .bp-breadcrumbs__sep {
    font-family: 'Material Icons Outlined';
    font-size: 1.6rem;
    color: var(--c-text-muted);
    vertical-align: middle;
  }

  .bp-breadcrumbs__current {
    color: var(--c-text);
    font-weight: var(--fw-medium);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 340px;
  }

  /* Header */
  .bp-header {
    padding: var(--sp-8) 0 var(--sp-5);
  }

  .bp-header__cat {
    display: inline-block;
    background: var(--c-primary);
    color: var(--c-dark);
    font-family: var(--ff-heading);
    font-size: var(--fs-xs);
    font-weight: var(--fw-bold);
    padding: var(--sp-1) var(--sp-4);
    border-radius: var(--radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: var(--sp-4);
  }

  .bp-header__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-3xl);
    font-weight: var(--fw-extrabold);
    color: var(--c-dark);
    line-height: var(--lh-tight);
    margin-bottom: var(--sp-3);
  }

  .bp-header__meta {
    display: flex;
    align-items: center;
    gap: var(--sp-2);
    font-size: var(--fs-sm);
    color: var(--c-text-light);
    flex-wrap: wrap;
  }

  .bp-header__avatar {
    width: 32px;
    height: 32px;
    border-radius: var(--radius-full);
    object-fit: cover;
  }

  .bp-header__author {
    font-weight: var(--fw-semibold);
    color: var(--c-text);
  }

  .bp-header__dot {
    color: var(--c-text-muted);
  }

  .bp-header__icon {
    font-size: 1.6rem !important;
    color: var(--c-text-muted);
  }

  /* Featured Image */
  .bp-featured {
    margin-bottom: var(--sp-8);
  }

  .bp-featured__img {
    width: 100%;
    max-height: 500px;
    object-fit: cover;
    border-radius: var(--radius-lg);
  }

  /* Layout: Content left, Sidebar right */
  .bp-layout {
    display: grid;
    grid-template-columns: 70% 30%;
    gap: var(--sp-10);
    padding-bottom: var(--sp-12);
    align-items: start;
  }

  /* Article */
  .bp-article {
    min-width: 0;
  }

  /* Sidebar debe estirarse a la altura de la fila para que el sticky funcione */
  .bp-sidebar {
    align-self: stretch;
  }

  /* Inline TOC */
  .bp-toc {
    background: var(--c-white);
    border-radius: var(--radius-lg);
    border: 1px solid var(--c-border);
    margin-bottom: var(--sp-8);
    overflow: hidden;
  }

  .bp-toc__toggle {
    display: flex;
    align-items: center;
    gap: var(--sp-2);
    width: 100%;
    padding: var(--sp-4) var(--sp-5);
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--ff-heading);
    font-size: var(--fs-base);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
  }

  .bp-toc__toggle .material-icons-outlined {
    font-size: 2.2rem;
    color: var(--c-primary);
  }

  .bp-toc__toggle-label {
    flex: 1;
    text-align: left;
  }

  .bp-toc__chevron {
    transition: transform var(--transition);
  }

  .bp-toc__nav {
    display: none;
    flex-direction: column;
    padding: 0 var(--sp-5) var(--sp-4);
    counter-reset: toc-item;
  }

  .bp-toc.is-open .bp-toc__nav {
    display: flex;
  }

  .bp-toc__link {
    font-size: var(--fs-sm);
    color: var(--c-text-light);
    text-decoration: none;
    padding: var(--sp-2) var(--sp-3);
    border-left: 2px solid var(--c-border);
    transition: all var(--transition-fast);
    line-height: var(--lh-relaxed);
  }

  .bp-toc__link::before {
    counter-increment: toc-item;
    content: counter(toc-item) ". ";
    font-weight: var(--fw-semibold);
    color: var(--c-dark);
  }

  .bp-toc__link:hover {
    color: var(--c-dark);
    border-left-color: var(--c-primary);
  }

  .bp-toc__link--active {
    color: var(--c-primary-dark);
    border-left-color: var(--c-primary);
    font-weight: var(--fw-semibold);
  }

  .bp-toc__link--sub {
    padding-left: var(--sp-8);
    font-size: var(--fs-xs);
  }

  /* Content */
  .bp-content {
    font-family: var(--ff-body);
    font-size: var(--fs-md);
    color: var(--c-text);
    line-height: 1.85;
  }

  .bp-content p {
    margin-bottom: 1.5em;
  }

  .bp-postlist p {
    margin-bottom: 0;
  }

  .bp-postlist__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-lg);
    font-weight: var(--fw-semibold);
    color: var(--c-dark);
    margin: 0 0 var(--sp-2);
    padding: 0;
    scroll-margin-top: 80px;
  }

  .bp-question-title {
    font-family: var(--ff-heading);
    font-size: var(--fs-xl);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    line-height: var(--lh-tight);
    margin: var(--sp-5) 0 var(--sp-2);
    padding: 0;
  }

  .bp-question-title.bp-faq-title {
    margin-top: var(--sp-5);
    margin-bottom: var(--sp-7);
    padding-bottom: 24px !important;
  }

  .bp-content h2 {
    font-family: var(--ff-heading);
    font-size: var(--fs-xl);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    margin: 2em 0 0.8em;
    line-height: var(--lh-tight);
    scroll-margin-top: 80px;
  }

  .bp-blog-page .bp-content h2 {
    margin: 0;
  }

  .bp-blog-page .bp-content h2.bp-faq-title {
    margin: 0 0 var(--sp-7);
  }

  .bp-content h3 {
    font-family: var(--ff-heading);
    font-size: var(--fs-lg);
    font-weight: var(--fw-semibold);
    color: var(--c-dark);
    margin: 1.5em 0 0.6em;
    scroll-margin-top: 80px;
  }

  .bp-content h4 {
    font-family: var(--ff-heading);
    font-size: var(--fs-base);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    margin: 1.2em 0 0.5em;
  }

  .bp-content .faq-item__title {
    font-size: var(--fs-md);
    font-weight: var(--fw-semibold);
    color: var(--c-dark);
    line-height: var(--lh-normal);
    margin: 0;
  }

  .bp-content img {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: var(--radius);
    display: block;
    margin: var(--sp-6) auto;
  }

  .bp-content .wp-caption,
  .bp-content .alignnone,
  .bp-content .aligncenter {
    width: auto !important;
    max-width: 100% !important;
    margin: var(--sp-6) auto;
    text-align: center;
  }

  .bp-content figcaption.wp-caption-text {
    margin-top: var(--sp-3);
    font-size: var(--fs-sm);
    color: var(--c-text-light);
    line-height: var(--lh-normal);
    font-style: normal;
  }

  .bp-content a {
    color: var(--c-primary-dark);
    text-decoration: underline;
    text-underline-offset: 2px;
  }

  .bp-content a:hover {
    color: var(--c-primary);
  }

  .bp-content ul,
  .bp-content ol {
    padding-left: var(--sp-6);
    margin-bottom: 1.5em;
  }

  .bp-content ul {
    list-style: disc;
  }

  .bp-content ol {
    list-style: decimal;
  }

  .bp-content li {
    margin-bottom: 0.5em;
  }

  .bp-content blockquote {
    border-left: 4px solid var(--c-primary);
    padding: var(--sp-4) var(--sp-5);
    margin: var(--sp-6) 0;
    background: var(--c-bg-alt);
    border-radius: 0 var(--radius) var(--radius) 0;
    font-style: italic;
    color: var(--c-text-light);
  }

  .bp-content table {
    width: 100%;
    border-collapse: collapse;
    margin: var(--sp-6) 0;
    font-size: var(--fs-sm);
  }

  .bp-content th,
  .bp-content td {
    padding: var(--sp-3) var(--sp-4);
    border: 1px solid var(--c-border);
    text-align: left;
  }

  .bp-content th {
    background: var(--c-bg-alt);
    font-weight: var(--fw-bold);
  }

  .bp-content pre {
    background: #1e1e2e;
    color: #cdd6f4;
    padding: var(--sp-5);
    border-radius: var(--radius);
    overflow-x: auto;
    margin: var(--sp-6) 0;
    font-size: var(--fs-sm);
  }

  .bp-content code {
    background: var(--c-bg-alt);
    padding: 2px 6px;
    border-radius: var(--radius-sm);
    font-size: 0.9em;
  }

  .bp-content pre code {
    background: none;
    padding: 0;
  }

  /* Share */
  .bp-share {
    display: flex;
    align-items: center;
    gap: var(--sp-4);
    padding: var(--sp-6) 0;
    border-top: 1px solid var(--c-border);
    margin-top: var(--sp-8);
  }

  .bp-share__label {
    font-family: var(--ff-heading);
    font-size: var(--fs-sm);
    font-weight: var(--fw-semibold);
    color: var(--c-text);
  }

  .bp-share__btns {
    display: flex;
    gap: var(--sp-2);
  }

  .bp-share__btn {
    width: 38px;
    height: 38px;
    border-radius: var(--radius-full);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--c-white);
    text-decoration: none;
    font-size: var(--fs-sm);
    border: none;
    cursor: pointer;
    transition: transform var(--transition-fast), opacity var(--transition-fast);
  }

  .bp-share__btn:hover {
    transform: scale(1.1);
    opacity: 0.9;
  }

  .bp-share__btn--fb {
    background: #1877f2;
  }

  .bp-share__btn--tw {
    background: #000;
  }

  .bp-share__btn--wa {
    background: #25d366;
  }

  .bp-share__btn--copy {
    background: var(--c-text-muted);
  }

  .bp-share__btn--copy .material-icons-outlined {
    font-size: 1.8rem;
  }

  /* Author Card */
  .bp-author-card {
    background: var(--c-bg-alt);
    border-radius: var(--radius-lg);
    padding: var(--sp-5) var(--sp-6);
    margin-top: var(--sp-4);
  }

  .bp-author-card__label {
    font-size: var(--fs-xs);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--c-text-muted);
    display: block;
    margin-bottom: var(--sp-3);
  }

  .bp-author-card__info {
    display: flex;
    align-items: center;
    gap: var(--sp-4);
  }

  .bp-author-card__avatar {
    width: 48px;
    height: 48px;
    border-radius: var(--radius-full);
    object-fit: cover;
  }

  .bp-author-card__name {
    font-family: var(--ff-heading);
    font-size: var(--fs-base);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
  }

  /* Prev / Next */
  .bp-prevnext {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--sp-4);
    padding-top: var(--sp-6);
    border-top: 1px solid var(--c-border);
    margin-top: var(--sp-6);
  }

  .bp-prevnext__link {
    display: flex;
    align-items: center;
    gap: var(--sp-3);
    text-decoration: none;
    color: inherit;
    padding: var(--sp-4) var(--sp-5);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    transition: all var(--transition-fast);
  }

  .bp-prevnext__link:hover {
    border-color: var(--c-primary);
    background: #fffdf5;
  }

  .bp-prevnext__link--next {
    text-align: right;
    justify-content: flex-end;
  }

  .bp-prevnext__link .material-icons-outlined {
    font-size: 2.2rem;
    color: var(--c-primary);
    flex-shrink: 0;
  }

  .bp-prevnext__label {
    display: block;
    font-size: var(--fs-xs);
    color: var(--c-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 2px;
  }

  .bp-prevnext__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-sm);
    font-weight: var(--fw-semibold);
    color: var(--c-dark);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* ── Sidebar RIGHT ── */
  .bp-sidebar__sticky {
    position: sticky;
    top: 60px;
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  .bp-sidebar__sticky .bp-widget:first-child {
    margin-top: 0;
  }

  /* Widget base */
  .bp-widget {
    background: var(--c-white);
    border: 1px solid var(--c-border);
    border-radius: var(--radius-lg);
    padding: var(--sp-5);
  }

  .bp-widget__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-sm);
    font-weight: var(--fw-bold);
    color: var(--c-dark);
    margin-bottom: var(--sp-4);
    display: flex;
    align-items: center;
    gap: var(--sp-2);
  }

  .bp-widget__title .material-icons-outlined {
    font-size: 2rem;
    color: var(--c-primary);
  }

  /* Search Widget */
  .bp-search {
    display: flex;
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
  }

  .bp-search__input {
    flex: 1;
    padding: var(--sp-3) var(--sp-4);
    border: none;
    font-size: var(--fs-sm);
    font-family: var(--ff-body);
    color: var(--c-text);
    background: var(--c-white);
    outline: none;
  }

  .bp-search__input::placeholder {
    color: var(--c-text-muted);
  }

  .bp-search__btn {
    padding: var(--sp-3);
    background: var(--c-primary);
    border: none;
    cursor: pointer;
    color: var(--c-dark);
    display: flex;
    align-items: center;
  }

  .bp-search__btn .material-icons-outlined {
    font-size: 2rem;
  }

  .bp-search__btn:hover {
    background: var(--c-primary-dark);
  }

  .bp-search-results {
    display: none;
    margin-top: var(--sp-3);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    background: var(--c-white);
    max-height: 280px;
    overflow: auto;
  }

  .bp-search-results.is-open {
    display: block;
  }

  .bp-search-results__item {
    display: block;
    padding: var(--sp-3) var(--sp-4);
    color: var(--c-text);
    text-decoration: none;
    border-bottom: 1px solid var(--c-border-light);
    font-size: var(--fs-sm);
  }

  .bp-search-results__item:last-child {
    border-bottom: none;
  }

  .bp-search-results__item:hover {
    background: var(--c-bg-alt);
    color: var(--c-primary-dark);
  }

  .bp-search-results__status {
    padding: var(--sp-3) var(--sp-4);
    color: var(--c-text-light);
    font-size: var(--fs-xs);
  }

  /* Recommended Posts Widget */
  .bp-widget-posts {
    display: flex;
    flex-direction: column;
    gap: var(--sp-4);
  }

  .bp-widget-posts__item {
    display: flex;
    gap: var(--sp-3);
    text-decoration: none;
    color: inherit;
    transition: background var(--transition-fast);
    padding: var(--sp-2);
    margin: calc(-1 * var(--sp-2));
    border-radius: var(--radius-sm);
  }

  .bp-widget-posts__item:hover {
    background: var(--c-bg-alt);
  }

  .bp-widget-posts__img {
    width: 72px;
    height: 54px;
    object-fit: cover;
    border-radius: var(--radius-sm);
    flex-shrink: 0;
  }

  .bp-widget-posts__info {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
  }

  .bp-widget-posts__title {
    font-size: var(--fs-xs);
    font-weight: var(--fw-semibold);
    color: var(--c-text);
    line-height: var(--lh-tight);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .bp-widget-posts__date {
    font-size: 1.1rem;
    color: var(--c-text-muted);
  }

  /* Categories Widget */
  .bp-widget-cats {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .bp-widget-cats li {
    border-bottom: 1px solid var(--c-border-light);
  }

  .bp-widget-cats li:last-child {
    border-bottom: none;
  }

  .bp-widget-cats__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--sp-3) 0;
    text-decoration: none;
    color: var(--c-text);
    font-size: var(--fs-sm);
    transition: color var(--transition-fast);
  }

  .bp-widget-cats__link:hover {
    color: var(--c-primary-dark);
  }

  .bp-widget-cats__count {
    background: var(--c-bg-alt);
    padding: 2px var(--sp-2);
    border-radius: var(--radius-sm);
    font-size: var(--fs-xs);
    color: var(--c-text-muted);
    font-weight: var(--fw-semibold);
  }

  /* Tags Widget */
  .bp-widget-tags {
    display: flex;
    flex-wrap: wrap;
    gap: var(--sp-2);
  }

  /* ===============================================================
     TRANSPORTE PRIVADO & PRICING TABLE STYLES
     =============================================================== */
  .tp-transfer-hero {
    position: relative;
    border-radius: var(--radius-xl, 1.6rem);
    overflow: hidden;
    min-height: 28rem;
    display: flex;
    align-items: flex-end;
    box-shadow: var(--shadow-lg);
  }

  .tp-transfer-hero__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .tp-transfer-hero__overlay {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: var(--sp-8) var(--sp-6);
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 100%);
    color: var(--c-white, #fff);
  }

  .tp-transfer-hero__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl, 2.4rem);
    font-weight: var(--fw-bold, 700);
    color: #fff;
    margin-bottom: var(--sp-2);
    text-shadow: 0 2px 4px rgba(0,0,0,0.5);
  }

  .tp-transfer-hero__desc {
    font-size: var(--fs-base, 1.4rem);
    color: rgba(255,255,255,0.92);
    max-width: 72rem;
    line-height: var(--lh-relaxed);
    margin: 0;
  }

  /* Benefits Grid */
  .tp-benefit-card {
    background: var(--c-white, #fff);
    border: 1px solid var(--c-border-light, #e2e8f0);
    border-radius: var(--radius-lg, 1.2rem);
    padding: var(--sp-6);
    text-align: center;
    transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
    box-shadow: var(--shadow-sm);
  }

  .tp-benefit-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--c-primary, #f2b90b);
  }

  .tp-benefit-card__icon {
    width: 5.2rem;
    height: 5.2rem;
    margin: 0 auto var(--sp-4);
    background: #fef3c7;
    color: #d97706;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.8rem;
  }

  .tp-benefit-card__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-base, 1.5rem);
    font-weight: var(--fw-bold, 700);
    color: var(--c-dark, #1e293b);
    margin-bottom: var(--sp-2);
  }

  .tp-benefit-card__desc {
    font-size: var(--fs-xs, 1.3rem);
    color: var(--c-text-light, #64748b);
    line-height: var(--lh-relaxed);
    margin: 0;
  }

  /* Pricing Table Section */
  .tp-table-section {
    margin: var(--sp-12) 0;
  }

  .tp-table-header {
    text-align: center;
    margin-bottom: var(--sp-8);
  }

  .tp-table-header__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl, 2.2rem);
    font-weight: var(--fw-bold, 700);
    color: var(--c-dark, #1e293b);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--sp-2);
    margin-bottom: var(--sp-2);
  }

  .tp-table-header__subtitle {
    font-size: var(--fs-base, 1.4rem);
    color: var(--c-text-light, #64748b);
    margin: 0;
  }

  /* Table Filter Tabs */
  .tp-table-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--sp-2);
    margin-bottom: var(--sp-6);
  }

  .tp-table-tab {
    padding: var(--sp-2) var(--sp-5);
    font-family: var(--ff-heading);
    font-size: var(--fs-sm, 1.35rem);
    font-weight: var(--fw-semibold, 600);
    color: var(--c-text-light, #64748b);
    background: var(--c-white, #fff);
    border: 1px solid var(--c-border-light, #e2e8f0);
    border-radius: 999px;
    cursor: pointer;
    transition: all var(--transition);
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
  }

  .tp-table-tab:hover {
    background: #f8fafc;
    color: var(--c-dark, #1e293b);
    border-color: #cbd5e1;
  }

  .tp-table-tab--active {
    background: var(--c-primary, #f2b90b) !important;
    color: #1e293b !important;
    border-color: var(--c-primary, #f2b90b) !important;
    box-shadow: 0 4px 12px rgba(242, 185, 11, 0.35);
  }

  /* Pricing Table Container */
  .tp-table-card {
    background: var(--c-white, #fff);
    border-radius: var(--radius-xl, 1.6rem);
    border: 1px solid var(--c-border-light, #e2e8f0);
    box-shadow: var(--shadow-md);
    overflow: hidden;
  }

  .tp-table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .tp-pricing-table {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--fs-sm, 1.35rem);
    text-align: left;
  }

  .tp-pricing-table thead th {
    background: #0f172a;
    color: #f8fafc;
    font-family: var(--ff-heading);
    font-weight: var(--fw-bold, 700);
    padding: var(--sp-4) var(--sp-5);
    white-space: nowrap;
    border-bottom: 2px solid var(--c-primary, #f2b90b);
  }

  .tp-pricing-table thead th .vehicle-capacity {
    display: block;
    font-size: 1.1rem;
    font-weight: 400;
    color: #94a3b8;
    margin-top: 2px;
  }

  .tp-pricing-table tbody tr {
    border-bottom: 1px solid #f1f5f9;
    transition: background 0.2s ease, transform 0.2s ease;
  }

  .tp-pricing-table tbody tr:nth-child(even) {
    background: #f8fafc;
  }

  .tp-pricing-table tbody tr:hover {
    background: #fefce8;
  }

  .tp-pricing-table td {
    padding: var(--sp-4) var(--sp-5);
    vertical-align: middle;
  }

  .tp-route-info {
    display: flex;
    align-items: center;
    gap: var(--sp-3);
  }

  .tp-route-icon {
    width: 3.6rem;
    height: 3.6rem;
    border-radius: 0.8rem;
    background: #f1f5f9;
    color: var(--c-primary-dark, #b45309);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    flex-shrink: 0;
  }

  .tp-route-name {
    font-family: var(--ff-heading);
    font-weight: var(--fw-semibold, 600);
    color: var(--c-dark, #0f172a);
    font-size: 1.4rem;
  }

  .tp-route-cat {
    display: inline-block;
    font-size: 1.1rem;
    color: #64748b;
    margin-top: 2px;
  }

  .tp-price-cell {
    font-family: var(--ff-heading);
    font-weight: var(--fw-bold, 700);
    font-size: 1.5rem;
    color: #0f172a;
    white-space: nowrap;
  }

  .tp-price-cell--highlight {
    color: #b45309;
  }

  .tp-price-cell small {
    font-size: 1.1rem;
    color: #94a3b8;
    font-weight: 400;
    margin-left: 2px;
  }

  .tp-btn-book {
    padding: 0.6rem 1.4rem;
    font-family: var(--ff-heading);
    font-size: 1.25rem;
    font-weight: var(--fw-bold, 700);
    color: #0f172a;
    background: linear-gradient(135deg, #f2b90b 0%, #fcd34d 100%);
    border: none;
    border-radius: 999px;
    cursor: pointer;
    transition: transform var(--transition), box-shadow var(--transition);
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    white-space: nowrap;
    text-decoration: none;
  }

  .tp-btn-book:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 14px rgba(242, 185, 11, 0.45);
    background: #f2b90b;
  }

  /* Booking Calculator Card */
  .tp-booking-box {
    background: var(--c-white, #fff);
    border: 1px solid var(--c-border-light, #e2e8f0);
    border-radius: var(--radius-xl, 1.6rem);
    padding: var(--sp-8);
    box-shadow: var(--shadow-lg);
    margin: var(--sp-12) 0;
  }

  .tp-booking-box__header {
    text-align: center;
    margin-bottom: var(--sp-8);
  }

  .tp-booking-box__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl, 2.2rem);
    font-weight: var(--fw-bold, 700);
    color: var(--c-dark, #1e293b);
    margin-bottom: var(--sp-2);
  }

  .tp-booking-box__subtitle {
    font-size: var(--fs-base, 1.4rem);
    color: var(--c-text-light, #64748b);
    margin: 0;
  }

  /* Stepper */
  .tp-stepper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--sp-4);
    margin-bottom: var(--sp-8);
    max-width: 54rem;
    margin-left: auto;
    margin-right: auto;
  }

  .tp-stepper__item {
    display: flex;
    align-items: center;
    gap: var(--sp-2);
    opacity: 0.5;
    transition: opacity var(--transition);
  }

  .tp-stepper__item--active {
    opacity: 1;
  }

  .tp-stepper__num {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    background: #e2e8f0;
    color: #475569;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--ff-heading);
    font-weight: var(--fw-bold);
    font-size: 1.4rem;
  }

  .tp-stepper__item--active .tp-stepper__num {
    background: var(--c-primary, #f2b90b);
    color: #1e293b;
    box-shadow: 0 2px 8px rgba(242, 185, 11, 0.4);
  }

  .tp-stepper__label {
    font-family: var(--ff-heading);
    font-size: 1.3rem;
    font-weight: var(--fw-semibold);
    color: var(--c-dark, #1e293b);
  }

  .tp-stepper__line {
    flex: 1;
    height: 2px;
    background: #e2e8f0;
  }

  /* Booking Form Card */
  .tp-booking__card {
    animation: tpFadeIn 0.3s ease;
  }

  .tp-booking__card--hidden {
    display: none !important;
  }

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

  .tp-booking__grid {
    display: grid;
    grid-template-columns: 1fr 28rem;
    gap: var(--sp-8);
    align-items: start;
  }

  @media (max-width: 900px) {
    .tp-booking__grid {
      grid-template-columns: 1fr;
    }
  }

  .tp-booking__fields {
    display: flex;
    flex-direction: column;
    gap: var(--sp-4);
  }

  .tp-booking__label {
    font-family: var(--ff-heading);
    font-size: 1.35rem;
    font-weight: var(--fw-semibold);
    color: var(--c-dark, #1e293b);
    display: flex;
    align-items: center;
    gap: 0.6rem;
  }

  .tp-booking__label-icon {
    font-size: 1.8rem;
    color: var(--c-primary, #f2b90b);
  }

  .tp-booking__select,
  .tp-booking-form input,
  .tp-booking-form textarea {
    width: 100%;
    padding: var(--sp-3) var(--sp-4);
    background: #f8fafc;
    border: 1.5px solid var(--c-border-light, #cbd5e1);
    border-radius: var(--radius-lg, 0.8rem);
    font-size: 1.4rem;
    color: #1e293b;
    outline: none;
    transition: border-color var(--transition), box-shadow var(--transition);
  }

  .tp-booking__select:focus,
  .tp-booking-form input:focus,
  .tp-booking-form textarea:focus {
    border-color: var(--c-primary, #f2b90b);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(242, 185, 11, 0.2);
  }

  .tp-booking__image-box {
    border-radius: var(--radius-lg, 1rem);
    overflow: hidden;
    height: 18rem;
    background: #f1f5f9;
    box-shadow: var(--shadow-sm);
  }

  .tp-booking__vehicle-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .tp-booking__total {
    background: linear-gradient(145deg, #0f172a 0%, #1e293b 100%);
    border-radius: var(--radius-xl, 1.4rem);
    padding: var(--sp-8) var(--sp-6);
    color: #fff;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shadow-lg);
  }

  .tp-booking__total span {
    font-size: 1.3rem;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.06em;
  }

  .tp-booking__total strong {
    font-family: var(--ff-heading);
    font-size: 4.4rem;
    font-weight: var(--fw-extrabold);
    color: var(--c-primary, #f2b90b);
    line-height: 1.1;
    margin: var(--sp-2) 0;
  }

  .tp-booking__total small {
    font-size: 1.4rem;
    color: #cbd5e1;
    font-weight: var(--fw-semibold);
  }

  .tp-booking__actions {
    display: flex;
    justify-content: flex-end;
    gap: var(--sp-4);
    margin-top: var(--sp-8);
  }

  .tp-booking__btn {
    padding: var(--sp-3) var(--sp-8);
    font-family: var(--ff-heading);
    font-size: 1.45rem;
    font-weight: var(--fw-bold);
    border-radius: 999px;
    cursor: pointer;
    border: none;
    transition: all var(--transition);
    display: inline-flex;
    align-items: center;
    gap: var(--sp-2);
  }

  .tp-booking__btn--primary {
    background: var(--c-primary, #f2b90b);
    color: #1e293b;
    box-shadow: 0 4px 14px rgba(242, 185, 11, 0.4);
  }

  .tp-booking__btn--primary:hover {
    background: #eab308;
    transform: translateY(-2px);
  }

  .tp-booking__btn--back {
    background: #f1f5f9;
    color: #475569;
  }

  .tp-booking__btn--back:hover {
    background: #e2e8f0;
  }

  .tp-booking__btn--whatsapp {
    background: #25d366;
    color: #fff;
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.4);
  }

  .tp-booking__btn--whatsapp:hover {
    background: #1fb855;
    transform: translateY(-2px);
  }

  .tp-booking-form__field {
    margin-bottom: var(--sp-4);
  }

  .tp-booking-form__field label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--ff-heading);
    font-size: 1.35rem;
    font-weight: var(--fw-semibold);
    color: var(--c-dark, #1e293b);
    margin-bottom: var(--sp-2);
  }

  .tp-booking-form__icon {
    font-size: 1.8rem;
    color: var(--c-primary, #f2b90b);
  }

  .tp-booking-form__req {
    color: #ef4444;
  }

  /* Inclusions & Exclusions */
  .tp-inclusions {
    background: var(--c-white, #fff);
    border: 1px solid var(--c-border-light, #e2e8f0);
    border-radius: var(--radius-xl, 1.4rem);
    padding: var(--sp-6) var(--sp-8);
    box-shadow: var(--shadow-sm);
  }

  .tp-inclusions__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-lg, 1.7rem);
    font-weight: var(--fw-bold);
    display: flex;
    align-items: center;
    gap: var(--sp-2);
    margin-bottom: var(--sp-4);
  }

  .tp-inclusions__title--yes {
    color: #15803d;
  }

  .tp-inclusions__title--no {
    color: #b91c1c;
  }

  .tp-list--yes li,
  .tp-list--no li {
    position: relative;
    padding-left: 2.8rem;
    margin-bottom: var(--sp-3);
    font-size: 1.35rem;
    line-height: 1.6;
    color: #475569;
  }

  .tp-list--yes li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #16a34a;
    font-size: 1.6rem;
  }

  .tp-list--no li::before {
    content: "✕";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #dc2626;
    font-size: 1.4rem;
  }

  /* Unified Headings across content and inclusion sections */
  .tp-content h1,
  .tp-inclusions-list h1,
  .tp-content h2,
  .tp-inclusions-list h2,
  .tp-section h2,
  .tp-section__title,
  .tp-intro-title {
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl, 2.2rem);
    font-weight: var(--fw-bold, 700);
    color: var(--c-dark, #1e293b);
    margin-top: var(--sp-2);
    margin-bottom: var(--sp-4);
    line-height: var(--lh-tight, 1.25);
  }

  .tp-content h3,
  .tp-inclusions-list h3,
  .tp-section h3 {
    font-family: var(--ff-heading);
    font-size: var(--fs-xl, 1.8rem);
    font-weight: var(--fw-semibold, 600);
    color: var(--c-dark, #1e293b);
    margin-top: var(--sp-4);
    margin-bottom: var(--sp-3);
    line-height: var(--lh-tight, 1.3);
  }

  /* Inclusiones Clean Checklist */
  .tp-inclusions-list ul,
  .tp-checklist {
    list-style: none !important;
    padding: 0 !important;
    margin: var(--sp-4) 0 !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr)) !important;
    gap: var(--sp-3) var(--sp-8) !important;
  }

  .tp-inclusions-list li,
  .tp-checklist li {
    position: relative !important;
    padding-left: 2.8rem !important;
    margin-bottom: var(--sp-2) !important;
    font-size: 1.4rem !important;
    line-height: 1.6 !important;
    color: var(--c-text, #334155) !important;
    list-style: none !important;
  }

  .tp-inclusions-list li::before,
  .tp-checklist li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    font-weight: 700 !important;
    color: #16a34a !important;
    font-size: 1.7rem !important;
    line-height: 1.4 !important;
  }

  .tp-content-direct,
  .tp-intro-section {
    padding: var(--sp-4) 0;
  }

  .tp-content table {
    width: 100%;
    border-collapse: collapse;
    margin: var(--sp-6) 0;
    border-radius: var(--radius-lg, 1rem);
    overflow: hidden;
    box-shadow: var(--shadow-md);
    border: 1px solid #e2e8f0;
  }

  .tp-content table thead th {
    background: #0f172a;
    color: #f8fafc;
    font-family: var(--ff-heading);
    font-weight: 700;
    padding: 1.4rem 1.6rem;
    font-size: 1.35rem;
    text-align: left;
    border-bottom: 2px solid var(--c-primary, #f2b90b);
  }

  .tp-content table tbody tr {
    border-bottom: 1px solid #f1f5f9;
    transition: background 0.2s ease;
  }

  .tp-content table tbody tr:nth-child(even) {
    background: #f8fafc;
  }

  .tp-content table tbody tr:hover {
    background: #fefce8;
  }

  .tp-content table tbody td {
    padding: 1.4rem 1.6rem;
    font-size: 1.35rem;
    color: #1e293b;
    vertical-align: middle;
  }

  .tp-content table tbody td:first-child {
    font-weight: 600;
  }

  .tp-content table tbody td a {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1.4rem;
    background: #25d366;
    color: #fff;
    font-family: var(--ff-heading);
    font-weight: 700;
    font-size: 1.25rem;
    border-radius: 999px;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  }

  .tp-content table tbody td a.tp-table-route-link {
    background: transparent !important;
    color: #0f172a !important;
    font-family: var(--ff-heading) !important;
    font-weight: 700 !important;
    font-size: 1.4rem !important;
    padding: 0 !important;
    border-radius: 0 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    text-decoration-color: #cbd5e1 !important;
    display: inline !important;
    box-shadow: none !important;
    transition: color 0.2s ease, text-decoration-color 0.2s ease !important;
  }

  .tp-content table tbody td a.tp-table-route-link:hover {
    color: #d97706 !important;
    text-decoration-color: #d97706 !important;
    transform: none !important;
  }

  .tp-content table tbody td a:hover {
    background: #1fb855;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.4);
    color: #fff;
  }

  /* ===============================================================
     SINGLE SERVICIO (70/30 LAYOUT & VEHICLE CARDS)
     =============================================================== */
  .tp-single-hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 32rem;
    display: flex;
    align-items: flex-end;
  }

  .tp-single-hero__overlay {
    width: 100%;
    padding: var(--sp-10) 0 var(--sp-8);
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.2) 0%, rgba(15, 23, 42, 0.92) 100%);
    color: #fff;
  }

  .tp-single-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(242, 185, 11, 0.2);
    border: 1px solid var(--c-primary, #f2b90b);
    color: #fde047;
    padding: 0.4rem 1.2rem;
    border-radius: 999px;
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: var(--sp-3);
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .tp-single-hero__title {
    font-family: var(--ff-heading);
    font-size: clamp(2.4rem, 4vw, 3.6rem);
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
    margin-bottom: var(--sp-2);
    text-shadow: 0 2px 6px rgba(0,0,0,0.5);
  }

  .tp-single-hero__subtitle {
    font-size: 1.5rem;
    color: rgba(255,255,255,0.9);
    max-width: 68rem;
    margin: 0;
  }

  .tp-single-layout {
    display: grid;
    grid-template-columns: 1fr 34rem;
    gap: var(--sp-10);
    align-items: start;
  }

  @media (max-width: 992px) {
    .tp-single-layout {
      grid-template-columns: 1fr;
    }
  }

  /* Highlights Bar */
  .tp-highlights-bar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
    gap: var(--sp-4);
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-xl, 1.4rem);
    padding: var(--sp-5) var(--sp-6);
  }

  .tp-highlight-item {
    display: flex;
    align-items: center;
    gap: var(--sp-3);
  }

  .tp-highlight-item .material-icons-outlined {
    font-size: 2.8rem;
  }

  .tp-highlight-item strong {
    display: block;
    font-family: var(--ff-heading);
    font-size: 1.35rem;
    color: #1e293b;
  }

  .tp-highlight-item span {
    font-size: 1.2rem;
    color: #64748b;
  }

  .tp-section-heading {
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl, 2.2rem);
    font-weight: 700;
    color: #1e293b;
    margin-bottom: var(--sp-2);
  }

  .tp-section-sub {
    font-size: 1.4rem;
    color: #64748b;
    margin: 0;
  }

  /* Vehicle Cards */
  .tp-vehicle-card {
    background: #fff;
    border: 2px solid #e2e8f0;
    border-radius: var(--radius-xl, 1.4rem);
    overflow: hidden;
    transition: all 0.25s ease;
    display: flex;
    flex-direction: column;
    box-shadow: var(--shadow-sm);
  }

  .tp-vehicle-card:hover,
  .tp-vehicle-card--active {
    border-color: var(--c-primary, #f2b90b);
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(242, 185, 11, 0.2);
  }

  .tp-vehicle-card__img-wrap {
    position: relative;
    height: 18rem;
    overflow: hidden;
    background: #f1f5f9;
  }

  .tp-vehicle-card__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }

  .tp-vehicle-card:hover .tp-vehicle-card__img-wrap img {
    transform: scale(1.05);
  }

  .tp-vehicle-card__pax-badge {
    position: absolute;
    bottom: var(--sp-3);
    left: var(--sp-3);
    background: rgba(15, 23, 42, 0.85);
    backdrop-filter: blur(4px);
    color: #fff;
    padding: 0.4rem 1rem;
    border-radius: 999px;
    font-size: 1.2rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
  }

  .tp-vehicle-card__body {
    padding: var(--sp-5);
    display: flex;
    flex-direction: column;
    flex: 1;
  }

  .tp-vehicle-card__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: var(--sp-3);
    gap: var(--sp-2);
  }

  .tp-vehicle-card__name {
    font-family: var(--ff-heading);
    font-size: 1.6rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
  }

  .tp-vehicle-card__price {
    text-align: right;
    white-space: nowrap;
  }

  .tp-vehicle-card__price span {
    font-family: var(--ff-heading);
    font-size: 2.2rem;
    font-weight: 800;
    color: #b45309;
  }

  .tp-vehicle-card__price small {
    font-size: 1.1rem;
    color: #64748b;
    margin-left: 2px;
  }

  .tp-vehicle-card__luggage {
    font-size: 1.25rem;
    color: #475569;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: var(--sp-3);
  }

  .tp-vehicle-card__features {
    list-style: none;
    padding: 0;
    margin: 0 0 var(--sp-5) 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .tp-vehicle-card__features li {
    font-size: 1.25rem;
    color: #475569;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .tp-vehicle-card__btn {
    width: 100%;
    padding: 0.8rem 1.4rem;
    font-family: var(--ff-heading);
    font-size: 1.3rem;
    font-weight: 700;
    border-radius: 999px;
    border: 1.5px solid #cbd5e1;
    background: #f8fafc;
    color: #334155;
    cursor: pointer;
    transition: all 0.2s ease;
  }

  .tp-vehicle-card:hover .tp-vehicle-card__btn,
  .tp-vehicle-card--active .tp-vehicle-card__btn {
    background: var(--c-primary, #f2b90b);
    border-color: var(--c-primary, #f2b90b);
    color: #0f172a;
    box-shadow: 0 4px 12px rgba(242, 185, 11, 0.35);
  }

  /* Sticky Sidebar Card */
  .tp-sticky-card {
    position: sticky;
    top: 2rem;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-xl, 1.6rem);
    padding: var(--sp-6);
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  }

  .tp-sticky-card__header {
    margin-bottom: var(--sp-5);
    padding-bottom: var(--sp-4);
    border-bottom: 1px solid #f1f5f9;
  }

  .tp-sticky-card__badge {
    font-size: 1.15rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #d97706;
  }

  .tp-sticky-card__title {
    font-family: var(--ff-heading);
    font-size: 1.65rem;
    font-weight: 700;
    color: #0f172a;
    margin-top: 0.4rem;
    line-height: 1.3;
  }

  .tp-sidebar-form__group {
    margin-bottom: var(--sp-4);
  }

  .tp-sidebar-form__label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--ff-heading);
    font-size: 1.3rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 0.5rem;
  }

  .tp-sidebar-form__select,
  .tp-sidebar-form__input {
    width: 100%;
    padding: 0.9rem 1.2rem;
    border: 1.5px solid #cbd5e1;
    border-radius: var(--radius-lg, 0.8rem);
    background: #f8fafc;
    font-size: 1.35rem;
    color: #1e293b;
    outline: none;
    transition: all 0.2s ease;
  }

  .tp-sidebar-form__select:focus,
  .tp-sidebar-form__input:focus {
    border-color: var(--c-primary, #f2b90b);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(242, 185, 11, 0.2);
  }

  .tp-sidebar-total {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: #fff;
    padding: var(--sp-4) var(--sp-5);
    border-radius: var(--radius-lg, 1rem);
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: var(--sp-5) 0;
  }

  .tp-sidebar-total__label span {
    font-family: var(--ff-heading);
    font-size: 1.3rem;
    font-weight: 700;
    display: block;
  }

  .tp-sidebar-total__label small {
    font-size: 1.05rem;
    color: #94a3b8;
  }

  .tp-sidebar-total__amount {
    font-family: var(--ff-heading);
    font-size: 2.8rem;
    font-weight: 800;
    color: var(--c-primary, #f2b90b);
  }

  .tp-sidebar-total__amount small {
    font-size: 1.2rem;
    color: #cbd5e1;
    margin-left: 2px;
  }

  .tp-sidebar-btn-wa {
    width: 100%;
    padding: 1.2rem 1.6rem;
    background: #25d366;
    color: #fff;
    font-family: var(--ff-heading);
    font-size: 1.5rem;
    font-weight: 700;
    border: none;
    border-radius: 999px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    transition: all 0.2s ease;
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.4);
  }

  .tp-sidebar-btn-wa:hover {
    background: #1fb855;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(37, 211, 102, 0.5);
  }

  .tp-sticky-trust {
    margin-top: var(--sp-5);
    padding-top: var(--sp-4);
    border-top: 1px solid #f1f5f9;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .tp-trust-item {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 1.2rem;
    color: #64748b;
  }

  /* ===============================================================
     HERO BANNER & WHITE BREADCRUMBS
     =============================================================== */
  .tp-single-hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 26rem;
    display: flex;
    align-items: flex-end;
  }

  .tp-single-hero__overlay {
    width: 100%;
    padding: 6rem 0 3.5rem;
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.45) 0%, rgba(15, 23, 42, 0.88) 100%);
    color: #ffffff;
  }

  .tp-single-hero__title {
    font-family: var(--ff-heading);
    font-size: clamp(2.4rem, 3.5vw, 4rem);
    font-weight: 800;
    color: #ffffff;
    margin: 0;
    line-height: 1.2;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.6);
  }

  .tp-breadcrumbs--light {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.8rem;
    font-size: 1.45rem;
    font-weight: 500;
    color: #ffffff;
    margin-bottom: 1.2rem;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.7);
  }

  .tp-breadcrumbs--light a {
    color: #ffffff !important;
    text-decoration: none;
    opacity: 0.95;
    transition: all 0.2s ease;
  }

  .tp-breadcrumbs--light a:hover {
    color: var(--c-primary, #f2b90b) !important;
    opacity: 1;
    text-decoration: underline;
  }

  .tp-breadcrumbs--light .tp-breadcrumbs__sep {
    color: rgba(255, 255, 255, 0.75);
    font-size: 1.4rem;
  }

  .tp-breadcrumbs--light .tp-breadcrumbs__current {
    color: #ffffff !important;
    font-weight: 700;
    opacity: 1;
  }

  /* ===============================================================
     INCA MOVE INSPIRED BOOKING FLOW
     =============================================================== */
  .tp-single-layout {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
    gap: 3.5rem 4.8rem;
    align-items: start;
  }

  @media (max-width: 992px) {
    .tp-single-layout {
      grid-template-columns: 1fr;
      gap: 3rem;
    }
  }

  .tp-how-to-book {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-xl, 1.4rem);
    padding: 3.6rem 3.2rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
  }

  .tp-how-to-book__header {
    text-align: center;
    margin-bottom: 3.2rem;
  }

  .tp-how-to-book__title {
    font-family: var(--ff-heading);
    font-size: var(--fs-2xl, 2.4rem);
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.8rem;
  }

  .tp-how-to-book__line {
    width: 6rem;
    height: 3px;
    background: var(--c-primary, #f2b90b);
    margin: 0 auto 1.2rem;
    border-radius: 999px;
  }

  .tp-how-to-book__desc {
    font-size: 1.45rem;
    color: #64748b;
    margin: 0;
  }

  .tp-how-to-book__steps {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.8rem;
  }

  @media (max-width: 768px) {
    .tp-how-to-book__steps {
      grid-template-columns: 1fr;
      gap: 2.4rem;
    }
  }

  .tp-how-to-book__step {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .tp-how-to-book__num {
    width: 4.8rem;
    height: 4.8rem;
    border-radius: 50%;
    background: linear-gradient(135deg, #f2b90b 0%, #fcd34d 100%);
    color: #0f172a;
    font-family: var(--ff-heading);
    font-size: 2rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.4rem;
    box-shadow: 0 4px 14px rgba(242, 185, 11, 0.4);
  }

  .tp-how-to-book__step-title {
    font-family: var(--ff-heading);
    font-size: 1.6rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.6rem;
  }

  .tp-how-to-book__step-desc {
    font-size: 1.35rem;
    color: #64748b;
    line-height: 1.55;
    margin: 0;
    max-width: 32rem;
  }

  /* Step Box Containers */
  .tp-step-box {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 1.2rem;
    padding: 2.6rem 3rem;
    margin-bottom: 2.8rem;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
    display: flex;
    gap: 2rem;
    align-items: flex-start;
  }

  @media (max-width: 640px) {
    .tp-step-box {
      padding: 2rem 1.8rem;
      gap: 1.4rem;
    }
  }

  .tp-step-box__num {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    background: #0f172a;
    color: #fff;
    font-family: var(--ff-heading);
    font-size: 1.45rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 0.2rem;
  }

  .tp-step-box__content {
    flex: 1;
    min-width: 0;
  }

  .tp-step-box__title {
    font-family: var(--ff-heading);
    font-size: 1.75rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
    line-height: 1.3;
  }

  .tp-step-box__subtitle {
    font-size: 1.35rem;
    color: #64748b;
    margin: 0.4rem 0 0;
  }

  /* Service Picker Cards */
  .tp-picker-card {
    background: #fff;
    border: 1.5px solid #e2e8f0;
    border-radius: 1.2rem;
    padding: 1.8rem 2rem;
    display: flex;
    align-items: center;
    gap: 1.6rem;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03);
  }

  .tp-picker-card:hover,
  .tp-picker-card--active {
    border-color: #0f172a;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.08);
  }

  .tp-picker-card__icon {
    width: 4.6rem;
    height: 4.6rem;
    border-radius: 0.8rem;
    background: #f1f5f9;
    color: #0f172a;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.4rem;
    flex-shrink: 0;
  }

  .tp-picker-card__info h4 {
    font-family: var(--ff-heading);
    font-size: 1.55rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 0.3rem;
  }

  .tp-picker-card__info p {
    font-size: 1.25rem;
    color: #64748b;
    margin: 0;
    line-height: 1.4;
  }

  .tp-picker-card__radio {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 50%;
    border: 2px solid #cbd5e1;
    margin-left: auto;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .tp-picker-card--active .tp-picker-card__radio {
    border-color: #0f172a;
    background: #0f172a;
    box-shadow: inset 0 0 0 3px #fff;
  }

  /* Form Fields */
  .tp-form-field label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--ff-heading);
    font-size: 1.35rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 0.6rem;
  }

  .tp-form-select,
  .tp-form-input,
  .tp-form-textarea {
    width: 100%;
    padding: 1.1rem 1.4rem;
    border: 1.5px solid #cbd5e1;
    border-radius: 0.8rem;
    background: #f8fafc;
    font-size: 1.35rem;
    color: #1e293b;
    outline: none;
    transition: all 0.2s ease;
  }

  .tp-form-select:focus,
  .tp-form-input:focus,
  .tp-form-textarea:focus {
    border-color: #0f172a;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.1);
  }

  /* Passenger Counter */
  .tp-pax-counter {
    display: inline-flex;
    align-items: center;
    gap: 1.2rem;
    background: #f8fafc;
    border: 1.5px solid #cbd5e1;
    border-radius: 0.8rem;
    padding: 0.5rem 1.2rem;
  }

  .tp-pax-btn {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    border: 1px solid #cbd5e1;
    background: #fff;
    color: #0f172a;
    font-size: 1.8rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
  }

  .tp-pax-btn:hover {
    background: #0f172a;
    color: #fff;
    border-color: #0f172a;
  }

  .tp-pax-val {
    font-family: var(--ff-heading);
    font-size: 1.6rem;
    font-weight: 700;
    min-width: 2rem;
    text-align: center;
  }

  .tp-pax-label {
    font-size: 1.3rem;
    color: #64748b;
  }

  /* Flow Vehicle Cards */
  .tp-flow-vehicle-card {
    background: #fff;
    border: 1.5px solid #e2e8f0;
    border-radius: 1.2rem;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
    display: flex;
    flex-direction: column;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);
  }

  .tp-flow-vehicle-card:hover,
  .tp-flow-vehicle-card--active {
    border-color: #10b981;
    box-shadow: 0 0 0 1px #10b981, 0 4px 14px rgba(16, 185, 129, 0.15);
    transform: translateY(-2px);
  }

  .tp-flow-vehicle-card--disabled {
    opacity: 0.42 !important;
    filter: grayscale(0.7) !important;
    cursor: not-allowed !important;
    background: #f8fafc !important;
    border-color: #e2e8f0 !important;
    box-shadow: none !important;
  }

  .tp-flow-vehicle-card--disabled:hover {
    transform: none !important;
    border-color: #e2e8f0 !important;
    box-shadow: none !important;
  }

  .tp-vehicle-tag {
    position: absolute;
    top: 0.8rem;
    left: 0.8rem;
    background: #10b981;
    color: #fff;
    padding: 0.2rem 0.8rem;
    border-radius: 999px;
    font-size: 1.05rem;
    font-weight: 700;
    z-index: 2;
    letter-spacing: 0.04em;
  }

  .tp-flow-vehicle-card__img {
    height: 13rem;
    background: #f8fafc;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .tp-flow-vehicle-card__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 0.6rem;
  }

  .tp-flow-vehicle-card__body {
    padding: 1.4rem 1.6rem 1.6rem;
    display: flex;
    flex-direction: column;
    flex: 1;
  }

  .tp-flow-vehicle-card__body h4 {
    font-family: var(--ff-heading);
    font-size: 1.45rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 0.4rem;
  }

  .tp-flow-vehicle-card__meta {
    display: flex;
    gap: 1.2rem;
    font-size: 1.2rem;
    color: #64748b;
    margin-bottom: 1rem;
  }

  .tp-flow-vehicle-card__meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
  }

  .tp-flow-vehicle-card__meta .material-icons-outlined {
    font-size: 1.5rem;
  }

  .tp-flow-vehicle-card__price {
    font-family: var(--ff-heading);
    font-size: 1.85rem;
    font-weight: 800;
    color: #0f172a;
    margin-top: auto;
  }

  .tp-flow-vehicle-card__price small {
    font-size: 1.15rem;
    color: #64748b;
    margin-left: 2px;
  }

  .tp-flow-vehicle-card__pp {
    font-size: 1.15rem;
    color: #94a3b8;
    margin-top: 0.2rem;
  }

  .tp-action-buttons-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.4rem;
    margin-top: 20px;
  }

  @media (max-width: 640px) {
    .tp-action-buttons-grid {
      grid-template-columns: 1fr;
      margin-top: 15px;
    }
  }

  .tp-btn-online-book {
    width: 100%;
    padding: 1.35rem 2rem;
    background: #0f172a;
    color: #ffffff;
    font-family: var(--ff-heading);
    font-size: 1.55rem;
    font-weight: 700;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    box-shadow: none;
    transition: all 0.2s ease;
  }

  .tp-btn-online-book:hover {
    background: #1e293b;
    transform: translateY(-2px);
    box-shadow: none;
  }

  .tp-btn-online-book:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    transform: none;
  }

  /* Checkout Button */
  .tp-btn-checkout {
    width: 100%;
    padding: 1.35rem 2rem;
    background: #25d366;
    color: #fff;
    font-family: var(--ff-heading);
    font-size: 1.55rem;
    font-weight: 700;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    box-shadow: none;
    transition: all 0.2s ease;
  }

  .tp-btn-checkout:hover {
    background: #1fb855;
    transform: translateY(-2px);
    box-shadow: none;
  }

  /* ===============================================================
     REFINED ASIDE / STICKY RESERVATION RAIL (INCA MOVE STYLE)
     =============================================================== */
  .tp-rail-aside {
    position: sticky;
    top: calc(var(--wp-admin--admin-bar--height, 0px) + 2rem);
  }

  .transport-cusco-reserve {
    padding: 1.8rem 2rem 2rem;
    border: 1px solid #e0e0e0;
    border-radius: 1.2rem;
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  }

  .transport-cusco-reserve__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.2rem;
  }

  .transport-cusco-reserve__title {
    margin: 0;
    font-family: var(--ff-heading);
    font-size: 1.65rem;
    font-weight: 800;
    color: #111111;
    letter-spacing: 0.02em;
  }

  .transport-cusco-reserve__badge {
    flex: 0 0 auto;
    padding: 0.35rem 0.85rem;
    border-radius: 99px;
    font-size: 1.15rem;
    font-weight: 700;
    color: #111111;
    background: #f4f4f4;
    border: 1px solid #e0e0e0;
  }

  .transport-cusco-reserve__bar {
    height: 0.5rem;
    border-radius: 99px;
    background: #ececec;
    overflow: hidden;
    margin-bottom: 1.4rem;
  }

  .transport-cusco-reserve__bar-fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2a2a2a, #111111);
    transition: width 0.25s ease;
  }

  .transport-cusco-reserve__steps {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .transport-cusco-reserve__step {
    display: flex;
    align-items: flex-start;
    gap: 1.2rem;
    padding: 1rem 0;
    border-bottom: 1px solid #ededed;
  }

  .transport-cusco-reserve__step:last-of-type {
    border-bottom: none;
  }

  .transport-cusco-reserve__ico {
    flex: 0 0 auto;
    width: 2.6rem;
    height: 2.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 1.2rem;
    font-weight: 800;
    color: #94a3b8;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    margin-top: 0.1rem;
  }

  .transport-cusco-reserve__step--done .transport-cusco-reserve__ico {
    color: #fff;
    background: #10b981;
    border-color: #0d966a;
  }

  .transport-cusco-reserve__step--current .transport-cusco-reserve__ico {
    color: #fff;
    background: #111111;
    border-color: #000000;
  }

  .transport-cusco-reserve__ico-check {
    font-size: 1.4rem;
    font-weight: 800;
  }

  .transport-cusco-reserve__body {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
  }

  .transport-cusco-reserve__label {
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    color: #64748b;
    text-transform: uppercase;
  }

  .transport-cusco-reserve__value {
    font-size: 1.25rem;
    font-weight: 600;
    color: #111111;
    word-break: break-word;
  }

  .transport-cusco-reserve__step--pending .transport-cusco-reserve__value {
    color: #94a3b8;
    font-weight: 500;
  }

  .transport-cusco-reserve__total {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1.4rem;
    padding-top: 1.3rem;
    border-top: 2px solid #ececec;
  }

  .transport-cusco-reserve__total-label {
    font-size: 1.25rem;
    font-weight: 700;
    color: #64748b;
  }

  .transport-cusco-reserve__total-amt {
    font-family: var(--ff-heading);
    font-size: 1.85rem;
    font-weight: 800;
    color: #111111;
  }

  .tp-rail-actions {
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .tp-rail-btn-wa {
    width: 100%;
    padding: 1.25rem 1.8rem;
    background: #25d366;
    color: #fff;
    font-family: var(--ff-heading);
    font-size: 1.5rem;
    font-weight: 700;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    transition: all 0.2s ease;
    box-shadow: none;
  }

  .tp-rail-btn-wa:hover {
    background: #1fb855;
    transform: translateY(-2px);
    box-shadow: none;
  }

  .tp-rail-trust {
    margin-top: 1.6rem;
    padding-top: 1.4rem;
    border-top: 1px solid #f1f5f9;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .tp-trust-mini {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 1.15rem;
    color: #64748b;
  }

  /* ===============================================================
     CUSTOM ALERT MODAL (MODAL DE ALERTA ELEGANTE)
     =============================================================== */
  .tp-modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.65);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
  }

  .tp-modal-backdrop.is-open {
    opacity: 1;
    pointer-events: auto;
  }

  .tp-alert-modal-card {
    background: #ffffff;
    border-radius: 1.6rem;
    padding: 3.2rem 2.8rem 2.8rem;
    max-width: 44rem;
    width: 100%;
    text-align: center;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
    transform: translateY(16px) scale(0.95);
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .tp-modal-backdrop.is-open .tp-alert-modal-card {
    transform: translateY(0) scale(1);
  }

  .tp-alert-modal__icon {
    width: 5.8rem;
    height: 5.8rem;
    border-radius: 50%;
    background: #fef3c7;
    color: #d97706;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.6rem;
  }

  .tp-alert-modal__icon .material-icons-outlined {
    font-size: 3.2rem;
  }

  .tp-alert-modal__title {
    font-family: var(--ff-heading);
    font-size: 1.85rem;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 0.8rem;
    line-height: 1.3;
  }

  .tp-alert-modal__message {
    font-size: 1.4rem;
    color: #64748b;
    line-height: 1.55;
    margin: 0 0 2.2rem;
  }

  .tp-alert-modal__btn {
    width: 100%;
    padding: 1.3rem 2rem;
    background: #0f172a;
    color: #ffffff;
    font-family: var(--ff-heading);
    font-size: 1.55rem;
    font-weight: 700;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: none;
  }

  .tp-alert-modal__btn:hover {
    background: #1e293b;
    transform: translateY(-1px);
    box-shadow: none;
  }

  /* ===============================================================
     PREMIUM WOOCOMMERCE CHECKOUT STYLES
     =============================================================== */
  .woocommerce-checkout {
    margin-top: 2rem;
    margin-bottom: 4rem;
  }

  /* Headings */
  .woocommerce-checkout h3,
  .woocommerce-checkout .wc-block-components-title,
  .woocommerce-billing-fields h3,
  .woocommerce-shipping-fields h3,
  #order_review_heading {
    font-family: var(--ff-heading, inherit);
    font-size: 1.85rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin-bottom: 1.4rem !important;
    letter-spacing: -0.01em;
  }

  /* Form Fields & Labels */
  .woocommerce-checkout .form-row label {
    font-family: var(--ff-heading, inherit);
    font-size: 1.35rem;
    font-weight: 600;
    color: #334155;
    margin-bottom: 0.5rem;
    display: block;
  }

  .woocommerce-checkout input[type="text"],
  .woocommerce-checkout input[type="email"],
  .woocommerce-checkout input[type="tel"],
  .woocommerce-checkout input[type="password"],
  .woocommerce-checkout select,
  .woocommerce-checkout textarea {
    width: 100%;
    padding: 1.1rem 1.4rem;
    border: 1.5px solid #cbd5e1;
    border-radius: 8px;
    background: #f8fafc;
    font-size: 1.35rem;
    color: #0f172a;
    outline: none;
    transition: all 0.2s ease;
  }

  .woocommerce-checkout input:focus,
  .woocommerce-checkout select:focus,
  .woocommerce-checkout textarea:focus {
    border-color: #0f172a;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
  }

  /* Order Review Sidebar / Box */
  .woocommerce-checkout #order_review,
  .wc-block-checkout__sidebar,
  .wp-block-woocommerce-checkout-order-summary-block {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 1.2rem;
    padding: 2.4rem 2.6rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  }

  .woocommerce-checkout table.shop_table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    border: none;
    margin-bottom: 2rem;
  }

  .woocommerce-checkout table.shop_table th {
    font-family: var(--ff-heading, inherit);
    font-size: 1.25rem;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 1.5px solid #f1f5f9;
    padding: 1rem 0;
  }

  .woocommerce-checkout table.shop_table td {
    border-top: 1px solid #f1f5f9;
    padding: 1.4rem 0;
    font-size: 1.35rem;
  }

  .woocommerce-checkout .product-name strong {
    font-size: 1.45rem;
    font-weight: 700;
    color: #0f172a;
  }

  .woocommerce-checkout .wc-item-meta,
  .woocommerce-checkout dl.variation {
    margin-top: 0.6rem;
    font-size: 1.25rem;
    color: #64748b;
  }

  .woocommerce-checkout .wc-item-meta dt,
  .woocommerce-checkout dl.variation dt {
    font-weight: 700;
    color: #475569;
    float: left;
    clear: left;
    margin-right: 0.5rem;
  }

  .woocommerce-checkout .order-total th,
  .woocommerce-checkout .order-total td {
    border-top: 2px solid #0f172a;
    padding-top: 1.6rem;
  }

  .woocommerce-checkout .order-total td strong {
    font-family: var(--ff-heading, inherit);
    font-size: 2.2rem;
    font-weight: 800;
    color: #0f172a;
  }

  /* Place Order Button */
  #place_order,
  .wc-block-components-checkout-place-order-button {
    width: 100% !important;
    padding: 1.4rem 2.4rem !important;
    background: #0f172a !important;
    color: #ffffff !important;
    font-family: var(--ff-heading, inherit) !important;
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    border: none !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: none !important;
  }

  #place_order:hover,
  .wc-block-components-checkout-place-order-button:hover {
    background: #1e293b !important;
    transform: translateY(-2px) !important;
    box-shadow: none !important;
  }

  /* Notices & Alerts in Checkout */
  .woocommerce-error,
  .woocommerce-info,
  .woocommerce-message {
    border-radius: 10px;
    padding: 1.4rem 2rem;
    font-size: 1.35rem;
    margin-bottom: 2rem;
  }

  /* ===============================================================
     SITE FOOTER & LAYOUT SEAMLESS FIT
     =============================================================== */
  #page {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
  }

  #content {
    flex: 1 0 auto;
    margin-bottom: 0 !important;
  }

  .site-footer,
  #colophon.site-footer {
    background: #111111 !important;
    color: #94a3b8 !important;
    border-top: none !important;
    margin-top: 0 !important;
    padding-top: 5rem;
    position: relative;
    z-index: 10;
  }

  .site-footer a {
    color: #94a3b8;
    transition: color 0.2s ease;
  }

  .site-footer a:hover {
    color: #ffffff;
  }

  .footer__logo img {
    max-height: 42px;
    width: auto;
    display: block;
  }

  .footer__desc {
    font-size: 1.35rem;
    line-height: 1.6;
    color: #94a3b8;
    margin-bottom: 2rem;
  }

  .footer__newsletter-title {
    display: block;
    font-family: var(--ff-heading);
    font-size: 1.35rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 0.4rem;
  }

  .footer__newsletter-sub {
    font-size: 1.2rem;
    color: #64748b;
    margin-bottom: 1rem;
  }

  .footer__form {
    display: flex;
    gap: 0.6rem;
    margin-bottom: 1.6rem;
  }

  .footer__input {
    flex: 1;
    background: #1e1e1e;
    border: 1px solid #2e2e2e;
    border-radius: 6px;
    padding: 0.8rem 1.2rem;
    color: #ffffff;
    font-size: 1.25rem;
    outline: none;
  }

  .footer__input:focus {
    border-color: #f59e0b;
  }

  .footer__submit {
    background: #f59e0b;
    color: #111111;
    font-family: var(--ff-heading);
    font-size: 1.3rem;
    font-weight: 700;
    padding: 0.8rem 1.6rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.2s ease;
  }

  .footer__submit:hover {
    background: #d97706;
  }

  .footer__social {
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .footer__social-icon {
    width: 3.4rem;
    height: 3.4rem;
    border-radius: 50%;
    background: #1e1e1e;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #94a3b8;
    transition: all 0.2s ease;
  }

  .footer__social-icon:hover {
    background: #f59e0b;
    color: #111111;
    transform: translateY(-2px);
  }

  .footer__title {
    display: block;
    font-family: var(--ff-heading);
    font-size: 1.55rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 1.6rem;
    letter-spacing: 0.02em;
  }

  .footer__links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
  }

  .footer__links li a {
    font-size: 1.35rem;
    color: #94a3b8;
    display: inline-block;
  }

  .footer__links li a:hover {
    color: #ffffff;
    transform: translateX(3px);
  }

  .footer__contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .footer__contact-item {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    font-size: 1.35rem;
    color: #94a3b8;
  }

  .footer__contact-item .material-icons-outlined {
    font-size: 1.8rem;
    color: #f59e0b;
    flex-shrink: 0;
    margin-top: 0.1rem;
  }

  .footer__bottom {
    margin-top: 4rem;
    padding: 2rem 0;
    border-top: 1px solid #1e1e1e;
    background: #0d0d0d;
    font-size: 1.25rem;
    color: #64748b;
  }

  .footer__bottom-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
  }

  /* ===============================================================
     HERO BANNERS: 50VH HEIGHT & 0.4 BLACK OVERLAYS
     =============================================================== */
  .tp-single-hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 50vh;
    display: flex;
    align-items: center;
    overflow: hidden;
  }

  .tp-single-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4) !important;
    display: flex;
    align-items: center;
    padding: 4rem 0;
    width: 100%;
    z-index: 1;
  }

  .tp-single-hero .container {
    position: relative;
    z-index: 2;
  }

  .tp-single-hero__title {
    color: #ffffff !important;
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 3.4rem;
    font-weight: 800;
    margin: 0;
    letter-spacing: -0.01em;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
  }

  .tp-single-hero__subtitle {
    color: #f8fafc !important;
    font-size: 1.55rem;
    max-width: 680px;
    margin-top: 1rem;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.6);
  }

  /* Archive Heroes */
  .archive-hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 50vh;
    display: flex;
    align-items: center;
    overflow: hidden;
  }

  .archive-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4) !important;
    z-index: 1;
  }

  .archive-hero__content {
    position: relative;
    z-index: 2;
    padding: 4rem 0;
  }

  .archive-hero__title {
    color: #ffffff !important;
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 3.4rem;
    font-weight: 800;
    margin: 0;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
  }

  .archive-hero__desc {
    color: #f8fafc !important;
    font-size: 1.55rem;
    max-width: 680px;
    margin-top: 0.8rem;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.6);
  }

  /* Single Blog / Travel News Heroes */
  .single-blog-hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 50vh;
    display: flex;
    align-items: center;
    overflow: hidden;
  }

  .single-blog-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4) !important;
    display: flex;
    align-items: center;
    padding: 4rem 0;
    width: 100%;
    z-index: 1;
  }

  .single-blog-hero__content {
    position: relative;
    z-index: 2;
  }

  .single-blog-hero__title {
    color: #ffffff !important;
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 3.4rem;
    font-weight: 800;
    margin: 0;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
  }

  /* Front Page Hero */
  .hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4) !important;
    z-index: 1;
  }

  /* White Breadcrumbs on Heroes */
  .tp-breadcrumbs--light,
  .tp-breadcrumbs--light a,
  .tp-breadcrumbs--light span,
  .single-blog-hero__breadcrumb,
  .single-blog-hero__breadcrumb a,
  .single-blog-hero__breadcrumb span {
    color: #ffffff !important;
    font-weight: 600;
    font-size: 1.3rem;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8);
  }

  .tp-breadcrumbs--light a:hover,
  .single-blog-hero__breadcrumb a:hover {
    color: #f59e0b !important;
  }

  /* ===============================================================
     INCLUYE (CHECK) & NO INCLUYE (CROSS) LIST STYLING
     =============================================================== */
  .tp-includes-list,
  ul.tp-includes-list,
  .tp-content ul.tp-includes-list {
    list-style: none !important;
    padding-left: 0 !important;
    margin: 1.2rem 0 2rem 0 !important;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
  }

  .tp-includes-list li,
  ul.tp-includes-list li,
  .tp-content ul.tp-includes-list li,
  .tp-li--include {
    position: relative !important;
    list-style: none !important;
    padding-left: 3rem !important;
    margin: 0 !important;
    font-size: 1.55rem;
    line-height: 1.6;
    color: #334155;
  }

  .tp-includes-list li::before,
  ul.tp-includes-list li::before,
  .tp-content ul.tp-includes-list li::before,
  .tp-li--include::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 0.15rem;
    width: 2.1rem;
    height: 2.1rem;
    background: #dcfce7;
    color: #16a34a;
    border-radius: 50%;
    font-weight: 800;
    font-size: 1.3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    box-shadow: 0 1px 3px rgba(22, 163, 74, 0.15);
  }

  .tp-excludes-list,
  ul.tp-excludes-list,
  .tp-content ul.tp-excludes-list {
    list-style: none !important;
    padding-left: 0 !important;
    margin: 1.2rem 0 2rem 0 !important;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
  }

  .tp-excludes-list li,
  ul.tp-excludes-list li,
  .tp-content ul.tp-excludes-list li,
  .tp-li--exclude {
    position: relative !important;
    list-style: none !important;
    padding-left: 3rem !important;
    margin: 0 !important;
    font-size: 1.55rem;
    line-height: 1.6;
    color: #64748b;
  }

  .tp-excludes-list li::before,
  ul.tp-excludes-list li::before,
  .tp-content ul.tp-excludes-list li::before,
  .tp-li--exclude::before {
    content: '✕';
    position: absolute;
    left: 0;
    top: 0.15rem;
    width: 2.1rem;
    height: 2.1rem;
    background: #fee2e2;
    color: #ef4444;
    border-radius: 50%;
    font-weight: 800;
    font-size: 1.2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    box-shadow: 0 1px 3px rgba(239, 68, 68, 0.15);
  }

  /* ===============================================================
     SINGLE BLOG POST & TRAVEL NEWS (BP-*) LAYOUT & STYLING
     =============================================================== */
  .bp-blog-page {
    max-width: 1240px;
    margin: 0 auto;
    padding: 3rem 2rem 6rem;
  }

  .bp-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 4rem;
  }

  @media (min-width: 992px) {
    .bp-layout {
      grid-template-columns: 1fr 340px;
      gap: 5rem;
    }
  }

  .bp-article {
    min-width: 0;
  }

  .bp-header {
    margin-bottom: 2.5rem;
  }

  .bp-header__cat {
    display: inline-block;
    background: #fef3c7;
    color: #b45309;
    font-size: 1.2rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 0.4rem 1.2rem;
    border-radius: 20px;
    margin-bottom: 1.2rem;
  }

  .bp-header__title {
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 2.8rem;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.25;
    margin-bottom: 1.6rem;
  }

  @media (min-width: 768px) {
    .bp-header__title {
      font-size: 3.4rem;
    }
  }

  .bp-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.6rem;
    font-size: 1.35rem;
    color: #64748b;
    margin-bottom: 2rem;
  }

  .bp-breadcrumbs a {
    color: #475569;
    text-decoration: none;
    font-weight: 600;
    transition: color 0.15s;
  }

  .bp-breadcrumbs a:hover {
    color: #f59e0b;
  }

  .bp-breadcrumbs__sep {
    font-size: 1.6rem;
    color: #94a3b8;
  }

  .bp-breadcrumbs__current {
    color: #0f172a;
    font-weight: 600;
  }

  .bp-header__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.2rem;
    font-size: 1.35rem;
    color: #64748b;
    padding-top: 1.2rem;
    border-top: 1px solid #e2e8f0;
  }

  .bp-header__avatar {
    width: 3.6rem;
    height: 3.6rem;
    border-radius: 50%;
    object-fit: cover;
  }

  .bp-header__author {
    font-weight: 700;
    color: #0f172a;
  }

  .bp-header__dot {
    color: #cbd5e1;
  }

  .bp-header__icon {
    font-size: 1.6rem;
    color: #f59e0b;
    vertical-align: middle;
  }

  .bp-featured,
  .bp-featured-img {
    margin-bottom: 3.5rem;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  }

  .bp-featured__img,
  .bp-featured-img img {
    width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: cover;
    display: block;
  }

  .bp-content {
    font-size: 1.7rem;
    line-height: 1.85;
    color: #334155;
  }

  .bp-content p {
    margin-bottom: 2rem;
  }

  .bp-content h2 {
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 2.4rem;
    font-weight: 800;
    color: #0f172a;
    margin: 3.5rem 0 1.5rem;
  }

  .bp-content h3 {
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 2rem;
    font-weight: 700;
    color: #0f172a;
    margin: 3rem 0 1.2rem;
  }

  .bp-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    margin: 2rem 0;
  }

  .bp-toc {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 1.6rem 2rem;
    margin: 2.5rem 0 3.5rem;
  }

  .bp-toc__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--ff-heading);
    font-size: 1.6rem;
    font-weight: 700;
    color: #0f172a;
  }

  .bp-share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 2rem 2.4rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    margin: 4rem 0;
  }

  .bp-share__label,
  .bp-share__title {
    font-family: var(--ff-heading);
    font-weight: 700;
    font-size: 1.45rem;
    color: #0f172a;
  }

  .bp-share__btns,
  .bp-share__links {
    display: flex;
    gap: 1rem;
  }

  .bp-share__btn {
    width: 3.8rem;
    height: 3.8rem;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    text-decoration: none;
    transition: transform 0.2s, opacity 0.2s;
  }

  .bp-share__btn:hover {
    transform: translateY(-2px);
    opacity: 0.9;
  }

  .bp-share__btn--fb,
  .bp-share__btn--facebook { background: #1877f2; }
  .bp-share__btn--tw,
  .bp-share__btn--twitter { background: #000000; }
  .bp-share__btn--wa,
  .bp-share__btn--whatsapp { background: #25d366; }
  .bp-share__btn--pinterest { background: #e60023; }

  .bp-author-card {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 2.4rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    margin: 3.5rem 0;
  }

  .bp-author-card__avatar {
    width: 6.4rem;
    height: 6.4rem;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
  }

  .bp-author-card__name {
    font-family: var(--ff-heading);
    font-weight: 800;
    font-size: 1.6rem;
    color: #0f172a;
    display: block;
    margin-bottom: 0.4rem;
  }

  .bp-author-card__bio {
    font-size: 1.35rem;
    color: #64748b;
    margin: 0;
    line-height: 1.5;
  }

  .bp-nav,
  .bp-prevnext {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.6rem;
    margin: 3.5rem 0;
  }

  @media (min-width: 640px) {
    .bp-nav,
    .bp-prevnext {
      grid-template-columns: 1fr 1fr;
    }
  }

  .bp-nav__link,
  .bp-prevnext__link {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    padding: 1.6rem 2rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    text-decoration: none;
    transition: all 0.2s;
  }

  .bp-nav__link:hover,
  .bp-prevnext__link:hover {
    border-color: #f59e0b;
    background: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  }

  .bp-nav__label,
  .bp-prevnext__label {
    display: block;
    font-size: 1.15rem;
    text-transform: uppercase;
    color: #94a3b8;
    font-weight: 700;
    margin-bottom: 0.2rem;
  }

  .bp-nav__title,
  .bp-prevnext__title {
    display: block;
    font-family: var(--ff-heading);
    font-size: 1.4rem;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.3;
  }

  /* Sidebar */
  .bp-sidebar {
    display: flex;
    flex-direction: column;
    gap: 3rem;
  }

  .bp-widget {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 2.2rem;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.03);
  }

  .bp-widget__title {
    font-family: var(--ff-heading);
    font-size: 1.65rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 1.6rem;
    padding-bottom: 0.8rem;
    border-bottom: 2px solid #f1f5f9;
  }

  .bp-search-form {
    display: flex;
    border: 1.5px solid #e2e8f0;
    border-radius: 10px;
    overflow: hidden;
  }

  .bp-search-form__input {
    flex: 1;
    border: none;
    padding: 1rem 1.4rem;
    font-size: 1.4rem;
    outline: none;
  }

  .bp-search-form__btn {
    background: #0f172a;
    color: #ffffff;
    border: none;
    padding: 0 1.6rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .bp-cat-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
  }

  .bp-cat-item__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.8rem 1.2rem;
    background: #f8fafc;
    border-radius: 8px;
    font-size: 1.35rem;
    font-weight: 600;
    color: #334155;
    text-decoration: none;
    transition: all 0.15s;
  }

  .bp-cat-item__link:hover {
    background: #0f172a;
    color: #ffffff;
  }

  .bp-cat-item__count {
    background: rgba(0, 0, 0, 0.08);
    padding: 0.2rem 0.8rem;
    border-radius: 12px;
    font-size: 1.15rem;
    font-weight: 700;
  }

  .bp-recent-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 1.4rem;
  }

  .bp-recent-item__link {
    display: flex;
    gap: 1.2rem;
    align-items: center;
    text-decoration: none;
  }

  .bp-recent-item__img {
    width: 6.4rem;
    height: 6.4rem;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
  }

  .bp-recent-item__img--placeholder {
    background: #f1f5f9;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #94a3b8;
  }

  .bp-recent-item__title {
    font-family: var(--ff-heading);
    font-size: 1.35rem;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .bp-recent-item__date {
    font-size: 1.15rem;
    color: #94a3b8;
    margin-top: 0.3rem;
    display: block;
  }

  .bp-cta-card {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: #ffffff;
    border-radius: 12px;
    padding: 2.4rem;
    text-align: center;
  }

  .bp-cta-card__badge {
    background: #f59e0b;
    color: #0f172a;
    font-size: 1.15rem;
    font-weight: 800;
    text-transform: uppercase;
    padding: 0.3rem 1rem;
    border-radius: 20px;
    display: inline-block;
    margin-bottom: 1.2rem;
  }

  .bp-cta-card__title {
    font-family: var(--ff-heading);
    font-size: 1.85rem;
    font-weight: 800;
    color: #ffffff;
    margin-bottom: 1rem;
    line-height: 1.3;
  }

  .bp-cta-card__desc {
    font-size: 1.3rem;
    color: #cbd5e1;
    margin-bottom: 1.8rem;
    line-height: 1.5;
  }

  .bp-cta-card__btn {
    display: inline-block;
    background: #f59e0b;
    color: #0f172a;
    font-family: var(--ff-heading);
    font-weight: 800;
    font-size: 1.35rem;
    padding: 1.1rem 2.2rem;
    border-radius: 8px;
    text-decoration: none;
    box-shadow: none;
    transition: background 0.2s, transform 0.15s;
  }

  .bp-cta-card__btn:hover {
    background: #d97706;
    color: #ffffff;
    transform: translateY(-2px);
  }

  .bp-tag-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
  }

  .bp-tag-link {
    background: #f1f5f9;
    color: #475569;
    font-size: 1.25rem;
    font-weight: 600;
    padding: 0.5rem 1.1rem;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.15s;
  }

  .bp-tag-link:hover {
    background: #0f172a;
    color: #ffffff;
  }

  /* ===============================================================
     TOUR CARD ALT 2 (.tc2) & RELATED TOURS SWIPER
     =============================================================== */
  .related-tours-swiper {
    position: relative;
    overflow: hidden;
    padding: 1.5rem 0.5rem 5rem !important;
    width: 100%;
  }

  .related-tours-swiper .swiper-wrapper {
    display: flex;
    align-items: stretch;
  }

  .related-tours-swiper .swiper-slide {
    height: auto;
    display: flex;
    box-sizing: border-box;
  }

  .related-tours-swiper .swiper-slide > * {
    width: 100%;
  }

  /* Card Styling */
  .tc2 {
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    height: 100%;
  }

  .tc2:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    border-color: #cbd5e1;
  }

  .tc2__img-wrap {
    position: relative;
    width: 100%;
    height: 240px;
    overflow: hidden;
    background: #f1f5f9;
  }

  .tc2__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
    display: block;
  }

  .tc2:hover .tc2__img {
    transform: scale(1.06);
  }

  .tc2__img-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8fafc;
    color: #94a3b8;
  }

  .tc2__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 2rem;
  }

  .tc2__title {
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 1.8rem;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.35;
    margin-bottom: 1.4rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 4.8rem;
  }

  .tc2__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.2rem;
    font-size: 1.25rem;
    color: #64748b;
    margin-bottom: 2rem;
    padding-bottom: 1.4rem;
    border-bottom: 1px solid #f1f5f9;
  }

  .tc2__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
  }

  .tc2__meta-item .material-icons-outlined {
    font-size: 1.6rem;
    color: #94a3b8;
  }

  .tc2__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 0.5rem;
  }

  .tc2__price-wrap {
    display: flex;
    flex-direction: column;
  }

  .tc2__price-original {
    font-size: 1.25rem;
    color: #94a3b8;
    text-decoration: line-through;
    line-height: 1;
    margin-bottom: 0.3rem;
  }

  .tc2__price {
    display: flex;
    align-items: baseline;
    gap: 0.3rem;
  }

  .tc2__price-amount {
    font-family: var(--ff-heading, 'Montserrat', sans-serif);
    font-size: 2.2rem;
    font-weight: 800;
    color: #f59e0b;
    line-height: 1;
  }

  .tc2__price-label {
    font-size: 1.2rem;
    color: #64748b;
    font-weight: 600;
  }

  .tc2__price-empty {
    font-size: 1.4rem;
    font-weight: 700;
    color: #f59e0b;
  }

  .tc2__rating {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 1.35rem;
    font-weight: 700;
    color: #0f172a;
  }

  .tc2__star {
    color: #f59e0b;
    font-size: 1.8rem;
  }

  .tc2__rating-count {
    color: #94a3b8;
    font-size: 1.2rem;
    font-weight: 500;
  }

  /* Swiper Navigation & Pagination */
  .related-swiper-prev,
  .related-swiper-next {
    width: 4.4rem !important;
    height: 4.4rem !important;
    background: #ffffff !important;
    color: #0f172a !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
    border: 1px solid #e2e8f0 !important;
    transition: all 0.2s ease !important;
    top: 40% !important;
    z-index: 10 !important;
  }

  .related-swiper-prev:hover,
  .related-swiper-next:hover {
    background: #f59e0b !important;
    color: #ffffff !important;
    border-color: #f59e0b !important;
    transform: scale(1.08) !important;
  }

  .related-swiper-prev::after,
  .related-swiper-next::after {
    font-size: 1.6rem !important;
    font-weight: 800 !important;
  }

  .related-swiper-pagination .swiper-pagination-bullet {
    width: 1rem !important;
    height: 1rem !important;
    background: #cbd5e1 !important;
    opacity: 1 !important;
    transition: all 0.25s !important;
  }

  .related-swiper-pagination .swiper-pagination-bullet-active {
    background: #f59e0b !important;
    width: 2.8rem !important;
    border-radius: 10px !important;
  }

  /* ===============================================================
     PERSONALIZA TU TRASLADO (CUSTOM TRANSFER PAGE)
     =============================================================== */
  .tp-customize-form-card {
    background: #ffffff;
    border-radius: 1.6rem;
    padding: 3.5rem;
    border: 1px solid #e2e8f0;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  }

  @media (max-width: 640px) {
    .tp-customize-form-card {
      padding: 2rem 1.5rem;
    }
  }

  .tp-customize-form-card__title {
    font-family: var(--ff-heading);
    font-size: 2.4rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.8rem;
  }

  .tp-customize-form-card__subtitle {
    font-size: 1.5rem;
    color: #64748b;
    line-height: 1.5;
  }

  .tp-form-block {
    background: #f8fafc;
    border-radius: 1.2rem;
    padding: 2.4rem;
    border: 1px solid #f1f5f9;
  }

  .tp-form-block__title {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-family: var(--ff-heading);
    font-size: 1.7rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.6rem;
  }

  .tp-form-block__title .material-icons-outlined {
    color: var(--c-primary, #f2b90b);
    font-size: 2.2rem;
  }

  .tp-form-block__hint {
    font-size: 1.35rem;
    color: #64748b;
    margin-bottom: 1.2rem;
  }

  .tp-form-group {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .tp-form-group label {
    font-family: var(--ff-heading);
    font-size: 1.35rem;
    font-weight: 600;
    color: #334155;
  }

  .tp-form-input {
    width: 100%;
    padding: 1.1rem 1.4rem;
    background: #ffffff;
    border: 1.5px solid #cbd5e1;
    border-radius: 0.8rem;
    font-family: var(--ff-body);
    font-size: 1.4rem;
    color: #1e293b;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
  }

  .tp-form-input:focus {
    border-color: var(--c-primary, #f2b90b);
    box-shadow: 0 0 0 3px rgba(242, 185, 11, 0.2);
  }

  /* Vehicle Selection Cards (Without Price) */
  .tp-vehicle-card-select {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border: 2px solid #e2e8f0;
    border-radius: 1.2rem;
    padding: 1.4rem;
    cursor: pointer;
    transition: all 0.25s ease;
    text-align: center;
  }

  .tp-vehicle-card-select:hover {
    border-color: #cbd5e1;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
  }

  .tp-vehicle-card-select--active {
    border-color: var(--c-primary, #f2b90b) !important;
    background: #fffdf5 !important;
    box-shadow: 0 8px 24px rgba(242, 185, 11, 0.2) !important;
  }

  .tp-vehicle-card-select__img {
    width: 100%;
    height: 11rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    overflow: hidden;
    border-radius: 0.8rem;
    background: #f8fafc;
  }

  .tp-vehicle-card-select__img img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
  }

  .tp-vehicle-card-select:hover .tp-vehicle-card-select__img img {
    transform: scale(1.05);
  }

  .tp-vehicle-card-select__name {
    font-family: var(--ff-heading);
    font-size: 1.45rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.8rem;
  }

  .tp-vehicle-card-select__specs {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.2rem;
    font-size: 1.25rem;
    color: #64748b;
  }

  .tp-vehicle-card-select__specs span {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
  }

  .tp-vehicle-card-select__specs .material-icons-outlined {
    font-size: 1.6rem;
    color: #94a3b8;
  }

  .tp-vehicle-card-select__check {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
    color: #cbd5e1;
    font-size: 2rem;
    transition: color 0.2s ease, transform 0.2s ease;
  }

  .tp-vehicle-card-select--active .tp-vehicle-card-select__check {
    color: var(--c-primary, #f2b90b);
    transform: scale(1.15);
  }

  .tp-btn-submit-transfer {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    background: #25d366;
    color: #ffffff;
    font-family: var(--ff-heading);
    font-weight: 700;
    font-size: 1.6rem;
    padding: 1.4rem 3.2rem;
    border-radius: 999px;
    border: none;
    cursor: pointer;
    box-shadow: 0 8px 24px rgba(37, 211, 102, 0.35);
    transition: all 0.25s ease;
  }

  .tp-btn-submit-transfer:hover {
    background: #1eb857;
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(37, 211, 102, 0.45);
    color: #ffffff;
  }

  .tp-form-actions__guarantee {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.35rem;
    color: #64748b;
  }

  .tp-form-actions__guarantee .material-icons-outlined {
    color: #10b981;
    font-size: 1.8rem;
  }

  /* Inclusions & Exclusions Card (Servicio CPT) */
  .tp-inclusions-card {
    background: #ffffff;
    border-radius: 1.4rem;
    padding: 2.8rem;
    border: 1.5px solid #e2e8f0;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
  }

  .tp-inc-col {
    background: #f8fafc;
    border-radius: 1.2rem;
    padding: 2.2rem;
    border: 1px solid #e2e8f0;
  }

  .tp-inc-col--includes {
    border-top: 4px solid #10b981;
  }

  .tp-inc-col--excludes {
    border-top: 4px solid #ef4444;
  }

  .tp-inc-col__title {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-family: var(--ff-heading);
    font-size: 1.7rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 1.6rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e2e8f0;
  }

  .tp-inc-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .tp-inc-list li {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    font-size: 1.35rem;
    color: #334155;
    line-height: 1.5;
  }

  .tp-inc-icon {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    font-weight: 800;
    flex-shrink: 0;
    margin-top: 0.2rem;
  }

  .tp-inc-icon.check {
    background: #dcfce7;
    color: #15803d;
  }

  .tp-inc-icon.cross {
    background: #fee2e2;
    color: #b91c1c;
  }

  .tp-inc-text {
    flex: 1;
  }

  /* ===============================================================
     SINGLE SERVICIO TRANSFER (INCA MOVE EDITORIAL OPEN LAYOUT)
     =============================================================== */
  .tp-single-service-page {
    background-color: #ffffff;
    color: #334155;
  }

  /* 1. Hero 40vh con overlay de 0.5 y textos nítidos en blanco puro */
  .tp-service-hero {
    position: relative;
    background-color: #0f172a !important;
    background-size: cover;
    background-position: center 35%;
    background-repeat: no-repeat;
    height: 40vh;
    min-height: 360px;
    max-height: 500px;
    display: flex;
    align-items: stretch;
    overflow: hidden;
  }

  .tp-service-hero__overlay {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 4rem 0 3rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.55) 100%) !important;
    color: #ffffff;
  }

  .tp-service-hero__content-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.2rem;
    max-width: 960px;
  }

  .tp-breadcrumbs--light {
    margin-bottom: 0.4rem !important;
  }

  .tp-breadcrumbs--light a {
    color: #ffffff !important;
    font-size: 1.25rem;
    font-weight: 700;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8);
    transition: color 0.2s ease;
  }

  .tp-breadcrumbs--light a:hover {
    color: #F2B90B !important;
  }

  .tp-breadcrumbs--light .tp-breadcrumbs__sep {
    color: rgba(255, 255, 255, 0.8) !important;
    font-weight: 700;
  }

  .tp-breadcrumbs--light .tp-breadcrumbs__current {
    color: #ffffff !important;
    font-size: 1.25rem;
    font-weight: 800;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8);
  }

  .tp-service-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    background: rgba(0, 0, 0, 0.55);
    color: #ffffff;
    border: 1.5px solid rgba(255, 255, 255, 0.35);
    padding: 0.5rem 1.4rem;
    border-radius: 999px;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(8px);
  }

  .tp-service-hero__badge .material-icons-outlined {
    font-size: 1.6rem;
    color: #F2B90B;
  }

  .tp-service-hero__title {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: clamp(2.8rem, 4.2vw, 4rem);
    font-weight: 800;
    color: #ffffff !important;
    line-height: 1.18;
    margin: 0.4rem 0 1rem;
    text-shadow: 0 3px 14px rgba(0, 0, 0, 0.9);
  }

  /* Clean Open Route Bar in Hero (Sin fondo de caja ni precio) */
  .tp-service-hero-route-bar {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2.4rem;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0.4rem 0 0 !important;
    margin-top: 0.2rem;
  }

  @media (max-width: 640px) {
    .tp-service-hero-route-bar {
      gap: 1.4rem;
      width: 100%;
    }
  }

  .tp-route-bar__point {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
  }

  .tp-route-bar__label {
    font-size: 1.15rem;
    font-weight: 800;
    color: #F2B90B !important;
    letter-spacing: 0.08em;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.85);
  }

  .tp-route-bar__val {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.65rem;
    font-weight: 800;
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9);
  }

  .text-gold {
    color: #F2B90B !important;
  }

  .tp-route-bar__val .text-gold {
    color: #F2B90B;
    font-size: 2.2rem;
  }

  .tp-route-bar__arrow {
    color: #ffffff;
    display: flex;
    align-items: center;
    margin-top: 1.4rem;
    opacity: 0.9;
  }

  .tp-route-bar__arrow .material-icons-outlined {
    font-size: 2.4rem;
    color: #F2B90B;
  }

  /* 2. Trust Bar Section (4 Highlights - Sin fondo de sección, cada elemento como Card con 10px radius) */
  .tp-trust-bar-section {
    background: transparent !important;
    border: none !important;
    padding: 3.5rem 0 1rem !important;
  }

  .tp-trust-grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 1.8rem;
  }

  @media (min-width: 600px) {
    .tp-trust-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 1024px) {
    .tp-trust-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  .tp-trust-item-box {
    background: #ffffff;
    border: 1.5px solid #e2e8f0;
    border-radius: 10px !important;
    padding: 1.8rem 1.6rem;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.03);
    display: flex;
    align-items: center;
    gap: 1.4rem;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .tp-trust-item-box:hover {
    border-color: var(--c-primary, #f2b90b);
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(242, 185, 11, 0.18);
  }

  .tp-trust-icon-wrapper {
    width: 4.8rem;
    height: 4.8rem;
    border-radius: 10px !important;
    background: #fffdf0;
    border: 1px solid #fdecab;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .tp-trust-icon {
    font-size: 2.6rem;
    color: #d99a00;
  }

  .tp-trust-text {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }

  .tp-trust-text strong {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.45rem;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.25;
  }

  .tp-trust-text span {
    font-size: 1.25rem;
    color: #64748b;
    line-height: 1.35;
  }

  /* 3. Layout Principal 70/30 (Open Sections - Sin Card envoltura) */
  .tp-service-main-wrapper {
    padding-top: 4.5rem;
    padding-bottom: 6rem;
  }

  .tp-single-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 4rem;
    align-items: start;
  }

  @media (max-width: 1024px) {
    .tp-single-layout {
      grid-template-columns: 1fr;
      gap: 3.5rem;
    }
  }

  .tp-service-content-col {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4.8rem; /* Espaciado limpio entre secciones */
  }

  /* Open Section Block (NO CARD) */
  .tp-service-section {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0;
  }

  .tp-section-heading {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 2.2rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 1.8rem;
    line-height: 1.3;
  }

  .tp-section-subheading {
    font-size: 1.5rem;
    color: #64748b;
    margin-bottom: 2.4rem;
    margin-top: -0.8rem;
  }

  /* Inclusions Grid - Open List (NO CARD) */
  .tp-inclusions-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3.2rem;
  }

  @media (min-width: 768px) {
    .tp-inclusions-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 4rem;
    }
  }

  .tp-inc-col {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }

  .tp-inc-col--includes,
  .tp-inc-col--excludes {
    border-top: none !important;
  }

  .tp-inc-col__title {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.8rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-bottom: 1.6rem;
    padding-bottom: 0.8rem;
    border-bottom: 1px solid #e2e8f0;
  }

  .tp-inc-col--includes .tp-inc-col__title {
    color: #15803d;
  }

  .tp-inc-col--includes .tp-inc-col__title .material-icons-outlined {
    color: #16a34a;
    font-size: 2.2rem;
  }

  .tp-inc-col--excludes .tp-inc-col__title {
    color: #b91c1c;
  }

  .tp-inc-col--excludes .tp-inc-col__title .material-icons-outlined {
    color: #dc2626;
    font-size: 2.2rem;
  }

  .tp-inc-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .tp-inc-list li {
    display: flex;
    align-items: flex-start;
    gap: 1.2rem;
    font-size: 1.5rem;
    line-height: 1.55;
    color: #334155;
  }

  .tp-inc-icon {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 50% !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    font-weight: 800;
    flex-shrink: 0;
    margin-top: 0.2rem;
  }

  .tp-inc-icon.check {
    background: #dcfce7;
    color: #15803d;
  }

  .tp-inc-icon.cross {
    background: #fee2e2;
    color: #b91c1c;
  }

  /* Vehicle Selection Cards (10px radius) */
  /* Vehicle Selection Cards (Grid 2x2 Horizontal - 10px radius) */
  .tp-vehicles-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.8rem;
  }

  @media (max-width: 768px) {
    .tp-vehicles-grid {
      grid-template-columns: 1fr;
    }
  }

  .tp-vehicle-item-card {
    background: #ffffff;
    border: 1.5px solid #e2e8f0;
    border-radius: 10px !important;
    overflow: hidden;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.03);
    cursor: pointer;
    user-select: none;
  }

  @media (max-width: 480px) {
    .tp-vehicle-item-card {
      flex-direction: column;
    }
  }

  .tp-vehicle-item-card:hover,
  .tp-vehicle-item-card--active {
    border-color: #F2B90B !important;
    border-width: 2px !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(242, 185, 11, 0.25) !important;
  }

  .tp-vehicle-item-card__img {
    width: 140px;
    min-width: 140px;
    background: #f8fafc;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.2rem;
    border-radius: 10px 0 0 10px !important;
    border-right: 1px solid #f1f5f9;
  }

  @media (max-width: 480px) {
    .tp-vehicle-item-card__img {
      width: 100%;
      height: 12rem;
      border-radius: 10px 10px 0 0 !important;
      border-right: none;
      border-bottom: 1px solid #f1f5f9;
    }
  }

  .tp-vehicle-item-card__img img {
    max-height: 90px;
    max-width: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
  }

  .tp-vehicle-item-card:hover .tp-vehicle-item-card__img img {
    transform: scale(1.08);
  }

  .tp-vehicle-item-card__body {
    padding: 1.6rem 1.8rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
    text-align: left;
    min-width: 0;
  }

  .tp-vehicle-item-card__info h4 {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.6rem;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 0.5rem;
    line-height: 1.3;
  }

  .tp-vehicle-item-card__meta {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    font-size: 1.25rem;
    color: #64748b;
    margin-bottom: 0.8rem;
    flex-wrap: wrap;
  }

  .tp-vehicle-item-card__meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
  }

  .tp-vehicle-item-card__meta .material-icons-outlined {
    font-size: 1.6rem;
    color: #94a3b8;
  }

  .tp-vehicle-item-card__bottom {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid #f1f5f9;
  }

  .tp-vehicle-item-card__price {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
  }

  .tp-vehicle-item-card__price strong {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 2.2rem;
    font-weight: 800;
    color: #0f172a;
  }

  .tp-vehicle-item-card__price small {
    font-size: 1.2rem;
    color: #64748b;
    font-weight: 600;
  }

  .tp-btn-vehicle-book {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1.1rem 1.6rem;
    background: #0f172a;
    color: #ffffff;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-weight: 800;
    font-size: 1.35rem;
    border-radius: 10px !important;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.2s ease;
    letter-spacing: 0.03em;
  }

  .tp-btn-vehicle-book:hover {
    background: #F2B90B;
    color: #0f172a;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(242, 185, 11, 0.35);
  }

  .tp-btn-vehicle-book--active {
    background: #F2B90B !important;
    color: #0f172a !important;
    font-weight: 800 !important;
    box-shadow: 0 4px 14px rgba(242, 185, 11, 0.35);
  }

  /* FAQs List (10px radius) */
  .tp-faq-list {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .tp-faq-list .faq-item {
    border: 1px solid #e2e8f0;
    border-radius: 10px !important;
    background: #ffffff;
    overflow: hidden;
    transition: all 0.2s ease;
  }

  .tp-faq-list .faq-item[open] {
    border-color: #cbd5e1;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
  }

  .tp-faq-list .faq-item summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.6rem 2rem;
    cursor: pointer;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    list-style: none;
    user-select: none;
  }

  .tp-faq-list .faq-item summary::-webkit-details-marker {
    display: none;
  }

  .tp-faq-list .faq-item__title {
    font-size: 1.55rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
  }

  .tp-faq-list .faq-item summary .icon {
    font-size: 2.2rem;
    color: #64748b;
    transition: transform 0.25s ease;
  }

  .tp-faq-list .faq-item[open] summary .icon {
    transform: rotate(180deg);
    color: var(--c-primary, #f2b90b);
  }

  .tp-faq-list .faq-item__body {
    padding: 0 2rem 1.8rem;
    font-size: 1.45rem;
    color: #475569;
    line-height: 1.7;
    border-top: 1px solid #f1f5f9;
    padding-top: 1.4rem;
  }

  /* Reviews Block (Trustindex / TripAdvisor) */
  .tp-reviews-trustindex-container {
    width: 100%;
    min-height: 100px;
    overflow: hidden;
    border-radius: 10px !important;
  }

  .tp-reviews-trustindex-container iframe,
  .tp-reviews-trustindex-container .ti-widget {
    max-width: 100% !important;
    border-radius: 10px !important;
  }

  .tp-reviews-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  @media (min-width: 768px) {
    .tp-reviews-grid {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  .tp-review-badge-box {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px !important;
    padding: 2.4rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .tp-review-score {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-weight: 800;
    font-size: 1.9rem;
    color: #0f172a;
  }

  .tp-review-stars {
    color: #10b981;
    font-size: 2.2rem;
    letter-spacing: 3px;
    margin: 0.4rem 0;
  }

  .tp-review-meta {
    color: #64748b;
    font-size: 1.25rem;
    margin: 0;
  }

  .tp-ta-logo {
    display: inline-block;
    margin-top: 1rem;
    font-weight: 800;
    color: #00aa6c;
    font-size: 1.45rem;
    letter-spacing: 0.05em;
  }

  .tp-review-item-box {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px !important;
    padding: 2.2rem;
    display: flex;
    flex-direction: column;
  }

  .tp-review-user {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.4rem;
  }

  .tp-review-user strong {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.4rem;
    color: #0f172a;
  }

  .tp-review-date {
    font-size: 1.15rem;
    color: #94a3b8;
  }

  .tp-review-stars-mini {
    color: #10b981;
    font-size: 1.4rem;
    margin-bottom: 0.8rem;
  }

  .tp-review-text {
    font-size: 1.35rem;
    color: #475569;
    font-style: italic;
    line-height: 1.6;
    margin: 0;
  }

  /* 4. Right Column 30% Sticky Aside (Route Details + Booking Engine - 10px radius) */
  .tp-rail-aside {
    position: -webkit-sticky;
    position: sticky;
    top: 9rem;
    align-self: flex-start;
    z-index: 20;
  }

  .tp-aside-sticky-wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  /* Tarjeta 1: Detalles de la Ruta (Sobrio con bordes y colores corporativos) */
  .tp-route-details-card {
    background: #ffffff;
    border-radius: 10px !important;
    padding: 2.4rem 2.2rem;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
  }

  .tp-route-details-card__title {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.8rem;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 1.8rem;
    padding-bottom: 1.2rem;
    border-bottom: 1px solid #f1f5f9;
  }

  .tp-route-details-card__points {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
    margin-bottom: 2rem;
    position: relative;
    padding-left: 2.2rem;
  }

  .tp-route-details-card__points::before {
    content: '';
    position: absolute;
    left: 0.6rem;
    top: 1.2rem;
    bottom: 1.2rem;
    width: 2px;
    background: #e2e8f0;
  }

  .tp-rd-point {
    position: relative;
  }

  .tp-rd-bullet {
    position: absolute;
    left: -2.2rem;
    top: 0.4rem;
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 50%;
    background: #ffffff;
    border: 3px solid #25D366;
  }

  .tp-rd-bullet.end {
    border-color: #F2B90B;
  }

  .tp-rd-info small {
    display: block;
    font-size: 1.05rem;
    font-weight: 700;
    color: #94a3b8;
    letter-spacing: 0.06em;
  }

  .tp-rd-info strong {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.45rem;
    color: #0f172a;
    line-height: 1.3;
  }

  .tp-route-details-card__meta {
    background: #fbfbfb;
    border-radius: 10px !important;
    padding: 1.4rem 1.6rem;
    border: 1px solid #f1f5f9;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 0;
  }

  .tp-rd-meta-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.35rem;
  }

  .tp-rd-meta-row span {
    color: #64748b;
  }

  .tp-rd-meta-row strong {
    color: #0f172a;
    font-weight: 700;
  }

  .tp-rd-price-highlight {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
  }

  .tp-rd-price-highlight small {
    font-size: 1.2rem;
    color: #64748b;
    font-weight: 600;
  }

  .tp-route-details-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }

  .tp-btn-scroll-booking {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #F2B90B;
    color: #0f172a;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-weight: 800;
    font-size: 1.3rem;
    padding: 1.2rem 1.4rem;
    border-radius: 10px !important;
    border: none;
    cursor: pointer;
    letter-spacing: 0.05em;
    transition: all 0.2s ease;
  }

  .tp-btn-scroll-booking:hover {
    background: #df9b00;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(242, 185, 11, 0.35);
  }

  .tp-btn-wa-direct {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: #25D366;
    border: 1.5px solid #25D366;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-weight: 800;
    font-size: 1.3rem;
    padding: 1.2rem 1.2rem;
    border-radius: 10px !important;
    text-decoration: none;
    transition: all 0.2s ease;
    text-align: center;
    letter-spacing: 0.05em;
  }

  .tp-btn-wa-direct:hover {
    background: #25D366;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
  }

  /* Tarjeta 2: Motor de Reserva Interactivo (Sobrio con bordes y acentos corporativos) */
  .tp-booking-aside-card {
    background: #ffffff;
    border-radius: 10px !important;
    padding: 2.2rem;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  /* Selected Vehicle Banner */
  .tp-selected-vehicle-banner {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px !important;
    padding: 1.4rem 1.6rem;
    display: flex;
    align-items: center;
    gap: 1.4rem;
  }

  .tp-selected-vehicle-banner .material-icons-outlined {
    font-size: 2.6rem;
    color: #F2B90B;
  }

  .tp-sv-info small {
    display: block;
    font-size: 1.05rem;
    font-weight: 700;
    color: #94a3b8;
    letter-spacing: 0.06em;
  }

  .tp-sv-info strong {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.55rem;
    font-weight: 800;
    color: #0f172a;
  }

  /* Aside Step Layout */
  .tp-aside-step {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .tp-aside-step__header {
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .tp-aside-step__num {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    background: #F2B90B;
    color: #0f172a;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-weight: 800;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .tp-aside-step__title {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.6rem;
    font-weight: 700;
    color: #0f172a;
  }

  .tp-aside-step__text {
    display: flex;
    flex-direction: column;
  }

  .tp-aside-date-sub {
    font-size: 1.2rem;
    color: #64748b;
    margin-top: 0.2rem;
  }

  /* Mini Calendar (Sober & Crisp) */
  .tp-mini-calendar {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px !important;
    padding: 1.4rem;
  }

  .tp-cal-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.2rem;
  }

  .tp-cal-month-label {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.3rem;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: 0.05em;
  }

  .tp-cal-nav-btn {
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #475569;
    transition: all 0.2s ease;
  }

  .tp-cal-nav-btn:hover {
    background: #F2B90B;
    color: #0f172a;
    border-color: #F2B90B;
  }

  .tp-cal-weekdays {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    text-align: center;
    font-size: 1.15rem;
    font-weight: 700;
    color: #94a3b8;
    margin-bottom: 0.8rem;
  }

  .tp-cal-days-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.4rem;
  }

  .tp-cal-day {
    aspect-ratio: 1/1;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    font-size: 1.25rem;
    font-weight: 600;
    color: #0f172a;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    padding: 0;
  }

  .tp-cal-day:hover:not(.tp-cal-day--disabled) {
    border-color: #F2B90B;
    background: #fffdf5;
  }

  .tp-cal-day--selected {
    background: #F2B90B !important;
    border-color: #F2B90B !important;
    color: #0f172a !important;
    font-weight: 800 !important;
  }

  .tp-cal-day--disabled {
    background: #f8fafc !important;
    border-color: #f1f5f9 !important;
    color: #cbd5e1 !important;
    cursor: not-allowed !important;
  }

  .tp-cal-day--empty {
    border: none !important;
    background: transparent !important;
    cursor: default !important;
  }

  .tp-cal-footer-legend {
    margin-top: 1.2rem;
    padding-top: 1rem;
    border-top: 1px solid #f1f5f9;
  }

  .tp-cal-help-text {
    font-size: 1.15rem;
    color: #64748b;
    margin: 0 0 0.6rem;
    line-height: 1.4;
  }

  .tp-cal-legend-items {
    display: flex;
    gap: 1.4rem;
    flex-wrap: wrap;
  }

  .tp-cal-legend-item {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.1rem;
    color: #64748b;
  }

  .tp-cal-dot {
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 4px;
    display: inline-block;
  }

  .tp-cal-dot.selected {
    background: #F2B90B;
  }

  .tp-cal-dot.disabled {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
  }

  /* Vehicle Select Dropdown (Sober) */
  .tp-vehicle-dropdown-wrapper {
    position: relative;
  }

  .tp-vehicle-select {
    width: 100%;
    padding: 1.3rem 1.4rem;
    border: 1px solid #e2e8f0;
    border-radius: 10px !important;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.4rem;
    font-weight: 700;
    color: #0f172a;
    background: #ffffff;
    cursor: pointer;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    outline: none;
  }

  .tp-vehicle-select:focus {
    border-color: #F2B90B;
    box-shadow: 0 0 0 3px rgba(242, 185, 11, 0.15);
  }

  /* Pax Counter Stepper */
  .tp-aside-pax-control {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 0.5rem;
  }

  .tp-aside-pax-label {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.5rem;
    font-weight: 700;
    color: #0f172a;
  }

  .tp-aside-pax-stepper {
    display: inline-flex;
    align-items: center;
    border: 1px solid #e2e8f0;
    border-radius: 10px !important;
    background: #ffffff;
    padding: 0.3rem;
  }

  .tp-pax-step-btn {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 8px !important;
    background: #ffffff;
    border: none;
    font-size: 1.6rem;
    font-weight: 700;
    color: #0f172a;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
  }

  .tp-pax-step-btn:hover {
    background: #F2B90B;
    color: #0f172a;
  }

  .tp-aside-pax-count {
    min-width: 3.6rem;
    text-align: center;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.5rem;
    font-weight: 800;
    color: #0f172a;
  }

  /* Price Summary Box (Sober border without background) */
  .tp-aside-price-summary {
    background: #ffffff;
    border-top: 1px solid #f1f5f9;
    border-bottom: 1px solid #f1f5f9;
    padding: 1.4rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .tp-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
  }

  .tp-summary-row.main span {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 1.5rem;
    font-weight: 700;
    color: #0f172a;
  }

  .tp-summary-row.main strong {
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-size: 2.6rem;
    font-weight: 800;
    color: #0f172a;
  }

  .tp-summary-row.sub span:first-child {
    font-size: 1.25rem;
    color: #64748b;
  }

  .tp-summary-row.sub span:last-child {
    font-size: 1.35rem;
    font-weight: 600;
    color: #475569;
  }

  /* Action Buttons */
  .tp-aside-booking-actions {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .tp-btn-book-checkout {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #F2B90B;
    color: #0f172a;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-weight: 800;
    font-size: 1.5rem;
    padding: 1.4rem 2rem;
    border-radius: 10px !important;
    border: none;
    cursor: pointer;
    letter-spacing: 0.06em;
    transition: all 0.2s ease;
  }

  .tp-btn-book-checkout:hover {
    background: #df9b00;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(242, 185, 11, 0.35);
  }

  .tp-btn-wa-aside {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    background: transparent;
    color: #25D366;
    border: 1.5px solid #25D366;
    font-family: var(--ff-heading, "Montserrat", sans-serif);
    font-weight: 700;
    font-size: 1.35rem;
    padding: 1.2rem 2rem;
    border-radius: 10px !important;
    text-decoration: none;
    transition: all 0.2s ease;
  }

  .tp-btn-wa-aside:hover {
    background: #25D366;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3);
  }

  .tp-btn-wa-aside--primary {
    background: #25D366 !important;
    color: #ffffff !important;
    border-color: #25D366 !important;
    font-weight: 800 !important;
    font-size: 1.45rem !important;
    padding: 1.4rem 2rem !important;
    letter-spacing: 0.04em !important;
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.35) !important;
  }

  .tp-btn-wa-aside--primary:hover {
    background: #1eb956 !important;
    border-color: #1eb956 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 18px rgba(37, 211, 102, 0.45) !important;
  }

  .tp-aside-group-notice {
    background: #fffbeb;
    border: 1px solid #fef3c7;
    border-radius: 10px !important;
    padding: 1.2rem 1.4rem;
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    font-size: 1.25rem;
    color: #92400e;
    line-height: 1.5;
  }

  .tp-aside-group-notice .material-icons-outlined {
    font-size: 2rem;
    color: #d97706;
    flex-shrink: 0;
    margin-top: 0.1rem;
  }













