/* Mediterranean campaign palette: ocean blue, turquoise and warm apricot. */
:root{--ink:#103655;--muted:#526c7e;--bg:#f6faff;--accent:#086b87;--line:#dbe5ed}
body{background:linear-gradient(180deg,#fff 0,#f6faff 52%,#fff 100%)}
.header{padding-block:24px}.brand{color:#123d63;font-weight:800;letter-spacing:2px}.brand small{color:#117d8d}.header-contact{background:#e9f5f7;border:1px solid #cbe6ec;padding:8px 14px;border-radius:6px;font-weight:700;color:#155570}.language-wrap{border-top-color:#e6edf4}.languages button{font-weight:700;color:#516a7d}.languages button[aria-pressed=true]{background:#e4f2f7;color:#103d65;border-color:#b7d5e1}
.hero{margin-top:14px;background:linear-gradient(125deg,#0b2e57 5%,#0c4f73 56%,#0d737b 100%);padding-top:37px;padding-bottom:32px;gap:32px 43px;border-radius:16px;box-shadow:0 18px 45px #143f6212;isolation:isolate}
.hero-copy{padding-block:6px 0}.hero-copy .eyebrow{color:#a2edf0;font-size:12px;letter-spacing:.4px;font-weight:800}.hero h1{color:#fff;font-size:clamp(42px,4.6vw,61px);font-weight:800;line-height:1.15;letter-spacing:-1.4px;text-wrap:balance}.hero h1 span{display:block}.hero h1 span+span{color:#a6eff1}.hero .intro{color:#e1eef7;font-size:18px;line-height:1.85}.price-block{background:#ffffff12;border:1px solid #75bdcb55;border-inline-start:4px solid #ffb45f;padding:12px 17px;border-radius:6px;margin-bottom:20px;display:inline-flex}.hero .price{color:#ffd39e;font-size:27px;font-weight:800}.hero .small{color:#d5e6f0;margin-top:3px;font-size:11px}.hero .benefits{gap:8px;font-size:12px}.hero .benefits li{background:#ffffff12;color:#fff;border:1px solid #ffffff25;padding:6px 10px;border-radius:5px;font-weight:700}.hero .check{color:#9ef0d9}
.enquiry{border:0;border-top:5px solid #ffb45f;box-shadow:0 12px 35px #021b3a33;border-radius:10px;padding:27px 28px;background:#fff}.enquiry h2{color:#103655;font-weight:800;font-size:28px;line-height:1.25;letter-spacing:-.5px}.enquiry .explain{color:#526b7c;font-size:14px;line-height:1.8}.form-grid label{font-weight:800;font-size:13px;color:#163e60}input{background:#f3f8fc;border:1px solid #bfd1df;border-radius:5px;height:49px}input:focus{border-color:#198eab;outline-color:#198eab}input::placeholder{color:#617787}.cta{background:#ffb45f;color:#12314d;font-weight:800;border-radius:6px;box-shadow:0 5px 0 #d78a38;transition:background .15s,transform .15s,box-shadow .15s}.cta:hover{background:#ffc784;transform:translateY(-1px);box-shadow:0 6px 0 #d78a38}.cta:active{transform:translateY(2px);box-shadow:0 2px 0 #d78a38}.form-submit{font-size:18px;padding-block:15px;gap:12px}.form-note{color:#536b7c;margin-top:16px}.contact-links{color:#526d80}.enquiry:target{outline:3px solid #ffbd73;outline-offset:5px}
.hero-photo{height:310px;border-radius:8px;border:1px solid #ffffff2b}.hero-photo:after{background:linear-gradient(90deg,#08264770,transparent 55%)}.hero-photo img{object-position:50% 52%}.hero-photo figcaption{color:#244d69}.photo-label{font-weight:800;text-shadow:0 3px 10px #092f54}.photo-label span{font-weight:400;color:#fff}
h2{font-weight:800;color:#103655}.eyebrow{font-weight:800;color:#087d94}.text-link{font-size:15px;font-weight:800;text-decoration:none;border-bottom:2px solid #ffa83e;padding-bottom:5px}.offer-layout{gap:65px}.features{border:0;display:grid;gap:10px}.features li{border:1px solid #d9e8f0;background:#eaf5fb;border-radius:7px;padding:15px 18px;font-weight:700;font-size:15px;align-items:center}.features li:nth-child(2n){background:#e7f5f1;border-color:#d4eae1}.features li:before{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:#17899b;width:23px;height:23px;border-radius:50%;font-size:13px}.features li:nth-child(2n):before{background:#23836e}
.process-band{background:linear-gradient(120deg,#0c355f,#096878)}.process-band .eyebrow{color:#9aebec}.process-band h2{color:#fff}.steps{gap:24px}.step{background:#ffffff;border:0;border-top:4px solid #5ed0cb;padding:24px;border-radius:8px;box-shadow:0 8px 20px #06284922}.step:nth-child(2){border-top-color:#ffb45f}.step:nth-child(3){border-top-color:#84bbf2}.step-number{background:#e8f5f6;color:#086b7c;font-weight:800;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:7px;letter-spacing:0}.step:nth-child(2) .step-number{background:#fff0db;color:#8a500e}.step:nth-child(3) .step-number{background:#e8f0fd;color:#2c5990}.step h3{color:#103655;font-weight:800}.step p{color:#516b7b}
.faq-layout details{border-color:#d2e1ec}.faq-layout summary{font-weight:800;color:#163f61}.faq-layout summary:after{color:#087d94;background:#e5f4f7;width:29px;height:29px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.faq-layout details[open]{background:#edf7fa;padding-inline:14px;border-radius:6px}details p{color:#4b667b}
.closing{background:linear-gradient(120deg,#0d365d,#0a6a7a);border-radius:12px;box-shadow:0 12px 25px #164b6b12;border-inline-start:5px solid #ffb45f}.closing h2{color:#fff;font-weight:800}.closing .eyebrow{color:#9ce7e7}.closing p{color:#dfedf5}.closing .cta{background:#ffb45f;color:#12314d}.closing .cta:hover{background:#ffc784}
.sticky{background:#0c3155f5;color:#fff;border-top:1px solid #2e607c;box-shadow:0 -6px 25px #0a32571c}.sticky strong{font-size:15px;font-weight:800;color:#fff}.sticky small{color:#b7d3e5}.sticky .cta{font-size:15px;box-shadow:0 3px 0 #d78a38}footer .brand{color:#144368}.fine{color:#647b8b}
@media(max-width:1220px){.hero{margin-inline:20px}.hero.wrap{padding-inline:28px}}
@media(max-width:850px){.hero{gap:25px;padding-top:30px}.hero h1{font-size:45px}.hero .intro{font-size:16px}.enquiry{padding:24px 21px}.enquiry h2{font-size:25px}.hero .price{font-size:23px}.hero .benefits{font-size:11px}.offer-layout{gap:35px}.step{padding:20px}.form-submit{font-size:16px}}
@media(max-width:650px){.header{padding-block:18px}.header-contact{font-size:11px;padding:6px 9px}.brand{font-size:15px}.hero{margin:10px 12px 0;border-radius:12px;gap:25px;padding-block:26px 18px}.hero.wrap{padding-inline:20px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:11px;line-height:1.7}.hero h1{font-size:40px;letter-spacing:-1px;line-height:1.18;margin-bottom:17px}.hero .intro{font-size:16px;line-height:1.8}.price-block{padding:10px 13px;margin-bottom:17px}.hero .price{font-size:23px}.hero .benefits{gap:6px;font-size:10px}.hero .benefits li{padding:5px 7px}.enquiry{padding:24px 18px;border-top-width:5px}.enquiry h2{font-size:26px}.enquiry .explain{font-size:14px}.form-grid{gap:12px 9px}.form-grid label{font-size:12px}input{padding-inline:10px}.form-submit{font-size:16px;padding-inline:10px}.form-note{font-size:11px}.hero-photo{height:210px}.photo-label{font-size:22px}.photo-label span{font-size:9px}.steps{gap:18px}.step{grid-template-columns:38px 1fr;padding:21px 18px;gap:8px 15px}.step-number{grid-row:1/3}.step h3{font-size:20px;margin:2px 0}.step p{font-size:15px}.features li{padding:14px;font-size:14px}.closing{padding:28px 23px}.closing h2{font-size:28px}.sticky strong{font-size:11px}.sticky .cta{font-size:13px;padding-inline:16px}.sticky small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.cta{transition:none}.cta:hover,.cta:active{transform:none}}

/* Prominent two-line masthead and click-to-call contact. */
.header{gap:16px}
.header .brand{text-align:center;font-size:36px;font-weight:900;letter-spacing:1.5px;line-height:1.05;flex-shrink:0}
.header .brand small{font-size:16px;font-weight:800;letter-spacing:2.3px;margin-top:8px}
.header-contact{font-size:26px;font-weight:900;line-height:1.2;padding:12px 18px;border-width:2px}
@media(max-width:650px){
.header{padding-inline:20px;gap:12px}
.header .brand{font-size:28px;letter-spacing:1px}
.header .brand small{font-size:12px;letter-spacing:1.9px;margin-top:7px}
.header-contact{font-size:21px;font-weight:900;padding:10px 12px}
}
@media(max-width:360px){
.header{padding-inline:14px;gap:8px}
.header .brand{font-size:25px}
.header .brand small{font-size:11px;letter-spacing:1.6px}
.header-contact{font-size:19px;padding:9px 8px}
}

/* Promenade logo replaces the telephone in the left masthead slot. */
.header-logo{display:block;flex:0 1 340px;min-width:0;text-decoration:none;line-height:0}
.header-logo img{display:block;width:100%;height:auto}
@media(max-width:650px){.header-logo{flex-basis:210px}.header{padding-block:14px}}

/* Single brand identity, anchored to the physical left in every language. */
.header{justify-content:flex-start;direction:ltr}
.header-logo{flex:0 1 340px}
@media(max-width:650px){.header-logo{flex:0 1 270px}.header{padding-block:10px}}

/* Larger promenade image with a distinct gap before the wordmark. */
.header-logo{display:flex;align-items:center;gap:clamp(18px,3vw,34px);flex:0 1 520px;max-width:100%;direction:ltr;flex-direction:row-reverse}
.logo-scene{position:relative;display:block;flex:0 0 35%;aspect-ratio:682/556;overflow:hidden}
.logo-wordmark{position:relative;display:block;flex:1;min-width:0;aspect-ratio:1205/360;overflow:hidden}
.header-logo .logo-scene img{position:absolute;width:290.91%;max-width:none;height:auto;left:-7.04%;top:-21.58%}
.header-logo .logo-wordmark img{position:absolute;width:164.65%;max-width:none;height:auto;left:-61%;top:-77.78%}
@media(max-width:650px){.header-logo{flex-basis:360px;gap:18px}.header{padding-block:16px}}

/* Accessible horizontal language carousel; page language changes only on selection. */
.language-wrap{padding-block:12px 8px;border-top:1px solid #dbe5ed}
.language-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:#123d63;font-size:14px}
.language-heading strong{font-weight:800}.language-heading>span{font-size:23px;color:#087d94}
.language-carousel{display:flex;align-items:center;gap:6px;direction:ltr}
.languages{flex:1;min-width:0;display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 3px 10px;direction:ltr;scroll-behavior:smooth}
.languages::-webkit-scrollbar{display:none}
.languages button{display:flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;min-height:44px;padding:6px 10px;border:1px solid #d4e3ed;border-radius:9px;background:#fff;color:#123d63;font-size:13px;font-weight:800;white-space:nowrap;scroll-snap-align:center;box-shadow:0 3px 8px #123d6309;transition:background .2s,border-color .2s,transform .2s}
.languages button:hover{background:#eaf7fb;border-color:#18899e;transform:translateY(-2px)}
.languages button[aria-pressed=true]{background:#103d65;border-color:#103d65;color:white;box-shadow:0 4px 12px #103d6528}
.language-flag{font-size:22px;line-height:1.2}
.language-arrow{flex:0 0 34px;width:34px;height:44px;display:grid;place-items:center;padding:0;background:#e5f3f8;color:#123d63;border:1px solid #c6dfe9;border-radius:9px;font-size:26px;font-weight:700;line-height:1;cursor:pointer}
.language-arrow:hover{background:#cdeaf3}.language-arrow:disabled{opacity:.35;cursor:default}
@media(max-width:650px){.language-wrap{padding-inline:16px;padding-top:12px}.language-heading{font-size:12px;margin-bottom:6px}.language-carousel{gap:6px}.languages{gap:5px}.languages button{font-size:12px;padding:6px 8px;min-height:44px;gap:5px}.language-flag{font-size:20px}.language-arrow{flex-basis:28px;width:28px;height:44px}}
@media(prefers-reduced-motion:reduce){.languages{scroll-behavior:auto}.languages button{transition:none}.languages button:hover{transform:none}}

.required-star{color:#c43832;font-size:.85em;line-height:0;margin-inline-start:3px;vertical-align:super}

/* Brand-colored WhatsApp marks remain visible beside each enquiry CTA. */
.cta .whatsapp-icon{display:block;width:30px;height:30px;flex:0 0 30px;object-fit:contain;filter:drop-shadow(0 1px 1px #10365525)}
.sticky .cta .whatsapp-icon{width:25px;height:25px;flex-basis:25px}

.larnaca-gallery{grid-column:1/-1;width:100%;min-width:0;order:2;border-radius:12px;overflow:hidden;background:#0c3155;color:white;border:1px solid #ffffff3d}.gallery-viewport{height:460px;position:relative;direction:ltr;touch-action:pan-y}.gallery-slide{position:absolute;inset:0;margin:0;overflow:hidden}.gallery-slide[hidden]{display:none}.gallery-slide>img{width:100%;height:100%;object-fit:cover}.gallery-composite{display:grid;grid-template-columns:40% 60%;gap:3px}.gallery-building,.gallery-sea{overflow:hidden;position:relative}.gallery-building img{position:absolute;left:0;width:155%;max-width:none;height:100%;object-fit:cover;object-position:left center}.gallery-sea img{width:100%;height:100%;object-fit:cover}.gallery-slide:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#061d36aa);pointer-events:none}.gallery-slide figcaption{position:absolute;inset-inline:25px;bottom:22px;z-index:1;display:flex;flex-direction:column;gap:8px;text-shadow:0 2px 8px #0007}.gallery-slide figcaption strong{font-size:28px;letter-spacing:3px}.gallery-slide figcaption span{font-size:11px;direction:rtl;text-align:right}.gallery-arrow{position:absolute;top:42%;z-index:2;width:44px;height:50px;border:1px solid #ffffff70;border-radius:8px;background:#082e51c9;color:white;font-size:36px;line-height:1;cursor:pointer}.gallery-arrow:hover{background:#0b5774}.gallery-prev{left:12px}.gallery-next{right:12px}.gallery-toolbar{display:flex;align-items:center;justify-content:center;gap:22px;padding:14px;direction:ltr}.gallery-dots{display:flex;gap:12px}.gallery-dots button{width:12px;height:12px;padding:0;border:1px solid #ffffffb0;border-radius:50%;background:transparent;cursor:pointer;position:relative}.gallery-dots button:before{content:'';position:absolute;inset:-7px}.gallery-dots button[aria-pressed=true]{background:#ffb45f;border-color:#ffb45f}.gallery-count{font-size:12px;color:#d0e2ed}.photo-credits{font-size:10px;padding:0 18px 9px;direction:ltr;color:#bdd3e0}.photo-credits summary{border:0;padding:2px;font-size:10px;font-weight:400;justify-content:center}.photo-credits summary:after{font-size:14px;margin-left:8px}.photo-credits p{font-size:10px;color:#bdd3e0;padding:0;margin:8px 0}.photo-credits a{color:inherit}@media(max-width:650px){.gallery-viewport{height:350px}.gallery-composite{grid-template-columns:35% 65%}.gallery-slide figcaption{inset-inline:17px;bottom:15px}.gallery-slide figcaption strong{font-size:20px;letter-spacing:2px}.gallery-slide figcaption span{font-size:9px}.gallery-arrow{width:38px;height:46px}.gallery-prev{left:8px}.gallery-next{right:8px}.gallery-slide>img{object-position:center}.gallery-toolbar{padding:14px}}

.gallery-sea img{position:absolute;right:0;width:285%;max-width:none;height:100%;object-fit:cover;object-position:right center}.gallery-slide:last-of-type>img{object-position:center top}

/* Captions follow the chosen page language. */
.gallery-slide figcaption{direction:inherit;inset-inline:65px;gap:6px}.gallery-slide figcaption strong{letter-spacing:0;line-height:1.3;font-size:30px}.gallery-slide figcaption span{font-size:14px;direction:inherit;text-align:inherit}.gallery-slide figcaption span[data-i]{font-size:10px}.gallery-hint{text-align:center;font-size:13px;font-weight:bold;margin:12px 12px 0;color:#e0eff7}.gallery-toolbar{padding-top:10px}.gallery-slide figcaption{direction:rtl;text-align:right}html[dir=ltr] .gallery-slide figcaption{direction:ltr;text-align:left}@media(max-width:650px){.gallery-slide figcaption{inset-inline:53px;bottom:18px}.gallery-slide figcaption strong{font-size:23px}.gallery-slide figcaption span{font-size:13px}.gallery-slide figcaption span[data-i]{font-size:9px}.gallery-hint{font-size:12px}}

/* Four individual images at the end of the landing page. */
.gallery-section{padding-top:0;padding-bottom:125px}.gallery-section .larnaca-gallery{order:initial;box-shadow:0 12px 35px #123d6314}.gallery-scene{display:block;width:100%;height:100%;overflow:hidden;background:#0c3155}.gallery-slide:has(.gallery-scene) figcaption{pointer-events:none}.bottom-section{padding-bottom:45px}.gallery-section .gallery-slide:last-of-type>img{object-position:center top}@media(max-width:650px){.gallery-section{padding-bottom:125px}.bottom-section{padding-bottom:35px}}

/* Highlight the primary property message. */
.hero-copy .eyebrow{display:block;width:fit-content;max-width:100%;background:#fff;color:#0b3155;padding:8px 18px;border:1px solid #fff;border-radius:999px;font-size:17px;font-weight:900;line-height:1.4;letter-spacing:0;box-shadow:0 7px 18px #031c354d,0 2px 0 #a6eff1}
@media(max-width:650px){.hero-copy .eyebrow{width:fit-content;max-width:100%;font-size:15px;padding:8px 16px;line-height:1.4;text-align:center;text-wrap:balance}}

/* Center the compact property capsule and its label. */
.hero-copy .eyebrow{display:flex;align-items:center;justify-content:center;margin-inline:auto;text-align:center;direction:inherit;overflow:visible;min-height:44px}

/* Keep eight gallery controls within narrow screens. */
.gallery-dots{gap:10px;flex-wrap:wrap;justify-content:center}.gallery-count{white-space:nowrap}.gallery-toolbar{gap:16px}

.gallery-slide img[src*="flamingos-blue-lake"]{object-position:center 58%}.gallery-slide figcaption .flamingo-credit{font-size:10px;letter-spacing:0;line-height:1.4;opacity:.9;text-align:left}.flamingo-credit a{pointer-events:auto}

.gallery-slide>img.user-flamingo-photo{object-fit:contain;background:#182d39}

/* A quieter header wordmark at every screen size. */
.header-logo .logo-wordmark{transform:scale(.78);transform-origin:center;}

/* Keep international telephone numbers in dialing order in every language. */
a[href^="tel:"], .contact-links .number, input[type="tel"] {direction:ltr;unicode-bidi:isolate;}
a[href^="tel:"] {white-space:nowrap;}

/* Separate the subtitle so its spacing and brand color stay consistent. */
.header-logo .logo-wordmark{aspect-ratio:auto;overflow:visible;container-type:inline-size;}
.logo-title{display:block;position:relative;width:100%;aspect-ratio:1205/225;overflow:hidden;}
.header-logo .logo-title img{position:absolute;width:164.65%;max-width:none;height:auto;left:-61%;top:-124.44%;}
.logo-subtitle{display:block;margin-top:clamp(14px,2vw,24px);color:#064799;font-family:Arial,sans-serif;font-size:8.6cqw;font-weight:800;letter-spacing:.22em;line-height:1.2;text-align:center;white-space:nowrap;direction:ltr;}

.promotion-section{padding-top:16px;padding-bottom:24px}.promotion-card{padding:clamp(24px,4vw,44px);border:1px solid #cfdfeb;border-radius:24px;background:linear-gradient(120deg,#eef6fb,#f5faf7);color:#123b5b}.promotion-card h2{margin:0 0 18px;font-size:clamp(25px,3vw,36px);line-height:1.3}.promotion-card p{max-width:920px;margin:0 0 14px;font-size:clamp(17px,1.7vw,20px);line-height:1.8}.promotion-card .text-link{display:inline-block;max-width:920px;line-height:1.7;font-weight:700;overflow-wrap:anywhere}

/* Blue ellipse around the Larnaca Real Estate wordmark. */
.header-logo .logo-wordmark{padding:30px 36px;border:3px solid #064799;border-radius:50%;box-sizing:border-box;}
@media(max-width:650px){.header-logo .logo-wordmark{padding:23px 25px;}}

/* Readable rounded benefit cards below the opening price. */
.hero .benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:0;width:100%;font-size:15px;}
.hero .benefits li{display:flex;align-items:center;gap:8px;min-width:0;padding:13px 14px;border-radius:16px;border:1px solid #b8dce9;background:#eef7fc;color:#123b5b;font-weight:800;line-height:1.5;box-shadow:0 3px 10px #06243b15;}



.hero .benefits .check{color:#17657a;flex-shrink:0;}
@media(max-width:650px){.hero .benefits{font-size:13px;gap:8px;}.hero .benefits li{padding:11px 10px;border-radius:13px;gap:6px;}}

/* Keep the two service cards on the right and the other benefits on the left. */
.hero .benefits{direction:ltr;}
.hero .benefits li{direction:rtl;}
html[dir="ltr"] .hero .benefits li{direction:ltr;}
.hero .benefits li:nth-child(1){grid-column:1;grid-row:2;}
.hero .benefits li:nth-child(2){grid-column:1;grid-row:1;}
.hero .benefits li:nth-child(3){grid-column:2;grid-row:1;}
.hero .benefits li:nth-child(4){grid-column:2;grid-row:2;}

/* Verified location benefits, before the project selection. */
.location-section{padding-top:20px;padding-bottom:38px}.location-section>h2{margin:0 0 12px;color:#123b5b;font-size:clamp(27px,3vw,38px);line-height:1.35}.location-section>.body-copy{margin-top:0;max-width:800px}.location-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:25px}.location-fact{padding:24px 20px;background:#eef7fc;border:1px solid #cbdfea;border-radius:20px;color:#123b5b;min-width:0}.fact-number{display:block;color:#17657a;font-size:14px;letter-spacing:.1em;font-weight:700;margin-bottom:18px}.location-fact h3{font-size:21px;line-height:1.45;margin:0 0 12px}.location-fact p{font-size:16px;line-height:1.8;margin:0;color:#425d73}.location-note{font-size:13px;line-height:1.8;color:#52677a;margin:18px 0 8px}.location-sources{font-size:13px;color:#52677a;line-height:1.8}.location-sources summary{cursor:pointer;width:fit-content}.location-sources a{color:#175579;text-underline-offset:3px}@media(max-width:1000px){.location-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.location-facts{grid-template-columns:1fr;gap:12px}.location-fact{padding:21px}.fact-number{margin-bottom:10px}}
