*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--c-navy:hsl(215,45%,18%);--c-navy-light:hsl(215,35%,28%);--c-amber:hsl(38,90%,55%);--c-amber-dark:hsl(38,80%,45%);--c-amber-glow:hsl(38,95%,65%);--c-white:hsl(0,0%,100%);--c-off:hsl(210,20%,96%);--c-text:hsl(215,25%,20%);--c-muted:hsl(215,10%,50%);--c-border:hsl(210,15%,88%);--ff-head:'DM Serif Display',Georgia,serif;--ff-body:'Nunito Sans','Segoe UI',sans-serif;--rad:0.5rem;--shadow:0 2px 12px hsla(215,45%,18%,0.10)}
html{font-size:100%;scroll-behavior:smooth}
body{font-family:var(--ff-body);color:var(--c-text);line-height:1.65;background:var(--c-white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--c-amber-dark);text-decoration:none;transition:color .2s}
a:hover{color:var(--c-navy)}
h1,h2,h3,h4{font-family:var(--ff-head);color:var(--c-navy);line-height:1.25;margin-bottom:0.6rem}
h1{font-size:2.6rem}
h2{font-size:2rem}
h3{font-size:1.45rem}
h4{font-size:1.15rem}
p{margin-bottom:1rem}
ul{list-style:none}
.wrap{max-width:72rem;margin:0 auto;padding:0 1.25rem}
.btn-primary{display:inline-block;padding:0.85rem 2rem;background:linear-gradient(135deg,var(--c-amber),var(--c-amber-dark));color:var(--c-white);font-family:var(--ff-body);font-weight:700;font-size:1rem;border:none;border-radius:var(--rad);cursor:pointer;transition:transform .2s,box-shadow .2s;text-align:center}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 18px hsla(38,90%,55%,0.35);color:var(--c-white)}
.btn-outline{display:inline-block;padding:0.85rem 2rem;background:transparent;color:var(--c-navy);font-family:var(--ff-body);font-weight:700;font-size:1rem;border:2px solid var(--c-navy);border-radius:var(--rad);cursor:pointer;transition:background .2s,color .2s}
.btn-outline:hover{background:var(--c-navy);color:var(--c-white)}
.site-header{position:sticky;top:0;z-index:100;background:var(--c-navy);padding:0.75rem 0;box-shadow:var(--shadow)}
.hdr-wrap{max-width:72rem;margin:0 auto;padding:0 1.25rem;display:flex;align-items:center;justify-content:space-between}
.logo-link{font-family:var(--ff-head);font-size:1.5rem;color:var(--c-white);display:flex;align-items:center;gap:0.35rem}
.logo-link strong{color:var(--c-amber)}
.logo-icon{font-size:1.3rem;color:var(--c-amber)}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:0.5rem}
.nav-toggle span{display:block;width:26px;height:3px;background:var(--c-white);border-radius:2px;transition:transform .3s,opacity .3s}
.main-nav ul{display:flex;gap:0.2rem;align-items:center}
.main-nav a{color:hsla(0,0%,100%,0.85);padding:0.55rem 1rem;border-radius:var(--rad);font-weight:600;font-size:0.95rem;transition:background .2s,color .2s}
.main-nav a:hover,.main-nav a.active{background:hsla(0,0%,100%,0.12);color:var(--c-white)}
.has-dropdown{position:relative}
.dropdown-list{display:none;position:absolute;top:100%;left:0;background:var(--c-white);border-radius:var(--rad);box-shadow:var(--shadow);min-width:13rem;padding:0.5rem 0;z-index:110}
.has-dropdown:hover .dropdown-list{display:block}
.dropdown-list a{color:var(--c-text);padding:0.5rem 1.1rem;display:block;font-size:0.9rem}
.dropdown-list a:hover{background:var(--c-off);color:var(--c-navy)}
.hero-section{position:relative;background:var(--c-navy);color:var(--c-white);padding:5rem 0 4rem;overflow:hidden}
.hero-section .hero-bg{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;opacity:0.3}
.hero-inner{position:relative;max-width:72rem;margin:0 auto;padding:0 1.25rem;z-index:2}
.hero-inner h1{color:var(--c-white);font-size:3rem;max-width:38rem;margin-bottom:1rem}
.hero-inner p{font-size:1.2rem;max-width:34rem;margin-bottom:2rem;color:hsla(0,0%,100%,0.88)}
.hero-inner .btn-primary{font-size:1.1rem;padding:1rem 2.5rem}
.section{padding:4.5rem 0}
.section-alt{background:var(--c-off)}
.section-head{text-align:center;margin-bottom:3rem}
.section-head p{color:var(--c-muted);max-width:36rem;margin:0.5rem auto 0}
.srv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1.8rem;max-width:72rem;margin:0 auto;padding:0 1.25rem}
.srv-card{background:var(--c-white);border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.srv-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px hsla(215,45%,18%,0.14)}
.srv-card picture img{width:100%;height:14rem;object-fit:cover}
.srv-card-body{padding:1.4rem}
.srv-card-body h3{margin-bottom:0.4rem}
.srv-card-body p{font-size:0.95rem;color:var(--c-muted);margin-bottom:1rem}
.srv-card-body a{font-weight:700;color:var(--c-amber-dark)}
.about-row{max-width:72rem;margin:0 auto;padding:0 1.25rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.about-row picture img{border-radius:var(--rad);width:100%;height:auto}
.about-text h2{margin-bottom:1rem}
.about-text p{color:var(--c-muted)}
.why-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.5rem;max-width:72rem;margin:0 auto;padding:0 1.25rem}
.why-card{text-align:center;padding:2rem 1.5rem;border:1px solid var(--c-border);border-radius:var(--rad);transition:border-color .2s}
.why-card:hover{border-color:var(--c-amber)}
.why-icon{font-size:2.4rem;margin-bottom:0.8rem;display:block}
.why-card h4{margin-bottom:0.5rem}
.why-card p{font-size:0.9rem;color:var(--c-muted)}
.test-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.5rem;max-width:72rem;margin:0 auto;padding:0 1.25rem}
.test-card{background:var(--c-white);border-radius:var(--rad);padding:1.8rem;box-shadow:var(--shadow)}
.test-card .stars{color:var(--c-amber);font-size:1.1rem;margin-bottom:0.8rem;display:block}
.test-card blockquote{font-style:italic;color:var(--c-muted);margin-bottom:1rem;font-size:0.95rem;line-height:1.6}
.test-card cite{font-style:normal;font-weight:700;color:var(--c-navy);font-size:0.9rem}
.faq-wrap{max-width:48rem;margin:0 auto;padding:0 1.25rem}
.faq-wrap details{border:1px solid var(--c-border);border-radius:var(--rad);margin-bottom:0.75rem;overflow:hidden}
.faq-wrap summary{padding:1.1rem 1.3rem;font-weight:700;cursor:pointer;font-size:1rem;list-style:none;display:flex;justify-content:space-between;align-items:center;background:var(--c-white);transition:background .2s}
.faq-wrap summary::-webkit-details-marker{display:none}
.faq-wrap summary::after{content:"+";font-size:1.4rem;color:var(--c-amber);font-weight:400;transition:transform .2s}
.faq-wrap details[open] summary::after{content:"\2212"}
.faq-wrap details[open] summary{background:var(--c-off)}
.faq-wrap .faq-body{padding:0 1.3rem 1.2rem;color:var(--c-muted);font-size:0.95rem;line-height:1.7}
.cta-band{background:linear-gradient(135deg,var(--c-navy),var(--c-navy-light));color:var(--c-white);text-align:center;padding:4rem 1.25rem}
.cta-band h2{color:var(--c-white);margin-bottom:0.8rem;font-size:2.2rem}
.cta-band p{color:hsla(0,0%,100%,0.8);margin-bottom:2rem;font-size:1.1rem}
.page-hero{background:var(--c-navy);color:var(--c-white);padding:3.5rem 0;text-align:center}
.page-hero h1{color:var(--c-white);margin-bottom:0.5rem}
.page-hero p{color:hsla(0,0%,100%,0.8);max-width:32rem;margin:0 auto}
.content-section{max-width:52rem;margin:0 auto;padding:3rem 1.25rem}
.content-section h2{margin-top:2rem;margin-bottom:0.8rem}
.content-section h3{margin-top:1.5rem;margin-bottom:0.6rem}
.content-section ul,.content-section ol{margin:0 0 1rem 1.5rem;color:var(--c-muted)}
.content-section ul{list-style:disc}
.content-section ol{list-style:decimal}
.content-section li{margin-bottom:0.4rem}
.content-section p{color:var(--c-muted)}
.srv-detail{max-width:72rem;margin:0 auto;padding:3rem 1.25rem}
.srv-detail-top{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start;margin-bottom:3rem}
.srv-detail-top picture img{border-radius:var(--rad);width:100%;height:auto}
.srv-detail-info h2{margin-bottom:1rem}
.srv-detail-info p{color:var(--c-muted);margin-bottom:1rem}
.srv-features{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}
.srv-feat{display:flex;align-items:flex-start;gap:0.6rem}
.srv-feat-icon{color:var(--c-amber);font-size:1.3rem;flex-shrink:0}
.srv-feat p{font-size:0.95rem;color:var(--c-muted);margin:0}
.contact-grid{max-width:72rem;margin:0 auto;padding:3rem 1.25rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.contact-info h2{margin-bottom:1.2rem}
.contact-info p{color:var(--c-muted);margin-bottom:0.8rem}
.contact-info a{color:var(--c-amber-dark)}
.contact-form label{display:block;font-weight:600;margin-bottom:0.3rem;font-size:0.95rem}
.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:0.75rem 1rem;border:1px solid var(--c-border);border-radius:var(--rad);font-family:var(--ff-body);font-size:1rem;margin-bottom:1rem;transition:border-color .2s}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--c-amber)}
.contact-form textarea{min-height:8rem;resize:vertical}
.contact-form .btn-primary{width:100%;padding:1rem}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1.8rem;max-width:72rem;margin:0 auto;padding:0 1.25rem}
.blog-card{background:var(--c-white);border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s}
.blog-card:hover{transform:translateY(-3px)}
.blog-card picture img{width:100%;height:13rem;object-fit:cover}
.blog-card-body{padding:1.3rem}
.blog-card-body h3{font-size:1.15rem;margin-bottom:0.4rem}
.blog-card-body p{font-size:0.9rem;color:var(--c-muted)}
.blog-card-body a{font-weight:700;color:var(--c-amber-dark)}
.article-body{max-width:48rem;margin:0 auto;padding:3rem 1.25rem}
.article-body h2{margin-top:2rem}
.article-body p{color:var(--c-muted)}
.article-body ul,.article-body ol{margin:0 0 1rem 1.5rem;color:var(--c-muted)}
.article-body ul{list-style:disc}
.article-body ol{list-style:decimal}
.article-body li{margin-bottom:0.35rem}
.article-hero-img{border-radius:var(--rad);margin-bottom:2rem;width:100%;height:auto}
.thank-wrap{text-align:center;padding:5rem 1.25rem;max-width:36rem;margin:0 auto}
.thank-wrap h1{margin-bottom:1rem}
.thank-wrap p{color:var(--c-muted);margin-bottom:2rem}
.site-footer{background:var(--c-navy);color:hsla(0,0%,100%,0.75);padding:3.5rem 0 0}
.foot-grid{max-width:72rem;margin:0 auto;padding:0 1.25rem;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:2rem}
.foot-grid h3,.foot-grid h4{color:var(--c-white);margin-bottom:0.8rem}
.foot-grid a{color:hsla(0,0%,100%,0.7);font-size:0.9rem;transition:color .2s}
.foot-grid a:hover{color:var(--c-amber)}
.foot-grid ul li{margin-bottom:0.4rem}
.foot-grid p{font-size:0.9rem;line-height:1.6}
.foot-bottom{margin-top:2.5rem;border-top:1px solid hsla(0,0%,100%,0.1);padding:1.2rem 1.25rem;text-align:center;font-size:0.85rem}
.policy-links{display:flex;justify-content:center;gap:1.2rem;margin-top:0.5rem;flex-wrap:wrap}
.policy-links a{color:hsla(0,0%,100%,0.55);font-size:0.82rem}
.policy-links a:hover{color:var(--c-amber)}
.ck-overlay{position:fixed;inset:0;z-index:9999;background:hsla(0,0%,0%,0.5);display:flex;align-items:center;justify-content:center}
.ck-box{background:var(--c-white);border-radius:var(--rad);padding:2rem;max-width:28rem;width:90%;text-align:center;box-shadow:0 8px 32px hsla(0,0%,0%,0.2)}
.ck-box h3{margin-bottom:0.6rem}
.ck-box p{font-size:0.92rem;color:var(--c-muted);margin-bottom:1.5rem}
.ck-actions{display:flex;gap:0.8rem;justify-content:center}
.ck-actions .btn-primary,.ck-actions .btn-outline{padding:0.65rem 1.5rem;font-size:0.92rem}
.ck-gear{position:fixed;bottom:1.2rem;right:1.2rem;z-index:9998;width:44px;height:44px;border-radius:50%;background:var(--c-navy);color:var(--c-amber);border:none;font-size:1.4rem;cursor:pointer;box-shadow:var(--shadow);transition:transform .2s}
.ck-gear:hover{transform:rotate(45deg)}
@media(max-width:1040px){
.foot-grid{grid-template-columns:1fr 1fr}
.srv-detail-top{grid-template-columns:1fr}
.contact-grid{grid-template-columns:1fr}
.about-row{grid-template-columns:1fr}
.about-row picture{order:-1}
}
@media(max-width:752px){
h1{font-size:2rem}
h2{font-size:1.6rem}
.hero-inner h1{font-size:2.2rem}
.nav-toggle{display:flex}
.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--c-navy);padding:1rem;border-top:1px solid hsla(0,0%,100%,0.1)}
.main-nav.open{display:block}
.main-nav ul{flex-direction:column;gap:0}
.main-nav a{display:block;padding:0.75rem 1rem}
.has-dropdown:hover .dropdown-list{display:none}
.has-dropdown.open .dropdown-list{display:block;position:static;box-shadow:none;background:hsla(0,0%,100%,0.06);border-radius:0;padding:0 0 0 1rem}
.dropdown-list a{color:hsla(0,0%,100%,0.75);padding:0.6rem 1rem}
.dropdown-list a:hover{background:hsla(0,0%,100%,0.08);color:var(--c-white)}
.foot-grid{grid-template-columns:1fr}
.srv-features{grid-template-columns:1fr}
.hero-section{padding:3rem 0 2.5rem}
.section{padding:3rem 0}
.cta-band{padding:3rem 1.25rem}
}