.chatbot-trigger{position:fixed;bottom:1.5rem;right:1.5rem;width:56px;height:56px;border-radius:50%;background:var(--color-accent);color:var(--color-on-accent);border:2px solid var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px #2d5a7b40;transition:transform .2s,background .2s;z-index:100}.chatbot-trigger:hover{background:var(--color-accent-hover);transform:scale(1.05)}.header{position:sticky;top:0;display:flex;align-items:center;gap:1rem;padding:.75rem 2rem;background:#ffffffeb;border-bottom:3px solid transparent;border-image:linear-gradient(90deg,var(--color-brand-blue),var(--color-electric),var(--color-brand-blue)) 1;z-index:50;box-shadow:0 2px 12px #2d5a7b0f;transition:background .25s ease,box-shadow .25s ease}.header--scrolled{background:#ffffffd1;backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);box-shadow:0 4px 24px #2d5a7b1a}.logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.logo img{height:clamp(44px,8vw,56px);width:auto;display:block}.nav{flex:1;display:flex;gap:2rem;justify-content:center}.nav a{color:var(--color-text-muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s}.nav a:hover{color:var(--color-brand-blue-dark)}.header-end{display:flex;align-items:center;gap:.65rem;flex-shrink:0;margin-left:auto}.header-right{display:flex;align-items:center;gap:.75rem}.header-cta{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:.4rem 1rem;min-height:48px;min-width:8.5rem;box-sizing:border-box;background:var(--color-accent);color:var(--color-on-accent);font-weight:700;font-size:clamp(.85rem,2.5vw,1rem);line-height:1.2;text-align:center;text-decoration:none;border-radius:8px;border:2px solid rgba(15,23,42,.2);box-shadow:0 4px 14px #2d5a7b33;transition:background .2s,transform .2s,box-shadow .2s}.header-cta:hover{background:var(--color-accent-hover);color:var(--color-on-accent);transform:translateY(-1px);box-shadow:0 6px 18px #2d5a7b47}.header-call{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:.4rem 1rem;min-height:48px;min-width:8.5rem;background:linear-gradient(180deg,#0d9488,#0f766e);color:#f0fdfa;text-decoration:none;border-radius:8px;border:2px solid rgba(15,23,42,.2);box-shadow:0 4px 14px #0f766e59;transition:transform .2s,box-shadow .2s,filter .2s}.header-call:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 18px #0f766e73}.header-call-label{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;line-height:1.2}.header-call-phone{font-size:clamp(.85rem,2.5vw,1rem);font-weight:700;letter-spacing:.02em;line-height:1.2}.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;flex-shrink:0}.menu-toggle span{width:22px;height:2px;background:var(--color-text)}@media(max-width:768px){.header{padding:.65rem 1rem}.header-cta{display:none}.nav{position:fixed;top:65px;left:0;right:0;flex:none;flex-direction:column;background:var(--color-bg);padding:1.5rem;gap:1rem;transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform .2s,opacity .2s;border-bottom:1px solid var(--color-border);z-index:40}.nav-open{transform:translateY(0);opacity:1;pointer-events:auto}.header-call{min-width:auto;padding:.35rem .65rem}.menu-toggle{display:flex;z-index:60}}@media(max-width:380px){.header-call-phone{font-size:.8rem}.header-call-label{font-size:.58rem}}.hero{position:relative;min-height:min(88vh,900px);display:flex;align-items:center;justify-content:center;padding:clamp(5rem,12vw,7rem) clamp(1.25rem,4vw,2rem) clamp(3rem,7vw,5rem);overflow:hidden;color:#f4f7fb}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-bg{width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:scale(1.03)}@media(prefers-reduced-motion:no-preference){.hero-bg{animation:hero-kenburns 22s ease-in-out infinite alternate}}@keyframes hero-kenburns{0%{transform:scale(1.03) translate(0)}to{transform:scale(1.08) translate(-.6%,.4%)}}.hero-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#080c1273,#080c12b8 45%,#080c12e0),linear-gradient(90deg,rgba(8,12,18,.75) 0%,transparent 42%,transparent 58%,rgba(8,12,18,.55) 100%);pointer-events:none}.hero-gradient-shift{position:absolute;top:-20%;right:-30%;bottom:-20%;left:-30%;background:var(--gradient-aurora);background-size:280% 280%;opacity:.22;mix-blend-mode:screen;pointer-events:none}@media(prefers-reduced-motion:no-preference){.hero-gradient-shift{animation:aurora-shift 18s ease-in-out infinite}}@keyframes aurora-shift{0%,to{background-position:12% 40%}50%{background-position:88% 60%}}.hero-inner{position:relative;z-index:1;width:100%;max-width:1200px;margin:0 auto}.hero-content{max-width:640px;text-align:left}.hero-kicker{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(1.15rem,3.2vw,1.45rem);font-weight:400;color:#fff;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 24px rgba(0,0,0,.35)}.hero-subtitle{margin:0 0 .85rem;font-family:var(--font-sans);font-size:.78rem;font-weight:700;color:#00dcebf2;text-transform:uppercase;letter-spacing:.2em}.hero h1{font-family:var(--font-display);font-size:clamp(2.85rem,8.5vw,4.75rem);font-weight:400;line-height:.98;margin:0 0 1.25rem;color:#fff;letter-spacing:.05em;text-transform:uppercase;text-shadow:0 2px 40px rgba(0,0,0,.35)}.hero-description{font-size:clamp(1rem,2.2vw,1.15rem);color:#f4f7fbe0;line-height:1.65;margin:0 0 1.85rem;max-width:520px}.hero-actions{display:flex;gap:.875rem;flex-wrap:wrap}.hero-stats{display:flex;flex-wrap:wrap;gap:clamp(1.25rem,4vw,2.5rem);margin-top:2.25rem;padding-top:1.75rem;border-top:1px solid rgba(255,255,255,.14)}.hero-stat{display:flex;flex-direction:column;gap:.2rem;min-width:min(100%,120px)}.hero-stat-value{font-family:var(--font-display);font-size:1.65rem;font-weight:400;color:#fff;letter-spacing:.06em}.hero-stat-label{font-size:.72rem;color:#f4f7fbb8;text-transform:uppercase;letter-spacing:.12em}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 1.65rem;font-size:.92rem;font-weight:600;text-decoration:none;border-radius:8px;transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.hero-btn-primary{background:linear-gradient(135deg,var(--color-accent) 0%,#ffd54a 100%);color:var(--color-on-accent);border:2px solid rgba(0,0,0,.2);box-shadow:0 4px 20px #00000040}.hero-btn-primary:hover{background:linear-gradient(135deg,var(--color-accent-hover) 0%,#ffc61a 100%);transform:translateY(-1px);box-shadow:0 8px 28px #0000004d}.hero-btn-secondary{background:#ffffff14;color:#fff;border:2px solid rgba(255,255,255,.42);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.hero-btn-secondary:hover{border-color:#00dceba6;background:#ffffff1f;color:#fff}@media(max-width:640px){.hero{min-height:auto;padding-top:5.5rem}.hero-content{text-align:center;margin:0 auto}.hero-description{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-stats{justify-content:center;text-align:center}.hero-stat{align-items:center}}@media(max-width:480px){.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{min-height:48px}}.work-gallery{position:relative;padding-top:clamp(2.25rem,5vw,3.25rem);padding-bottom:clamp(3.5rem,8vw,5rem)}.work-gallery:before{content:"";position:absolute;left:50%;top:0;transform:translate(-50%);width:min(100%,900px);height:1px;background:linear-gradient(90deg,transparent,var(--color-brand-blue),var(--color-electric),var(--color-brand-blue),transparent);opacity:.55;pointer-events:none}.work-gallery-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-brand-blue-dark);margin-bottom:.5rem;text-align:center}.work-gallery h2{font-size:clamp(2rem,4vw,2.75rem);font-weight:400;margin:0 0 .75rem;text-align:center;letter-spacing:.06em;text-transform:uppercase;font-family:var(--font-display)}.work-gallery-intro{max-width:560px;margin:0 auto 2rem;text-align:center;color:var(--color-text-muted);line-height:1.65;font-size:clamp(.95rem,2vw,1.05rem)}.work-grid-shell{max-width:1120px;margin:0 auto;padding:clamp(1rem,3vw,1.5rem);background:linear-gradient(160deg,#5a9fd40f,#ffffffa6 42%,#f2c2000d);border:1px solid var(--color-border);border-radius:20px;box-shadow:inset 0 1px #ffffffbf}.work-grid{list-style:none;margin:0;padding:0;display:grid;gap:clamp(1rem,2.5vw,1.35rem);grid-template-columns:1fr;align-items:stretch}@media(min-width:640px)and (max-width:959px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-item--feature{grid-column:1 / -1}.work-item:nth-child(4):last-child{grid-column:1 / -1;justify-self:center;width:100%;max-width:min(100%,680px)}}@media(min-width:960px){.work-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.work-item--feature{grid-column:1 / -1}.work-item:not(.work-item--feature){grid-column:span 2}}.work-item{min-width:0}@media(prefers-reduced-motion:no-preference){.work-gallery:not(.work-gallery--visible) .work-item{opacity:0;transform:translateY(18px)}.work-gallery--visible .work-item{opacity:1;transform:translateY(0);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);transition-delay:var(--work-delay, 0s)}}.work-card{margin:0;height:100%;display:flex;flex-direction:column;border-radius:14px;overflow:hidden;background:var(--color-surface-elevated);border:1px solid rgba(45,90,123,.12);box-shadow:0 2px 16px #2d5a7b0f;transition:border-color .25s ease,box-shadow .25s ease}.work-card:hover{border-color:#00c8e873;box-shadow:0 12px 40px #2d5a7b24}.work-card-media{position:relative;aspect-ratio:4 / 3;overflow:hidden;background:#0d1117}.work-item--feature .work-card-media{aspect-ratio:4 / 3;max-height:min(480px,72vw)}.work-item--feature .work-card-media--triptych{aspect-ratio:unset;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;column-gap:0;row-gap:0;min-height:clamp(200px,34vw,380px);max-height:min(460px,62vw)}@media(min-width:960px){.work-item--feature .work-card-media:not(.work-card-media--triptych){max-height:min(520px,55vw)}.work-item--feature .work-card-media--triptych{max-height:min(440px,42vw);min-height:clamp(240px,28vw,360px)}}.work-triptych-cell{min-width:0;min-height:0;overflow:hidden;display:block;background:transparent}.work-card-media--triptych .work-card-img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transform:none}.work-card-img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transform:scale(1.01);transition:transform .65s cubic-bezier(.22,1,.36,1)}.work-item--feature .work-card-img{object-fit:contain;object-position:center;transform:none}.work-item--feature .work-card-media--triptych .work-card-img{object-fit:cover;object-position:center;transform:scale(1.03);transform-origin:center center;backface-visibility:hidden}.work-item--feature .work-card:hover .work-card-media--triptych .work-card-img,.work-card:hover .work-card-img{transform:scale(1.06)}.work-item--feature .work-card:hover .work-card-img{transform:scale(1.02)}@media(prefers-reduced-motion:reduce){.work-card:hover .work-card-img,.work-item--feature .work-card:hover .work-card-img{transform:none}.work-item--feature .work-card:hover .work-card-media--triptych .work-card-img{transform:scale(1.03)}}.work-card-shine{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(125deg,transparent 40%,rgba(255,255,255,.07) 50%,transparent 60%);background-size:200% 200%;opacity:0;pointer-events:none;transition:opacity .3s ease}@media(prefers-reduced-motion:no-preference){.work-card:hover .work-card-shine{opacity:1;animation:work-shine 1.2s ease forwards}}@keyframes work-shine{0%{background-position:100% 50%}to{background-position:0% 50%}}.work-card-caption{flex:1 1 auto;padding:1rem 1.2rem 1.25rem;display:flex;flex-direction:column;gap:.4rem;justify-content:flex-start;min-height:5.5rem;background:linear-gradient(180deg,var(--color-surface-elevated) 0%,var(--color-surface) 100%)}.work-card-title{font-weight:700;font-size:.95rem;color:var(--color-text);letter-spacing:.02em}.work-card-desc{font-size:.85rem;line-height:1.5;color:var(--color-text-muted)}.section{padding:4rem 2rem;max-width:1200px;margin:0 auto}.section h2{font-size:clamp(2rem,4vw,2.75rem);font-weight:400;margin:0 0 1rem;text-align:center}.services .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-brand-blue-dark);margin-bottom:.5rem;text-align:center}.services h2{margin-bottom:.5rem}.services-intro{max-width:560px;margin:0 auto 2rem;text-align:center;color:var(--color-text-muted);line-height:1.6}.services-grid-wrap{max-width:1120px;margin:0 auto;padding:clamp(1rem,2.5vw,1.35rem);background:linear-gradient(165deg,#5a9fd412,#ffffff8c 45%,#f2c2000f);border:1px solid var(--color-border);border-radius:20px;box-shadow:inset 0 1px #fffc}.services-grid{list-style:none;margin:0;padding:0;display:grid;gap:clamp(1rem,2vw,1.25rem);grid-template-columns:1fr}@media(min-width:640px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:960px){.services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.services-grid>li{min-width:0;display:flex}.service-card{flex:1;display:flex;flex-direction:column;padding:1.35rem 1.4rem 1.5rem;background:var(--color-surface-elevated);border:1px solid rgba(45,90,123,.12);border-radius:14px;box-shadow:0 2px 14px #2d5a7b0f;transition:border-color .2s ease,box-shadow .2s ease}.service-card:hover{border-color:var(--color-brand-blue);box-shadow:0 8px 28px #2d5a7b1f}.service-card h3{font-size:1.05rem;font-weight:700;margin:0 0 .65rem;line-height:1.3;min-height:2.6em;color:var(--color-text);letter-spacing:.01em}.service-card p{margin:0;flex:1 1 auto;color:var(--color-text-muted);font-size:.92rem;line-height:1.55}.why-choose{background:var(--color-surface)}.why-choose h2{text-align:center}.section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-brand-blue-dark);margin-bottom:.5rem;text-align:center}.why-intro{max-width:640px;margin:0 auto 2.5rem;text-align:center;color:var(--color-text-muted);line-height:1.6}.why-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:640px){.why-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.why-grid{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,auto)}}.why-card{padding:1.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;transition:border-color .2s,box-shadow .2s}.why-card:hover{border-color:var(--color-brand-blue);box-shadow:0 6px 24px #2d5a7b1a}.why-card h3{font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.why-card p{margin:0;font-size:.95rem;color:var(--color-text-muted);line-height:1.5}.schedule-section{background:var(--color-surface)}.schedule-section .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-brand-blue-dark);margin-bottom:.5rem;text-align:center}.schedule-section h2{margin-bottom:.75rem}.schedule-intro{max-width:560px;margin:0 auto 1.75rem;text-align:center;font-size:.98rem;line-height:1.55;color:var(--color-text-muted)}.schedule-placeholder{text-align:center;padding:3rem;background:var(--color-bg);border:2px dashed var(--color-border);border-radius:8px}.schedule-placeholder p{margin:0 0 .5rem;color:var(--color-text-muted)}.schedule-phone{font-size:1.5rem;font-weight:600;color:var(--color-brand-blue-dark);text-decoration:none}.schedule-phone:hover{text-decoration:underline}.schedule-note{margin-top:1rem!important;font-size:.85rem;opacity:.8;color:var(--color-text-muted)}.schedule-note code{background:var(--color-surface-elevated);padding:.2em .4em;border-radius:4px}.schedule-btn{display:inline-block;margin-top:1rem}.schedule-embed{border-radius:8px;overflow:hidden;border:1px solid var(--color-border)}.schedule-embed iframe{display:block}.testimonials{background:var(--color-bg)}.testimonials .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-brand-blue-dark);margin-bottom:.5rem;text-align:center}.testimonials h2{margin-bottom:2rem}.testimonials-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem;margin:0 -2rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.testimonials-scroll::-webkit-scrollbar{height:6px}.testimonials-scroll::-webkit-scrollbar-track{background:var(--color-surface);border-radius:3px}.testimonials-scroll::-webkit-scrollbar-thumb{background:var(--color-brand-blue);border-radius:3px}.testimonials-grid{display:flex;gap:1.5rem;padding:0 2rem}.testimonial-card{flex:0 0 min(320px,85vw);padding:1.75rem;scroll-snap-align:start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;margin:0;transition:border-color .2s,box-shadow .2s}.testimonial-card:hover{border-color:var(--color-brand-blue);box-shadow:0 6px 24px #2d5a7b1a}.testimonial-card p{margin:0 0 1rem;font-size:1rem;line-height:1.6;color:var(--color-text)}.testimonial-card footer{display:flex;flex-direction:column;gap:.25rem}.testimonial-card cite{font-style:normal;font-weight:600;color:var(--color-brand-blue-dark)}.testimonial-card span{font-size:.85rem;color:var(--color-text-muted)}.contact{background:var(--color-surface)}.contact .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-brand-blue-dark);margin-bottom:.5rem;text-align:center}.contact h2{margin-bottom:2rem}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.contact-form-wrapper h3{font-size:1.1rem;margin:0 0 .5rem;color:var(--color-text);font-weight:700}.contact-quote-note{margin:0 0 1.25rem;font-size:.9rem;line-height:1.5;color:var(--color-text-muted)}.contact-info{display:flex;flex-direction:column;gap:1.5rem}@media(max-width:768px){.contact-layout{grid-template-columns:1fr}}.contact-item h3{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-brand-blue-dark);margin:0 0 .5rem}.contact-item a,.contact-item p{margin:0;color:var(--color-text);font-size:1rem}.contact-item a:hover{color:var(--color-brand-blue)}.contact-form{display:flex;flex-direction:column;gap:1rem;max-width:400px}.contact-form input,.contact-form textarea{padding:.75rem 1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-family:inherit;font-size:.95rem}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--color-text-muted)}.contact-form textarea{resize:vertical;min-height:100px}.contact-form--success{text-align:center;padding:2rem}.contact-form--success p{margin:0;color:var(--color-text-muted)}.contact-form-error{margin:0!important;padding:.75rem;background:#0000000d;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.9rem}.cta-section{position:relative;padding:4rem 2rem;background:var(--color-brand-blue-dark);color:var(--color-surface-elevated);text-align:center;border-top:4px solid var(--color-accent);overflow:hidden}.cta-section:before{content:"";position:absolute;top:-40%;right:-20%;bottom:-40%;left:-20%;background:var(--gradient-aurora);background-size:240% 240%;opacity:.12;pointer-events:none}@media(prefers-reduced-motion:no-preference){.cta-section:before{animation:cta-aurora 24s ease-in-out infinite}}@keyframes cta-aurora{0%,to{background-position:20% 50%}50%{background-position:80% 50%}}.cta-content{position:relative;z-index:1;max-width:640px;margin:0 auto}.cta-section h2{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);font-weight:400;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .75rem;color:var(--color-surface-elevated)}.cta-section p{margin:0 0 1.5rem;color:#ffffffe0;font-size:1.1rem}.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.cta-section .btn-primary{background:var(--color-accent);color:var(--color-on-accent);border:2px solid var(--color-text)}.cta-section .btn-primary:hover{background:var(--color-accent-hover);color:var(--color-on-accent)}.cta-section .btn-secondary{border:2px solid rgba(255,255,255,.85);color:var(--color-surface-elevated);background:#ffffff14;box-shadow:0 1px #00000026}.cta-section .btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent);background:#ffffff1f;box-shadow:0 2px 10px #0000002e}.chatbot-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:flex-end;justify-content:flex-end;padding:1rem;z-index:200}.chatbot-panel{width:100%;max-width:380px;max-height:500px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;box-shadow:0 20px 50px #00000026;display:flex;flex-direction:column}.chatbot-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.chatbot-header h3{margin:0;font-size:1rem}.chatbot-header button{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px}.chatbot-header button:hover{color:var(--color-text)}.chatbot-messages{flex:1;overflow-y:auto;padding:1rem;min-height:200px;max-height:320px}.chatbot-msg{margin-bottom:.75rem;padding:.75rem 1rem;border-radius:10px;font-size:.9rem;line-height:1.4}.chatbot-msg--user{background:var(--color-accent);color:var(--color-on-accent);margin-left:2rem;border:1px solid var(--color-text)}.chatbot-msg--bot{background:var(--color-surface);border:1px solid var(--color-border);margin-right:2rem}.chatbot-input{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--color-border)}.chatbot-input input{flex:1;padding:.75rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.9rem}.chatbot-input input::placeholder{color:var(--color-text-muted)}.chatbot-input button{padding:.75rem 1rem;background:var(--color-accent);color:var(--color-on-accent);border:2px solid var(--color-text);border-radius:6px;font-weight:600;cursor:pointer;font-size:.9rem}.chatbot-input button:hover{background:var(--color-accent-hover)}.footer{background:var(--color-brand-blue-dark);color:var(--color-surface-elevated);padding:3rem 2rem 1.5rem}.footer-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.2)}.footer-logo{height:52px;width:auto;margin-bottom:.75rem}.footer-brand p{margin:0;font-size:.9rem;color:#ffffffd9;line-height:1.5}.footer-license-badge{display:flex;align-items:flex-start;gap:.75rem;margin-top:1.25rem;padding:.85rem 1rem;max-width:26rem;border-radius:8px;border:1px solid rgba(255,255,255,.28);background:#00000026}.footer-license-icon{flex-shrink:0;color:#00e8c8f2;margin-top:2px}.footer-license-text{margin:0;font-size:.82rem;font-weight:600;line-height:1.45;color:#fffffff2}.footer h4{font-family:var(--font-display);font-size:.95rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;margin:0 0 1rem;color:var(--color-accent)}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:.5rem}.footer a{color:#ffffffd9;text-decoration:none;font-size:.9rem}.footer a:hover{color:var(--color-accent)}.footer-hours p,.footer-contact a{margin:0 0 .5rem;font-size:.9rem;display:block}.footer-hours p{color:#ffffffd9}.footer-areas{max-width:1200px;margin:0 auto;padding:2rem 0 1.5rem;border-top:1px solid rgba(255,255,255,.2)}.footer-areas-title{font-family:var(--font-display);font-size:1.1rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;margin:0 0 1rem;color:#fffffff2}.footer-areas-line{margin:0 0 .85rem;font-size:.88rem;line-height:1.65;color:#ffffffc7}.footer-areas-line:last-child{margin-bottom:0}.footer-areas-line strong{color:#ffffffeb;font-weight:600}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:1.5rem;text-align:center}.footer-bottom p{margin:0;font-size:.85rem;color:#ffffff8c}@media(max-width:768px){.footer-grid{grid-template-columns:1fr;text-align:center}.footer-logo{margin-left:auto;margin-right:auto}.footer-license-badge{margin-left:auto;margin-right:auto;flex-direction:column;align-items:center;text-align:center}.footer-license-icon{margin-top:0}.footer-areas{text-align:left}}:root{--color-bg: #fdf8f0;--color-surface: #fff9f0;--color-surface-elevated: #ffffff;--color-border: #b8d4e8;--color-text: #1a1a1e;--color-text-muted: #4a5568;--color-accent: #f2c200;--color-accent-hover: #d9ae00;--color-brand-blue: #5a9fd4;--color-brand-blue-dark: #2d5a7b;--color-on-accent: #1a1a1e;--color-electric: #00c8e8;--font-display: "Bebas Neue", Impact, sans-serif;--font-sans: "DM Sans", system-ui, sans-serif;--font-serif: "Bebas Neue", Impact, sans-serif;--gradient-aurora: linear-gradient( 125deg, #0047ab 0%, #00c8a0 28%, #00c8e8 52%, #5a9fd4 78%, #0047ab 100% );--gradient-page: linear-gradient( 118deg, rgba(90, 159, 212, .11) 0%, rgba(0, 200, 232, .08) 38%, rgba(242, 194, 0, .07) 72%, rgba(90, 159, 212, .1) 100% );--page-bg-overlay: linear-gradient( 168deg, rgba(248, 250, 252, .9) 0%, rgba(239, 246, 255, .82) 42%, rgba(240, 249, 255, .78) 100% )}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);background:#f0f7fc;color:var(--color-text);-webkit-font-smoothing:antialiased;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-color:#f0f7fc;background-image:var(--page-bg-overlay),url(/bg-artistic-blurry.jpg);background-size:100% 100%,130% 130%;background-position:center,center;background-repeat:no-repeat,no-repeat;background-attachment:scroll,scroll}@media(max-width:768px){body:before{background-size:100% 100%,150% 150%}}.section h2{font-family:var(--font-display);font-weight:400;letter-spacing:.06em;text-transform:uppercase}
