/* Maldives-focused photographic refresh — additive overrides, preserves existing pages and functionality */
:root { --green-900:#082f27; --green-800:#104c3c; --green-700:#176448; --green-600:#25815b; --green-500:#37a477; --green-100:#e8f4ee; --green-50:#f6faf7; --ink:#112c25; --text:#46594f; --line:#e3ece6; --radius:22px; --shadow:0 16px 38px -22px rgba(8,47,39,.32); --shadow-lg:0 30px 65px -30px rgba(8,47,39,.4); }
body { background:#fff; }
h1,h2,h3 { letter-spacing:-.045em; }
.container { max-width:1240px; }
.site-header { background:rgba(255,255,255,.96); border-bottom:1px solid rgba(16,76,60,.08); }
.header-inner { height:82px; }
.btn { border-radius:12px; }
.btn-primary { background:var(--green-800); box-shadow:0 12px 25px -15px #082f27; }
.btn-primary:hover { background:var(--green-700); }
.eyebrow { letter-spacing:.1em; }
.hero { background:linear-gradient(110deg,rgba(6,35,29,.94) 0%,rgba(7,46,36,.89) 49%,rgba(9,51,39,.4) 100%),url('https://upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Apartment_Blocks_-_Hulhumale_-_Maldives_%2814111148798%29.jpg/1280px-Apartment_Blocks_-_Hulhumale_-_Maldives_%2814111148798%29.jpg') center/cover; padding:110px 0 120px; min-height:620px; }
.hero-bg { opacity:.1; }
.hero-grid { grid-template-columns:minmax(0,760px) 1fr; }
.hero-copy { position:relative; z-index:2; }
.hero h1 { color:#fff; font-size:clamp(2.6rem,5.4vw,5.2rem); line-height:1.08; }
.hero h1 .hl { background:none; color:#9fe1ba; }
.hero .lead { color:#e0ebe4; max-width:680px; font-size:1.12rem; }
.hero .eyebrow { background:rgba(255,255,255,.13); color:#c7f3d9; border:1px solid rgba(255,255,255,.2); }
.hero .btn-ghost { border-color:rgba(255,255,255,.65); color:#fff; }
.hero .btn-ghost:hover { background:#fff; color:var(--green-900); }
.hero .btn-primary { background:#fff; color:var(--green-900); }
.hero .btn-primary:hover { background:#e8f4ee; }
.hero-points { color:#ecf6f0; }
.hero-visual { justify-content:flex-end; }
.hero .logo-orb { width:min(300px,100%); background:rgba(255,255,255,.96); box-shadow:0 25px 70px rgba(0,0,0,.24); }
.hero .float-card { background:rgba(255,255,255,.97); }
.section { padding:90px 0; }
.section-head { max-width:760px; }
.section-head h2 { font-size:clamp(2rem,3.6vw,3.15rem); }
.cards-grid { gap:22px; }
.service-card { padding:0 0 1.7rem; border-radius:20px; box-shadow:0 12px 32px -28px #123c2c; }
.service-card { position:relative; overflow:hidden; }
.service-card .service-photo { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; object-position:center 80%; background:#e7f1ea; transition:transform .45s ease; transform-origin:center bottom; }
.service-card:hover .service-photo { transform:scale(1.035); }
.service-card .icon { margin: 1.8rem 0 1.1rem 1.5rem; position:relative; z-index:2; }
.service-card .service-photo + .icon { margin:-30px 0 .9rem 1.5rem; width:58px; height:58px; border-radius:16px; background:var(--green-700); color:#fff; border:3px solid #fff; box-shadow:0 10px 24px -8px rgba(8,47,39,.45); }
.service-card .service-photo + .icon svg { width:28px; height:28px; }
.service-card h3, .service-card p, .service-card .more { position:relative; z-index:2; }
.service-card .more { display:inline-flex; align-items:center; gap:.3em; font-weight:800; color:var(--green-800); }
.service-card::before { content:''; position:absolute; right:0; bottom:0; width:62%; height:64px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 70' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%2337a477' stop-opacity='.15'/%3E%3Cstop offset='1' stop-color='%23176448'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 70C80 68 170 52 300 6V70Z' fill='%23d9efe2'/%3E%3Cpath d='M40 70C120 66 200 50 300 20V70Z' fill='url(%23g)'/%3E%3C/svg%3E") no-repeat right bottom / 100% 100%; pointer-events:none; z-index:1; }
.service-card h3,.service-card p,.service-card .more { margin-left:1.5rem; margin-right:1.5rem; }
.service-card h3 { font-size:1.24rem; }
.service-card .more { margin-top:auto; }
.service-card::after { display:none; }
.service-card:focus-visible,.btn:focus-visible,.site-nav a:focus-visible { outline:3px solid #4fae7c; outline-offset:4px; }
.section-tint { background:#f4f8f5; }
.cta-band { background:linear-gradient(110deg,#0b352a,#176448); }
.service-row { scroll-margin-top:110px; }
.service-row .service-row-photo { width:100%; max-width:390px; aspect-ratio:16/10; object-fit:cover; border-radius:16px; margin:1rem 0 1.5rem; box-shadow:var(--shadow); }
@media(max-width:950px) { .hero-grid { grid-template-columns:1fr; } .hero-visual { display:none; } .hero { min-height:auto; padding:90px 0; } .cards-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:620px) { .hero { padding:70px 0 78px; background-position:60% center; } .hero h1 { font-size:clamp(2.3rem,10vw,3.4rem); } .hero .lead { font-size:1rem; } .cards-grid { grid-template-columns:1fr; } .section { padding:64px 0; } .hero-points { display:grid; } }
@media(prefers-reduced-motion:reduce) { .service-card .service-photo,.btn { transition:none; } .hero .logo-orb,.hero .float-card { animation:none; } }

/* Coastal Maldivian construction visual direction: cool lagoon accents and compact urban construction */
.hero { background-color:#0c4c46; }
.hero .hl { color:#b3e8db; }
.hero-points li::before { background:#7dd6bb; }

/* Photograph: Adam Jones, Apartment Blocks - Hulhumale - Maldives (2014), CC BY-SA 2.0. https://commons.wikimedia.org/wiki/File:Apartment_Blocks_-_Hulhumale_-_Maldives_(14111148798).jpg */
