*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Helvetica Neue',Arial,sans-serif;color:#1c2b38;background:#fff;line-height:1.55;}

.site-header{background:var(--header-bg);border-bottom:1px solid var(--header-border);position:relative;z-index:5;}
.header-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;gap:24px;}
.header-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.logo-mark{background:var(--logo-mark-bg);color:var(--logo-mark-text);font-weight:700;font-size:14px;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.logo-text{font-size:19px;font-weight:700;color:var(--logo-text);letter-spacing:.2px;}
.header-nav{display:flex;gap:26px;}
.nav-link{color:var(--nav-text);text-decoration:none;font-size:14px;font-weight:600;letter-spacing:.2px;}
.nav-link:hover{color:var(--nav-hover);}
.header-actions{display:flex;gap:12px;align-items:center;}
.btn-contact{background:var(--btn-contact-bg);color:var(--btn-contact-text);text-decoration:none;padding:10px 20px;border-radius:3px;font-size:13px;font-weight:700;}
.btn-login{border:1px solid var(--btn-login-border);color:var(--btn-login-text);text-decoration:none;padding:9px 18px;border-radius:3px;font-size:13px;font-weight:700;}

.hero-photo{position:relative;height:420px;overflow:hidden;}
.hero-photo img{width:100%;height:100%;object-fit:cover;}
.hero-overlay{position:absolute;left:0;bottom:0;background:linear-gradient(to top,rgba(19,38,56,.85),transparent);width:100%;padding:40px 40px 28px;}
.hero-overlay p{color:var(--hero-overlay-text);font-size:16px;max-width:560px;}

.service-blocks{display:grid;grid-template-columns:repeat(3,1fr);}
.block{padding:40px 36px;color:var(--block-text);}
.block-1{background:var(--block1-bg);}
.block-2{background:var(--block2-bg);}
.block-3{background:var(--block3-bg);}
.block h3{font-size:22px;margin-bottom:14px;letter-spacing:.3px;}
.block p{font-size:14px;opacity:.92;margin-bottom:18px;}
.block-link{color:var(--block-text);text-decoration:none;font-size:13px;font-weight:700;border:1px solid rgba(255,255,255,.5);padding:9px 16px;border-radius:3px;display:inline-block;}

.testimonial-section{max-width:1280px;margin:0 auto;padding:64px 24px;display:grid;grid-template-columns:1fr 2fr;gap:48px;align-items:center;}
.testimonial-left h2{font-size:28px;color:var(--testimonial-title);margin-bottom:12px;}
.testimonial-left p{font-size:15px;color:var(--testimonial-text);}
.testimonial-right{position:relative;}
.quote-mark{font-size:64px;color:var(--quote-mark);position:absolute;top:-30px;left:-10px;font-family:Georgia,serif;}
.quote-text{font-size:18px;font-style:italic;color:var(--quote-text);line-height:1.6;margin-bottom:18px;position:relative;z-index:1;}
.quote-author{font-size:13px;font-weight:700;color:var(--testimonial-title);text-transform:uppercase;letter-spacing:.4px;}
.quote-author span{font-weight:400;text-transform:none;color:var(--testimonial-text);}

.about-split{max-width:1280px;margin:0 auto;padding:24px 24px 72px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.about-media img{width:100%;border-radius:6px;object-fit:cover;aspect-ratio:4/3;}
.about-copy h2{font-size:28px;color:var(--about-title);margin-bottom:18px;line-height:1.3;}
.about-copy h2 .accent{color:var(--accent-color);}
.about-copy p{font-size:15px;color:var(--about-text);margin-bottom:16px;}
.btn-outline{display:inline-block;border:1px solid var(--btn-outline-border);color:var(--btn-outline-text);text-decoration:none;padding:12px 24px;border-radius:3px;font-size:13px;font-weight:700;margin-top:8px;}

.blog-preview{background:var(--blog-bg);padding:64px 24px;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.blog-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:4px;margin-bottom:16px;}
.blog-card h3{font-size:16px;color:var(--blog-title);margin-bottom:10px;line-height:1.4;}
.read-more{color:var(--read-more-color);text-decoration:none;font-size:13px;font-weight:700;}

.newsletter-band{background:var(--newsletter-bg);padding:56px 24px;}
.newsletter-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1.6fr;gap:40px;align-items:center;}
.newsletter-copy h2{color:#fff;font-size:26px;margin-bottom:10px;}
.newsletter-copy p{color:var(--newsletter-text);font-size:14px;}
.newsletter-form{display:flex;gap:12px;flex-wrap:wrap;}
.newsletter-form input{flex:1;min-width:150px;padding:12px 14px;border:none;border-radius:3px;font-family:inherit;font-size:14px;}
.newsletter-form button{background:var(--newsletter-btn-bg);color:#fff;border:none;padding:12px 24px;border-radius:3px;font-weight:700;cursor:pointer;}

.site-footer{background:var(--footer-bg);color:var(--footer-text);padding:56px 24px 24px;}
.footer-nav-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:32px;padding-bottom:36px;}
.footer-brand{display:flex;flex-direction:column;gap:14px;}
.footer-brand p{font-size:13px;color:var(--footer-text);line-height:1.6;}
.footer-col h4,.footer-contact h4{color:var(--footer-heading);font-size:14px;letter-spacing:.4px;text-transform:uppercase;margin-bottom:16px;}
.footer-col a{display:block;color:var(--footer-text);text-decoration:none;font-size:14px;margin-bottom:10px;}
.footer-col a:hover{color:#fff;}
.footer-contact p{font-size:13px;margin-bottom:8px;color:var(--footer-text);}
.btn-book{display:inline-block;background:var(--btn-book-bg);color:#fff;text-decoration:none;padding:11px 20px;border-radius:3px;font-size:13px;font-weight:700;margin-top:10px;}
.footer-bottom{max-width:1280px;margin:0 auto;border-top:1px solid var(--footer-border);padding-top:20px;font-size:13px;color:#8fa0b0;text-align:center;}

.footer-inner{max-width:900px;margin:0 auto;padding:24px;text-align:center;}

@media (max-width:900px){
  .service-blocks{grid-template-columns:1fr;}
  .testimonial-section{grid-template-columns:1fr;}
  .about-split{grid-template-columns:1fr;}
  .blog-preview{grid-template-columns:1fr;}
  .newsletter-inner{grid-template-columns:1fr;}
  .footer-nav-inner{grid-template-columns:1fr;}
  .header-nav{display:none;}
}
