:root{--color-primary: #DD1109;--color-primary-dark: #B50C05;--color-primary-medium: #C70E07;--color-primary-light: #EA2C24;--color-primary-soft: #FDF2F1;--color-primary-faint: #FFF8F7;--color-primary-glow: rgba(221, 17, 9, .16);--color-dark: #111111;--color-dark-deep: #0A0A0A;--color-dark-surface: #18191C;--color-dark-border: #27292E;--color-dark-muted: #383C45;--color-accent: #DD1109;--color-accent-hover: #B50C05;--color-accent-light: #EA2C24;--color-accent-soft: #FDF2F1;--color-white: #FFFFFF;--color-bg-body: #FFFFFF;--color-bg-surface: #FFFFFF;--color-bg-subtle: #F6F7F9;--color-bg-brand-gray: #E9EBEA;--color-bg-elevated: #FFFFFF;--color-text-main: #111111;--color-text-body: #2B303A;--color-text-muted: #5E6573;--color-text-light: #8E96A4;--color-text-on-dark: #FFFFFF;--color-text-on-primary: #FFFFFF;--color-border-subtle: #E6E8EC;--color-border-medium: #D1D5DB;--color-border-focus: #DD1109;--color-badge-placeholder-bg: #FFF7ED;--color-badge-placeholder-border: #FDBA74;--color-badge-placeholder-text: #9A3412;--color-tag-confirmed-bg: #ECFDF5;--color-tag-confirmed-border: #A7F3D0;--color-tag-confirmed-text: #065F46;--font-family-base: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-display: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.5;--leading-relaxed: 1.7;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--shadow-xs: 0 1px 2px rgba(17, 17, 17, .04);--shadow-sm: 0 2px 5px rgba(17, 17, 17, .06);--shadow-md: 0 4px 14px rgba(17, 17, 17, .08);--shadow-lg: 0 10px 28px rgba(17, 17, 17, .1);--shadow-xl: 0 20px 45px rgba(17, 17, 17, .12);--shadow-red: 0 8px 24px rgba(221, 17, 9, .25);--shadow-inner: inset 0 2px 4px rgba(17, 17, 17, .04);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-pill: 9999px;--transition-fast: .18s cubic-bezier(.16, 1, .3, 1);--transition-normal: .3s cubic-bezier(.16, 1, .3, 1);--transition-smooth: .45s cubic-bezier(.16, 1, .3, 1);--container-max: 1240px;--container-narrow: 880px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden;max-width:100%}body{font-family:var(--font-family-base);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-body);background-color:var(--color-bg-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;max-width:100%;width:100%;position:relative;padding-top:74px}.skip-link{position:absolute;top:-100px;left:1rem;background-color:var(--color-primary);color:var(--color-white);padding:.75rem 1.5rem;border-radius:var(--radius-sm);z-index:9999;font-weight:600;text-decoration:none;transition:top var(--transition-fast)}.skip-link:focus{top:1rem;outline:3px solid var(--color-accent)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);color:var(--color-text-main);font-weight:700;line-height:var(--leading-snug);letter-spacing:-.015em}h1{font-size:clamp(2rem,4vw + 1rem,3.25rem);line-height:var(--leading-tight)}h2{font-size:clamp(1.75rem,3vw + .5rem,2.5rem)}h3{font-size:clamp(1.25rem,2vw + .25rem,1.75rem)}h4{font-size:1.25rem}p{margin-bottom:var(--space-4);color:var(--color-text-body);font-size:var(--text-base)}p:last-child{margin-bottom:0}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}img,svg{display:block;max-width:100%;height:auto}button{font-family:inherit;cursor:pointer;border:none;background:none}ul,ol{list-style:none}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--space-6);padding-right:var(--space-6)}.container-narrow{width:100%;max-width:var(--container-narrow);margin-left:auto;margin-right:auto;padding-left:var(--space-6);padding-right:var(--space-6)}@media(max-width:480px){.container,.container-narrow{padding-left:var(--space-4);padding-right:var(--space-4)}}.section{padding-top:var(--space-20);padding-bottom:var(--space-20)}@media(max-width:768px){.section{padding-top:var(--space-12);padding-bottom:var(--space-12)}}.section-header{text-align:center;max-width:720px;margin:0 auto var(--space-12) auto}.section-tag{display:inline-flex;align-items:center;gap:var(--space-2);padding:.35rem .85rem;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-4)}.section-tag-accent{background:var(--color-accent-soft);color:var(--color-accent)}.section-title{margin-bottom:var(--space-4)}.section-subtitle{font-size:var(--text-lg);color:var(--color-text-muted);line-height:var(--leading-relaxed)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}address{font-style:normal;display:block}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.85rem 1.65rem;border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:600;line-height:1.2;text-decoration:none;transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;border:1px solid transparent}@media(max-width:480px){.btn{white-space:normal;text-align:center;max-width:100%;padding:.75rem 1.25rem}}.btn-primary{background-color:var(--color-primary);color:var(--color-white);box-shadow:0 4px 14px #dd110947}.btn-primary:hover{background-color:var(--color-primary-dark);color:var(--color-white);transform:translateY(-2px);box-shadow:0 6px 18px #dd110961}.btn-accent{background-color:var(--color-primary);color:var(--color-white);box-shadow:0 4px 14px #dd110947}.btn-accent:hover{background-color:var(--color-primary-dark);color:var(--color-white);transform:translateY(-2px);box-shadow:0 6px 20px #dd110961}.btn-outline{background-color:transparent;color:var(--color-dark);border:1.5px solid var(--color-dark)}.btn-outline:hover{background-color:var(--color-dark);color:var(--color-white);transform:translateY(-2px)}.btn-outline-primary{background-color:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-outline-primary:hover{background-color:var(--color-primary);color:var(--color-white);transform:translateY(-2px)}.btn-outline-white{background-color:transparent;color:var(--color-white);border:1.5px solid rgba(255,255,255,.85)}.btn-outline-white:hover{background-color:#ffffff26;color:var(--color-white)}.btn-sm{padding:.55rem 1.1rem;font-size:var(--text-sm)}.btn-lg{padding:1rem 2rem;font-size:1.05rem}@media(max-width:480px){.btn-lg{padding:.85rem 1.25rem;font-size:var(--text-base)}}.btn-icon{width:20px;height:20px;transition:transform var(--transition-fast)}.btn:hover .btn-icon{transform:translate(3px)}.badge-placeholder{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:var(--radius-xs);background-color:var(--color-badge-placeholder-bg);border:1px dashed var(--color-badge-placeholder-border);color:var(--color-badge-placeholder-text);font-size:var(--text-xs);font-weight:600;letter-spacing:.02em}.placeholder-token{font-family:monospace;background-color:#ad2c2114;color:var(--color-accent);padding:.15rem .45rem;border-radius:var(--radius-xs);border:1px dashed rgba(173,44,33,.35);font-size:.9em;font-weight:500;word-break:break-word}.status-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .65rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600}.status-pill-pending{background:#fffbeb;color:#b45309;border:1px solid #FDE68A}.status-pill-confirmed{background:#ecfdf5;color:#065f46;border:1px solid #A7F3D0}.status-dot{width:6px;height:6px;border-radius:50%;background-color:currentColor}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--space-6)}.service-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-8);display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-sm);transition:all var(--transition-normal);position:relative;overflow:hidden}@media(max-width:576px){.service-card{padding:var(--space-5)}}.service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));opacity:0;transition:opacity var(--transition-fast)}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-border-medium)}.service-card:hover:before{opacity:1}.service-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-5);gap:var(--space-4)}.service-icon-box{width:56px;height:56px;border-radius:50%;background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 14px #dd110938;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.service-card:hover .service-icon-box{transform:scale(1.08);box-shadow:0 6px 18px #dd110959}.service-title{font-size:var(--text-xl);margin-bottom:var(--space-2)}.service-desc{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin-bottom:var(--space-6);flex-grow:1}.service-footer{padding-top:var(--space-4);border-top:1px dashed var(--color-border-subtle);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);flex-wrap:wrap}@media(max-width:480px){.service-footer{flex-direction:column;align-items:stretch}.service-footer .btn{width:100%;text-align:center}}.concept-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-8)}@media(max-width:768px){.concept-grid{grid-template-columns:1fr}}.concept-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm);position:relative;transition:transform var(--transition-normal)}.concept-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.concept-kanji{font-size:2.75rem;line-height:1;color:#111;opacity:1;margin-bottom:var(--space-2);font-family:serif}.concept-word{font-size:var(--text-2xl);font-weight:700;color:var(--color-primary);margin-bottom:var(--space-2);letter-spacing:.05em}.concept-tagline{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);margin-bottom:var(--space-4)}.concept-text{color:var(--color-text-muted);line-height:var(--leading-relaxed)}.differentials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--space-6)}.differential-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-6);transition:all var(--transition-fast)}.differential-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.differential-number{font-size:var(--text-sm);font-weight:700;color:var(--color-accent);margin-bottom:var(--space-3);letter-spacing:.1em}.differential-title{font-size:var(--text-lg);margin-bottom:var(--space-2)}.differential-text{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.accordion{display:flex;flex-direction:column;gap:var(--space-3);max-width:820px;margin:0 auto}.accordion-item{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.accordion-item:hover{border-color:var(--color-border-medium)}.accordion-item.is-open{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.accordion-header{margin:0}.accordion-trigger{width:100%;text-align:left;padding:var(--space-5) var(--space-6);background:none;border:none;font-size:var(--text-lg);font-weight:600;color:var(--color-primary);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);cursor:pointer}@media(max-width:480px){.accordion-trigger{padding:var(--space-4);font-size:var(--text-base)}}.accordion-trigger:focus-visible{outline:2px solid var(--color-accent)}.accordion-chevron{width:20px;height:20px;flex-shrink:0;transition:transform var(--transition-normal);color:var(--color-accent)}.accordion-item.is-open .accordion-chevron{transform:rotate(180deg)}.accordion-panel{max-height:0;overflow:hidden;transition:max-height var(--transition-normal) ease-in-out}.accordion-item.is-open .accordion-panel{max-height:400px}.accordion-body{padding:0 var(--space-6) var(--space-6) var(--space-6);color:var(--color-text-body);font-size:var(--text-base);line-height:var(--leading-relaxed);border-top:1px solid var(--color-border-subtle);padding-top:var(--space-4)}@media(max-width:480px){.accordion-body{padding:0 var(--space-4) var(--space-4) var(--space-4);padding-top:var(--space-3)}}.notice-box{background:var(--color-primary-soft);border-left:4px solid var(--color-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:var(--space-6) var(--space-8);display:flex;align-items:flex-start;gap:var(--space-5);margin-bottom:var(--space-8)}@media(max-width:576px){.notice-box{padding:var(--space-4);gap:var(--space-3)}}.notice-icon{width:28px;height:28px;color:var(--color-primary);flex-shrink:0;margin-top:2px}.floating-whatsapp-btn{position:fixed;bottom:24px;right:24px;z-index:999;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px #25d36666;transition:transform var(--transition-fast),box-shadow var(--transition-fast);text-decoration:none}.floating-whatsapp-btn:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 10px 25px #25d36680;color:#fff}.floating-whatsapp-tooltip{position:absolute;right:68px;background:var(--color-dark);color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(10px);transition:all var(--transition-fast);box-shadow:var(--shadow-md)}.floating-whatsapp-btn:hover .floating-whatsapp-tooltip{opacity:1;transform:translate(0)}.carousel{position:relative;width:100%;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--color-border-subtle);background-color:var(--color-dark-deep);-webkit-user-select:none;user-select:none;outline:none}.carousel:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.carousel-viewport{position:relative;width:100%;height:460px;overflow:hidden}@media(max-width:1100px){.carousel-viewport{height:420px}}@media(max-width:900px){.carousel-viewport{height:380px}}@media(max-width:600px){.carousel-viewport{height:310px}}@media(max-width:420px){.carousel-viewport{height:260px}}.carousel-track{display:flex;width:100%;height:100%;transition:transform .55s cubic-bezier(.25,1,.5,1);will-change:transform}.carousel-slide{min-width:100%;width:100%;height:100%;position:relative;flex-shrink:0;overflow:hidden}.carousel-slide img{width:100%;height:100%;object-fit:cover;display:block}.carousel-badge{position:absolute;top:var(--space-4);left:var(--space-4);z-index:4;display:inline-flex;align-items:center;gap:7px;padding:.38rem .85rem;background:#111c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.06em;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.16);text-transform:uppercase;box-shadow:0 4px 12px #0000004d}.carousel-badge-dot{width:7px;height:7px;border-radius:50%;background-color:var(--color-primary);box-shadow:0 0 8px var(--color-primary);animation:pulseCarouselDot 2s infinite ease-in-out}@keyframes pulseCarouselDot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.7}}.carousel-counter{position:absolute;top:var(--space-4);right:var(--space-4);z-index:4;padding:.35rem .7rem;background:#111c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fffffff2;font-size:.75rem;font-weight:600;letter-spacing:.03em;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.16);box-shadow:0 4px 12px #0000004d;font-variant-numeric:tabular-nums}.carousel-caption{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:var(--space-8) var(--space-5) calc(var(--space-6) + 12px);background:linear-gradient(to top,#0a0a0aeb,#0a0a0aa6 55%,#0a0a0a00);color:var(--color-white);pointer-events:none;transition:opacity var(--transition-fast)}@media(max-width:600px){.carousel-caption{padding:var(--space-6) var(--space-4) calc(var(--space-5) + 14px)}}.carousel-caption-title{font-size:var(--text-base);font-weight:700;color:#fff;margin-bottom:2px;line-height:1.25;text-shadow:0 1px 3px rgba(0,0,0,.6)}@media(max-width:600px){.carousel-caption-title{font-size:var(--text-sm)}}.carousel-caption-desc{font-size:var(--text-xs);color:#ffffffe0;line-height:1.35;text-shadow:0 1px 2px rgba(0,0,0,.6);max-width:92%}@media(max-width:480px){.carousel-caption-desc{display:none}}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:42px;height:42px;border-radius:50%;background:#111111ad;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 12px #0000004d}.carousel-btn:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translateY(-50%) scale(1.08);box-shadow:0 6px 18px #dd110973}.carousel-btn:active{transform:translateY(-50%) scale(.96)}.carousel-btn-prev{left:var(--space-3)}.carousel-btn-next{right:var(--space-3)}@media(max-width:600px){.carousel-btn{width:34px;height:34px}.carousel-btn-prev{left:var(--space-2)}.carousel-btn-next{right:var(--space-2)}.carousel-btn svg{width:16px;height:16px}}.carousel-dots{position:absolute;bottom:var(--space-3);left:50%;transform:translate(-50%);z-index:4;display:flex;align-items:center;gap:7px;padding:5px 12px;background:#111111b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.14)}.carousel-dot{width:7px;height:7px;border-radius:50%;background:#fff6;border:none;cursor:pointer;padding:0;transition:all var(--transition-fast)}.carousel-dot:hover{background:#fffc}.carousel-dot.is-active{width:22px;border-radius:var(--radius-pill);background:var(--color-primary);box-shadow:0 0 10px #dd1109b3}.site-header{position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-subtle);transition:all var(--transition-fast)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:74px;gap:var(--space-4)}.brand-logo-link{display:inline-flex;align-items:center;gap:clamp(10px,1.2vw,14px);text-decoration:none;flex-shrink:0;transition:opacity var(--transition-fast);-webkit-user-select:none;user-select:none}.brand-logo-link:hover{opacity:.92}.brand-logo-symbol{width:44px;height:44px;flex-shrink:0;display:block;transition:transform var(--transition-fast)}.brand-logo-link:hover .brand-logo-symbol{transform:scale(1.03)}.brand-logo-text{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;line-height:1}.brand-name{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(1.2rem,1.55vw,1.48rem);font-weight:700;color:#000;letter-spacing:.08em;line-height:1.05;white-space:nowrap;display:inline-block}.brand-lambda{font-family:inherit;font-weight:600;display:inline-block;transform:scale(.96);margin:0 -.5px}.brand-tagline{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(.44rem,.55vw,.52rem);font-weight:600;color:#000;letter-spacing:.14em;line-height:1;margin-top:4px;text-transform:uppercase;text-align:right;white-space:nowrap}.brand-logo-img{height:38px;max-width:270px;width:auto;display:block}@media(max-width:480px){.brand-logo-symbol{width:36px;height:36px}.brand-name{font-size:1.15rem;letter-spacing:.06em}.brand-tagline{font-size:.41rem;letter-spacing:.1em;margin-top:3px}}.nav-desktop{display:flex;align-items:center;justify-content:flex-end;gap:clamp(1rem,1.8vw,2.25rem);margin-left:auto}.nav-link{font-size:.9375rem;font-weight:600;color:var(--color-text-main);transition:color var(--transition-fast);position:relative;padding:.5rem .35rem;white-space:nowrap;display:inline-flex;align-items:center;line-height:1;letter-spacing:.01em}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2.5px;border-radius:2px;background-color:var(--color-primary);transition:width var(--transition-fast)}.nav-link:hover{color:var(--color-primary)}.nav-link:hover:after{width:100%}.header-cta-group{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.menu-toggle-btn{display:none;width:44px;height:44px;border-radius:var(--radius-sm);align-items:center;justify-content:center;color:var(--color-primary);background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);transition:background var(--transition-fast);cursor:pointer;margin-left:auto}.menu-toggle-btn:hover{background:var(--color-primary-soft)}@media(max-width:1040px){.nav-desktop,.header-cta-group .btn{display:none}.menu-toggle-btn{display:inline-flex}}.mobile-nav-drawer{position:fixed;top:0;right:-100%;width:100%;max-width:340px;height:100vh;background:var(--color-white);z-index:10001;box-shadow:var(--shadow-xl);padding:var(--space-6);display:flex;flex-direction:column;transition:right var(--transition-normal)}.mobile-nav-drawer.is-open{right:0}.mobile-nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#111111a6;z-index:10000;opacity:0;visibility:hidden;transition:all var(--transition-normal)}.mobile-nav-backdrop.is-open{opacity:1;visibility:visible}.mobile-nav-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-8);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.mobile-nav-links{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-8)}.mobile-nav-link{font-size:1.05rem;font-weight:600;color:var(--color-text-main);padding:.75rem 0;border-bottom:1px solid var(--color-bg-subtle);text-decoration:none;transition:color var(--transition-fast),padding-left var(--transition-fast)}.mobile-nav-link:hover{color:var(--color-primary);padding-left:6px}.hero-section{position:relative;background:linear-gradient(180deg,#f8f9fa,#fff);padding-top:var(--space-8);padding-bottom:var(--space-16);overflow:hidden}.hero-container{display:flex;flex-direction:column;gap:var(--space-10)}.hero-banner-wrapper{width:100%}.hero-banner-figure{margin:0;position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 20px 48px -12px #11111129,0 4px 16px #1111110d;border:1px solid var(--color-border-subtle);background-color:var(--color-dark)}.hero-banner-photo{width:100%;height:auto;aspect-ratio:16 / 9;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}.hero-banner-figure:hover .hero-banner-photo{transform:scale(1.015)}.hero-banner-caption{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.75rem 1.25rem;background:#fff;border-top:1px solid var(--color-border-subtle);font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;flex-wrap:wrap}.hero-banner-caption strong{color:var(--color-text-main);font-weight:600}.hero-caption-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background-color:var(--color-accent);box-shadow:0 0 0 3px #dd110933;animation:pulseDot 2s infinite ease-in-out;flex-shrink:0}.hero-intro-content{max-width:960px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center}.hero-tag{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.hero-tag-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background-color:var(--color-accent);box-shadow:0 0 0 3px #dd11092e;animation:pulseDot 2s infinite ease-in-out}@keyframes pulseDot{0%,to{transform:scale(1);box-shadow:0 0 0 3px #dd11092e}50%{transform:scale(1.2);box-shadow:0 0 0 6px #dd110952}}.hero-title{margin-bottom:var(--space-5);color:var(--color-text-main);font-size:clamp(2rem,3.4vw + .5rem,3.4rem);line-height:1.18;font-weight:700;letter-spacing:-.02em}.hero-title .highlight{color:var(--color-primary);position:relative}.hero-lead{font-size:clamp(1.05rem,1.2vw,1.2rem);color:var(--color-text-body);line-height:var(--leading-relaxed);max-width:820px;margin-bottom:var(--space-8)}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center;align-items:center}.hero-badges-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border-subtle);width:100%}.hero-badge-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-main);font-weight:600}.hero-badge-icon{width:20px;height:20px;color:var(--color-primary);flex-shrink:0}@media(max-width:768px){.hero-section{padding-top:var(--space-4);padding-bottom:var(--space-10)}.hero-container{gap:var(--space-6)}.hero-banner-figure{border-radius:var(--radius-md)}.hero-banner-caption{font-size:.72rem;padding:.5rem .75rem}.hero-title{font-size:clamp(1.6rem,5.5vw,2.2rem)}.hero-actions{flex-direction:column;width:100%;gap:var(--space-3)}.hero-actions .btn{width:100%}.hero-badges-bar{gap:var(--space-4);flex-direction:column;align-items:center}}.about-section{background-color:var(--color-white)}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-12)}@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:var(--space-8)}}.about-image-wrapper,.about-carousel-wrapper{position:relative;width:100%}.about-image-wrapper img{width:100%;height:420px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-border-subtle)}.about-text-content p{margin-bottom:var(--space-4);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-body)}.heritage-quote{border-left:3px solid var(--color-accent);padding-left:var(--space-4);font-style:italic;color:var(--color-text-muted);margin-top:var(--space-4);margin-bottom:var(--space-4)}.philosophy-section{background-color:var(--color-bg-subtle)}.units-section{background-color:var(--color-white)}.units-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--space-10);align-items:stretch}@media(max-width:992px){.units-grid{grid-template-columns:1fr;gap:var(--space-8)}}.unit-card-main{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:space-between}@media(max-width:576px){.unit-card-main{padding:var(--space-5) var(--space-4)}.unit-card-main .btn{width:100%;white-space:normal;text-align:center}}.unit-features-list{display:flex;flex-direction:column;gap:var(--space-5);margin-top:var(--space-6)}.unit-feature-item{display:flex;align-items:flex-start;gap:var(--space-4)}.unit-feature-icon{width:44px;height:44px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;transition:all var(--transition-fast)}.unit-feature-item:hover .unit-feature-icon{background:var(--color-primary);color:var(--color-white);transform:scale(1.05)}.unit-map-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-height:460px}.unit-map-header{padding:var(--space-4) var(--space-6);background:var(--color-white);border-bottom:1px solid var(--color-border-subtle);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}@media(max-width:480px){.unit-map-header{padding:var(--space-3) var(--space-4);flex-direction:column;align-items:stretch}.unit-map-header .btn{width:100%;margin-top:var(--space-2)}}.unit-map-frame-wrapper{flex-grow:1;min-height:380px;position:relative}.contact-section{background-color:var(--color-bg-subtle)}.contacts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);align-items:stretch}@media(max-width:992px){.contacts-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}.contact-channel-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6) var(--space-6);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:0;transition:all var(--transition-fast)}.contact-channel-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.contact-channel-featured{border-top:4px solid var(--color-primary);padding-top:calc(var(--space-6) - 4px)}.contact-channel-body,.contact-channel-content{display:flex;flex-direction:column;flex-grow:1}.contact-channel-badge{display:inline-block;font-size:.72rem;padding:2px 8px;border-radius:var(--radius-pill);background:#ecfdf5;color:#065f46;font-weight:600;margin-top:var(--space-3);width:fit-content}.contact-channel-title{font-size:var(--text-xl);font-weight:700;color:var(--color-text-main);margin-top:var(--space-3);margin-bottom:var(--space-2)}.contact-channel-text{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.contact-channel-highlight{color:var(--color-primary);font-size:1.25rem;font-weight:700;text-decoration:none;display:block;margin-bottom:var(--space-4);word-break:break-all;transition:color var(--transition-fast)}.contact-channel-highlight:hover{color:var(--color-primary-dark);text-decoration:underline}.contact-channel-highlight-sm{font-size:.92rem;font-weight:600;color:var(--color-text-main);text-decoration:none;display:block;margin-bottom:var(--space-4);word-break:break-all;transition:color var(--transition-fast)}.contact-channel-highlight-sm:hover{color:var(--color-primary);text-decoration:underline}.contact-channel-footer{padding-top:var(--space-4);margin-top:auto;border-top:1px solid var(--color-border-subtle)}.contact-social-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:auto;padding-top:var(--space-4)}.contact-channel-hours{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.6}.contact-social-btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:var(--color-text-main);text-decoration:none;font-size:var(--text-sm);transition:all var(--transition-fast);background:var(--color-white)}.contact-social-btn svg{color:var(--color-primary);flex-shrink:0;transition:transform var(--transition-fast)}.contact-social-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft);transform:translate(3px)}.contact-social-btn:hover svg{transform:scale(1.1)}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--space-10)}@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}.contact-card-main{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:space-between}@media(max-width:576px){.contact-card-main{padding:var(--space-5) var(--space-4)}.contact-card-main .btn{width:100%;white-space:normal;text-align:center}}.contact-info-list{display:flex;flex-direction:column;gap:var(--space-5);margin-top:var(--space-6)}.contact-info-item{display:flex;align-items:flex-start;gap:var(--space-4)}.contact-icon-badge{width:44px;height:44px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;transition:all var(--transition-fast)}.contact-info-item:hover .contact-icon-badge,.contact-channel-card:hover .contact-icon-badge{background:var(--color-primary);color:var(--color-white);transform:scale(1.05)}.contact-info-icon{width:24px;height:24px;color:var(--color-accent);flex-shrink:0;margin-top:2px}.contact-link{color:var(--color-text-main);text-decoration:none;font-weight:600;transition:color var(--transition-fast);font-size:1.05rem}.contact-link:hover{color:var(--color-primary);text-decoration:underline}.contact-highlight-link{color:var(--color-primary);font-size:1.25rem;font-weight:700}.badge-status-direct{display:inline-block;font-size:.72rem;padding:2px 8px;border-radius:var(--radius-pill);background:#ecfdf5;color:#065f46;font-weight:600;vertical-align:middle}.contact-map-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-height:440px}.contact-map-header{padding:var(--space-4) var(--space-6);background:var(--color-white);border-bottom:1px solid var(--color-border-subtle);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}@media(max-width:480px){.contact-map-header{padding:var(--space-3) var(--space-4);flex-direction:column;align-items:stretch}.contact-map-header .btn{width:100%;margin-top:var(--space-2)}}.contact-map-frame-wrapper{flex-grow:1;min-height:360px;position:relative}.contact-map-placeholder{background:#f1f3f5;border:2px dashed var(--color-border-medium);border-radius:var(--radius-lg);min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-8);color:var(--color-text-muted)}.site-footer{background-color:var(--color-dark);color:#ffffffd9;padding-top:var(--space-16);padding-bottom:var(--space-8);border-top:3px solid var(--color-primary)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:var(--space-8);margin-bottom:var(--space-12)}@media(max-width:992px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.footer-grid{grid-template-columns:1fr}}.footer-col-title{color:var(--color-white);font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-4);letter-spacing:.05em;text-transform:uppercase}.footer-links-list{display:flex;flex-direction:column;gap:var(--space-3)}.footer-link{color:#ffffffbf;font-size:var(--text-sm);transition:color var(--transition-fast)}.footer-link:hover{color:var(--color-white)}.footer-contact-link{color:#ffffffbf;font-size:var(--text-sm);font-weight:400;text-decoration:none;transition:color var(--transition-fast)}.footer-contact-link:hover{color:var(--color-white);text-decoration:none}.footer-bottom-bar{padding-top:var(--space-8);border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);font-size:var(--text-xs);color:#fff9}@media(max-width:600px){.footer-bottom-bar{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.footer-legal-links{display:flex;flex-wrap:wrap;gap:var(--space-4)}
