:root{--navy:#10294f;--navy-dark:#0a1c38;--red:#c1272d;--red-dark:#9c1f24;--white:#ffffff;--ink:#1c2430;--muted:#5b6675;--bg-alt:#f2f5f9;--border:#d9e0ea;--radius:12px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.55}img{max-width:100%;display:block}a{color:var(--navy)}.container{width:min(1120px,92%);margin:0 auto}.container.narrow{width:min(760px,92%)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;gap:1rem;padding:.5rem 4%;background:var(--navy);box-shadow:0 2px 10px rgba(0,0,0,.25)}.brand,.site-header{display:flex;align-items:center}.brand{gap:.6rem;text-decoration:none}.brand-logo{width:46px;height:46px;object-fit:cover;border-radius:50%;background:var(--white)}.brand-name{color:var(--white);font-weight:800;font-size:1.05rem;line-height:1.15;display:flex;flex-direction:column}.brand-sub{font-weight:500;font-size:.72rem;color:#bcd0ee;letter-spacing:.02em}.main-nav{display:none;gap:1.1rem;margin-left:auto}.main-nav a{color:var(--white);text-decoration:none;font-weight:600;font-size:.95rem}.main-nav a:hover{text-decoration:underline}.main-nav a.nav-book{color:#ffd9db}.header-call{margin-left:auto}@media (min-width:860px){.main-nav{display:flex;align-items:center}.header-call{margin-left:0}}.btn{display:inline-block;padding:.65rem 1.2rem;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer;font-size:1rem;text-align:center}.btn-red{background:var(--red);color:var(--white)}.btn-red:hover{background:var(--red-dark)}.btn-navy{background:var(--navy);color:var(--white)}.btn-navy:hover{background:var(--navy-dark)}.btn-white{background:var(--white);color:var(--navy)}.btn-large{padding:.85rem 1.6rem;font-size:1.1rem}.btn-wide{width:100%}.btn:disabled{opacity:.65;cursor:wait}.hero{background:var(--navy);color:var(--white);text-align:center;padding:3rem 4% 3.5rem}.hero-inner{width:min(820px,100%);margin:0 auto}.hero-logo{width:170px;height:170px;object-fit:cover;border-radius:50%;margin:0 auto 1.1rem;border:4px solid var(--white);background:var(--white);box-shadow:0 8px 24px rgba(0,0,0,.35)}.hero-open{display:inline-block;margin:0 0 .8rem;padding:.3rem .9rem;background:var(--red);border-radius:999px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:.85rem}.hero h1{font-size:clamp(1.9rem,5.5vw,3rem);margin:.2rem 0 .6rem;line-height:1.12}.hero-tagline{font-size:1.15rem;color:#bcd0ee;margin:0 0 .8rem;font-weight:600}.hero-copy{max-width:640px;margin:0 auto 1.6rem;color:#e6edf7}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}.section{padding:3.2rem 0}.section-alt{background:var(--bg-alt)}.section-navy{background:var(--navy);color:var(--white)}.section h2{text-align:center;font-size:clamp(1.6rem,4vw,2.2rem);margin:0 0 .6rem;color:var(--navy)}.section-navy h2{color:var(--white)}.section-lead{text-align:center;color:var(--muted);max-width:680px;margin:0 auto 2rem}.section-navy .section-lead{color:#bcd0ee}.trust-band{background:var(--white);border-bottom:1px solid var(--border);padding:2.2rem 0}.trust-grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}.trust-item{border-left:4px solid var(--red);background:var(--bg-alt);border-radius:0 var(--radius) var(--radius) 0;padding:.9rem 1.1rem}.trust-item h3{margin:0 0 .25rem;color:var(--navy);font-size:1.02rem}.trust-item p{margin:0;color:var(--muted);font-size:.94rem}@media (min-width:700px){.trust-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1020px){.trust-grid{grid-template-columns:repeat(3,1fr)}}.services-grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}.service-card{border:1px solid var(--border);border-top:4px solid var(--navy);border-radius:var(--radius);padding:1.2rem;background:var(--white)}.service-card h3{margin:0 0 .4rem;color:var(--navy)}.service-card p{margin:0 0 .7rem;color:var(--muted);font-size:.95rem}.service-link{font-weight:700;color:var(--red);text-decoration:none}.service-link:hover{text-decoration:underline}@media (min-width:640px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1020px){.services-grid{grid-template-columns:repeat(4,1fr)}}.steps-grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}.step-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;text-align:center}.step-num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--red);color:var(--white);font-weight:800;font-size:1.2rem}.step-card h3{color:var(--navy);margin:.7rem 0 .4rem}.step-card p{color:var(--muted);margin:0}@media (min-width:820px){.steps-grid{grid-template-columns:repeat(3,1fr)}}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.8rem;gap:.8rem}@media (min-width:700px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1020px){.gallery-grid{grid-template-columns:repeat(4,1fr)}}.gallery-item{position:relative;padding:0;border:none;border-radius:var(--radius);overflow:hidden;cursor:pointer;background:var(--navy-dark);text-align:left}.gallery-item img{width:100%;height:190px;object-fit:cover;transition:transform .25s ease}.gallery-item:focus-visible img,.gallery-item:hover img{transform:scale(1.04)}.gallery-caption{position:absolute;left:0;right:0;bottom:0;padding:1.4rem .6rem .5rem;color:var(--white);font-size:.82rem;font-weight:600;background:linear-gradient(transparent,rgba(7,20,40,.88))}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(5,12,24,.94);display:flex;align-items:center;justify-content:center}.lightbox-figure{margin:0;width:min(920px,92vw);text-align:center}.lightbox-figure img{max-height:78vh;width:auto;max-width:100%;margin:0 auto;border-radius:8px}.lightbox-figure figcaption{color:#dbe6f5;margin-top:.8rem;font-weight:600}.lightbox-close{top:.8rem;right:1rem;background:none;font-size:2.4rem;line-height:1}.lightbox-close,.lightbox-nav{position:absolute;border:none;color:var(--white);cursor:pointer}.lightbox-nav{top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);width:52px;height:52px;border-radius:50%;font-size:1.9rem}.lightbox-prev{left:.7rem}.lightbox-next{right:.7rem}.area-inner{text-align:center}.area-inner p{max-width:680px;margin:0 auto 1.5rem;color:#e6edf7}.area-inner a{color:#ffd9db;font-weight:700}.reviews-empty{text-align:center;border:2px dashed var(--border);border-radius:var(--radius);padding:2rem 1.2rem;margin-bottom:2rem;color:var(--muted)}.reviews-empty-title{font-size:1.25rem;font-weight:800;color:var(--navy);margin:0 0 .3rem}.reviews-loading{text-align:center;color:var(--muted)}.reviews-grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem;margin-bottom:2rem}@media (min-width:760px){.reviews-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1020px){.reviews-grid{grid-template-columns:repeat(3,1fr)}}.review-card{border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;background:var(--white)}.stars{color:#e8a41c;font-size:1.1rem;letter-spacing:.1em}.stars-empty{color:#d5dbe4}.review-text{margin:.5rem 0}.review-meta{margin:0;color:var(--muted);font-size:.9rem}.review-form{margin-top:1rem}.review-form h3{margin-top:0;color:var(--navy);text-align:center}.rating-field{border:none;padding:0;margin:0}.rating-field legend{font-weight:600;font-size:.95rem;margin-bottom:.35rem;padding:0}.rating-picker{display:flex;gap:.15rem}.star-btn{background:none;border:none;font-size:1.7rem;color:#c8d1dd;cursor:pointer;padding:.1rem;line-height:1}.star-btn.star-on{color:#e8a41c}.form-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:0 4px 18px rgba(16,41,79,.06);display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}@media (min-width:620px){.form-row{grid-template-columns:1fr 1fr}}.form-card label{display:flex;flex-direction:column;gap:.35rem;font-weight:600;font-size:.95rem}.form-card input,.form-card select,.form-card textarea{font:inherit;padding:.6rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--white);color:var(--ink);width:100%}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:2px solid var(--navy);outline-offset:1px}.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.form-note{margin:0;font-weight:600}.form-success{color:#1d7a3d}.form-error{color:var(--red)}.form-fineprint{margin:0;text-align:center;color:var(--muted);font-size:.88rem}.site-footer{background:var(--navy-dark);color:#c9d7ec;padding:2.4rem 0 5.2rem}.footer-inner{display:flex;gap:1.2rem;align-items:flex-start;flex-wrap:wrap}.footer-logo{width:84px;height:84px;border-radius:50%;object-fit:cover;background:var(--white)}.footer-name{color:var(--white);font-weight:800;font-size:1.1rem;margin:0 0 .2rem}.site-footer p{margin:.2rem 0}.site-footer a{color:#ffd9db;font-weight:700}.footer-fine{font-size:.85rem;color:#93a9c9}.mobile-callbar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--red);color:var(--white);text-align:center;padding:.85rem .5rem;font-weight:800;text-decoration:none;box-shadow:0 -2px 10px rgba(0,0,0,.25)}@media (min-width:860px){.mobile-callbar{display:none}.site-footer{padding-bottom:2.4rem}}.admin-wrap{width:min(960px,94%);margin:2rem auto 4rem}.admin-card{border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;background:var(--white)}.admin-login{max-width:420px;margin:8vh auto}.admin-login h1{color:var(--navy);font-size:1.5rem;text-align:center}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.admin-head h1{color:var(--navy);margin:0;font-size:1.5rem}.admin-wrap h2{color:var(--navy);margin:2rem 0 .8rem}.admin-item{border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem;margin-bottom:.8rem;background:var(--bg-alt)}.admin-item p{margin:.25rem 0}.admin-item .meta{color:var(--muted);font-size:.87rem}.admin-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.admin-actions button{font:inherit;font-size:.88rem;font-weight:700;cursor:pointer;border:1px solid var(--navy);color:var(--navy);background:var(--white);border-radius:999px;padding:.35rem .85rem}.admin-actions button:hover{background:var(--navy);color:var(--white)}.admin-actions button.danger{border-color:var(--red);color:var(--red)}.admin-actions button.danger:hover{background:var(--red);color:var(--white)}.status-pill{display:inline-block;padding:.1rem .6rem;border-radius:999px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:#e3e9f2;color:var(--navy)}.status-pill.s-approved,.status-pill.s-done{background:#dff2e3;color:#1d7a3d}.status-pill.s-new,.status-pill.s-pending{background:#fdf0d5;color:#8a6100}.status-pill.s-hidden{background:#f3d9db;color:var(--red-dark)}.admin-empty{color:var(--muted)}.admin-error{color:var(--red);font-weight:600}