:root{--blue-deep:#1B4F8A;--blue-main:#2B6CB0;--blue-light:#EBF4FF;--terra:#D4723B;--terra-light:#F5E6DC;--cream:#F7F3EE;--white:#FFFFFF;--dark:#1A1A2E;--gray:#6B7280;--gold:#C8A94E;--border:#E2D9D0;--shadow:0 2px 14px rgba(27,79,138,0.10);}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:Georgia,'Times New Roman',serif;background:var(--cream);color:var(--dark);line-height:1.75;}
h1,h2,h3,h4{font-family:Georgia,serif;line-height:1.25;}
h1{font-size:2.6rem;}
h2{font-size:1.9rem;margin-bottom:.9rem;}
h3{font-size:1.35rem;margin-bottom:.7rem;}
p{margin-bottom:1.2rem;}
a{color:var(--blue-main);text-decoration:none;}
a:hover{color:var(--terra);}
address{font-style:normal;}
img{display:block;max-width:100%;}
ul{list-style:none;}

.container{max-width:1100px;margin:0 auto;padding:0 24px;}
.section{padding:64px 0;}
.section--cream{background:var(--cream);}
.section--white{background:var(--white);}
.section--blue{background:var(--blue-deep);color:var(--white);}
.section--blue h2,.section--blue h3{color:var(--gold);}
.section--blue p{color:rgba(255,255,255,.88);}
.section--blue a{color:var(--gold);}
.section--blue a:hover{color:var(--terra-light);}

.site-header{position:sticky;top:0;z-index:100;background:var(--blue-deep);box-shadow:0 2px 8px rgba(0,0,0,.22);}
.nav-container{display:flex;align-items:center;justify-content:space-between;max-width:1100px;margin:0 auto;padding:0 24px;height:64px;}
.nav-brand a{font-family:Georgia,serif;font-size:1.1rem;font-weight:700;color:var(--gold);letter-spacing:.4px;text-decoration:none;}
.nav-links{display:flex;gap:2px;}
.nav-links li a{color:rgba(255,255,255,.82);font-family:Arial,sans-serif;font-size:.82rem;padding:5px 9px;border-radius:4px;transition:color .2s,background .2s;text-decoration:none;font-weight:500;letter-spacing:.25px;}
.nav-links li a:hover{color:var(--gold);background:rgba(200,169,78,.13);}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--white);font-size:1.5rem;padding:8px;line-height:1;}

.hero{background:linear-gradient(135deg,var(--blue-deep) 0%,var(--blue-main) 100%);color:var(--white);padding:0;}
.hero-img-wrap{position:relative;overflow:hidden;max-height:440px;}
.hero-img-wrap img{width:100%;height:440px;object-fit:cover;display:block;}
.hero-img-overlay{position:absolute;inset:0;background:rgba(20,50,100,.68);}
.hero-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 24px;}
.hero-text h1{color:var(--white);font-size:2.8rem;margin-bottom:14px;text-shadow:0 2px 8px rgba(0,0,0,.4);}
.hero-text p{color:rgba(255,255,255,.9);font-size:1.1rem;max-width:650px;margin:0 auto 10px;}
.hero-text .hero-sub{color:var(--gold);font-size:.95rem;font-style:italic;margin-bottom:28px;}
.hero-plain{padding:72px 0;text-align:center;}
.hero-plain h1{color:var(--white);font-size:2.5rem;margin-bottom:10px;}
.hero-plain p{color:rgba(255,255,255,.85);font-size:1.05rem;max-width:600px;margin:0 auto;}

.page-hero{background:var(--blue-deep);color:var(--white);padding:48px 0 40px;text-align:center;}
.page-hero h1{font-size:2.2rem;color:var(--white);margin-bottom:8px;}
.page-hero p{color:rgba(255,255,255,.82);font-size:1rem;max-width:560px;margin:0 auto;}

.btn{display:inline-block;padding:11px 26px;border-radius:4px;font-family:Arial,sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s;text-decoration:none;border:2px solid transparent;}
.btn-terra{background:var(--terra);color:var(--white);border-color:var(--terra);}
.btn-terra:hover{background:#C06030;border-color:#C06030;color:var(--white);}
.btn-outline{background:transparent;color:var(--white);border-color:var(--white);}
.btn-outline:hover{background:rgba(255,255,255,.12);color:var(--white);}
.btn-blue{background:var(--blue-main);color:var(--white);border-color:var(--blue-main);}
.btn-blue:hover{background:var(--blue-deep);border-color:var(--blue-deep);color:var(--white);}

.section-title{text-align:center;color:var(--blue-deep);margin-bottom:10px;}
.section-subtitle{text-align:center;color:var(--gray);margin-bottom:36px;font-style:italic;}
.section-divider{width:56px;height:3px;background:var(--terra);margin:10px auto 28px;border-radius:2px;}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.card{background:var(--white);border-radius:6px;border-left:4px solid var(--terra);box-shadow:var(--shadow);padding:26px 22px;transition:box-shadow .2s;}
.card:hover{box-shadow:0 4px 20px rgba(27,79,138,.16);}
.card h3{color:var(--blue-deep);margin-bottom:10px;}
.card p{font-size:.92rem;color:#4B5563;margin-bottom:12px;}
.card a{font-size:.88rem;font-family:Arial,sans-serif;color:var(--terra);font-weight:600;}
.card a:hover{color:var(--blue-main);}


.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.two-col img{width:100%;border-radius:6px;object-fit:cover;max-height:340px;}

.info-box{background:var(--blue-light);border-left:4px solid var(--blue-main);border-radius:0 4px 4px 0;padding:18px 22px;margin-bottom:22px;}
.info-box h4{color:var(--blue-deep);margin-bottom:6px;font-size:1rem;}
.info-box p{font-size:.9rem;margin-bottom:0;}

.styled-list{padding:0;margin-bottom:1.2rem;}
.styled-list li{padding:7px 0 7px 22px;position:relative;border-bottom:1px solid var(--border);font-size:.93rem;}
.styled-list li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--terra);border-radius:50%;}
.styled-list li:last-child{border-bottom:none;}

.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.gallery-grid img{width:100%;height:240px;object-fit:cover;border-radius:6px;transition:transform .2s;}
.gallery-grid img:hover{transform:scale(1.025);}

.pricing-wrap{overflow-x:auto;}
.pricing-table{width:100%;border-collapse:collapse;background:var(--white);border-radius:6px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:24px;}
.pricing-table th{background:var(--blue-deep);color:var(--gold);padding:14px 18px;text-align:left;font-family:Georgia,serif;font-size:.95rem;}
.pricing-table td{padding:13px 18px;border-bottom:1px solid var(--border);font-size:.92rem;}
.pricing-table tr:last-child td{border-bottom:none;}
.pricing-table tr:nth-child(even) td{background:var(--cream);}
.price-note{font-size:.82rem;color:var(--gray);font-style:italic;margin-top:6px;}

.contact-grid{display:grid;grid-template-columns:3fr 2fr;gap:40px;align-items:start;}
.contact-form{background:var(--white);border-radius:6px;box-shadow:var(--shadow);padding:36px;}
.form-group{margin-bottom:18px;}
.form-group label{display:block;font-family:Arial,sans-serif;font-size:.88rem;font-weight:600;color:var(--dark);margin-bottom:5px;}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:4px;font-family:Arial,sans-serif;font-size:.92rem;background:var(--cream);color:var(--dark);transition:border-color .2s;}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--blue-main);background:var(--white);}
.form-group textarea{height:110px;resize:vertical;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.contact-info-box{background:var(--white);border-radius:6px;box-shadow:var(--shadow);padding:28px;}
.contact-info-box h4{color:var(--blue-deep);margin-bottom:12px;border-bottom:2px solid var(--terra);padding-bottom:8px;}
.contact-info-box p{font-size:.9rem;margin-bottom:8px;color:#4B5563;}
.contact-info-box a{color:var(--blue-main);font-size:.9rem;}
.contact-info-box a:hover{color:var(--terra);}

.thankyou-center{text-align:center;padding:80px 24px;max-width:600px;margin:0 auto;}
.thankyou-center h1{color:var(--blue-deep);margin-bottom:14px;}
.thankyou-center p{color:var(--gray);margin-bottom:20px;}

.legal-content h2{color:var(--blue-deep);margin-top:30px;margin-bottom:10px;font-size:1.25rem;}
.legal-content h3{color:var(--blue-deep);margin-top:20px;margin-bottom:8px;font-size:1.05rem;}
.legal-content p{font-size:.93rem;line-height:1.8;}
.legal-content ul{list-style:disc;padding-left:22px;margin-bottom:1rem;}
.legal-content ul li{font-size:.93rem;margin-bottom:5px;}

.site-footer{background:#0D1B2A;color:rgba(255,255,255,.72);padding:52px 0 0;}
.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:36px;max-width:1100px;margin:0 auto;padding:0 24px 40px;}
.footer-col h4{color:var(--gold);font-family:Georgia,serif;margin-bottom:14px;font-size:.95rem;}
.footer-col ul li{margin-bottom:7px;}
.footer-col ul li a{color:rgba(255,255,255,.62);font-family:Arial,sans-serif;font-size:.83rem;transition:color .2s;}
.footer-col ul li a:hover{color:var(--gold);}
.footer-col p{font-family:Arial,sans-serif;font-size:.83rem;line-height:1.7;color:rgba(255,255,255,.62);margin-bottom:5px;}
.footer-col a{color:rgba(255,255,255,.62);font-family:Arial,sans-serif;font-size:.83rem;}
.footer-col a:hover{color:var(--gold);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 24px;text-align:center;font-family:Arial,sans-serif;font-size:.78rem;color:rgba(255,255,255,.38);max-width:1100px;margin:0 auto;}

@media(max-width:960px){
.cards{grid-template-columns:1fr 1fr;}
.two-col{grid-template-columns:1fr;}
.two-col img{max-height:260px;}
.footer-inner{grid-template-columns:1fr 1fr;}
.gallery-grid{grid-template-columns:repeat(2,1fr);}
.contact-grid{grid-template-columns:1fr;}
.hero-text h1{font-size:2.1rem;}
}
@media(max-width:640px){
.nav-links{position:absolute;top:64px;left:0;right:0;width:100%;background:var(--blue-deep);flex-direction:column;gap:0;max-height:0;overflow:hidden;transition:max-height .3s ease;}
.nav-links.open{max-height:520px;}
.nav-links li a{display:block;padding:12px 24px;border-radius:0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.9rem;}
.nav-toggle{display:block;}
.cards{grid-template-columns:1fr;}
.form-row{grid-template-columns:1fr;}
.footer-inner{grid-template-columns:1fr;}
.gallery-grid{grid-template-columns:1fr;}
.hero-text h1{font-size:1.75rem;}
.hero-img-wrap img,.hero-img-wrap{height:340px;}
.section{padding:40px 0;}
h1{font-size:1.9rem;}
h2{font-size:1.5rem;}
.contact-form{padding:22px 18px;}
.pricing-table th,.pricing-table td{padding:10px 12px;font-size:.83rem;}
}

.card-icon{width:42px;height:42px;margin-bottom:14px;display:block;}
.ci-ring{border:4px solid #2B6CB0;border-radius:50%;}
.ci-leaf{background:#D4723B;border-radius:0 50% 0 50%;}
.ci-diamond{width:30px;height:30px;background:#C8A94E;transform:rotate(45deg);margin:6px 6px 20px;}
.ci-arch{border:4px solid #1B4F8A;border-bottom:none;border-radius:21px 21px 0 0;}
