/*
Theme Name: Lourantos Prime
Description: Custom real estate theme based on the supplied Lourantos HTML.
Version: 1.2.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: lourantos-prime
License: GPL-2.0-or-later
*/

    :root{
      --navy:#09224c;
      --blue:#0b4dc2;
      --gold:#d9ad53;
      --ink:#111827;
      --muted:#6b7280;
      --line:#e7eaf0;
      --bg:#ffffff;
      --soft:#f6f8fb;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      background:var(--bg);
      color:var(--ink);
      font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    .wrap{width:min(1180px, calc(100% - 40px));margin:0 auto}

    header{
      position:sticky;top:0;z-index:20;
      background:rgba(255,255,255,.92);
      backdrop-filter:blur(12px);
      border-bottom:1px solid rgba(9,34,76,.08);
    }
    .nav{height:116px;display:flex;align-items:center;justify-content:space-between;gap:30px}
    .brand{display:flex;align-items:center;min-width:110px}
    .brand img{width:84px;height:92px;object-fit:contain;object-position:left center}
    nav{display:flex;align-items:center;gap:28px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#27364d}
    nav a{transition:.2s ease}
    nav a:hover{color:var(--blue)}
    .cta{
      padding:13px 18px;border:1px solid var(--navy);color:var(--navy);
      font-size:12px;letter-spacing:.08em;text-transform:uppercase;
    }

    .hero{min-height:calc(100vh - 116px);display:grid;align-items:center;padding:76px 0 64px;position:relative;overflow:hidden}
    .hero:after{
      content:"";position:absolute;right:-120px;top:110px;width:520px;height:520px;border-radius:50%;
      background:radial-gradient(circle, rgba(11,77,194,.09), rgba(11,77,194,0) 68%);pointer-events:none;
    }
    .hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:90px;align-items:center;position:relative;z-index:1}
    .eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--blue);font-weight:600;margin-bottom:22px}
    h1{font-family:Georgia,serif;font-weight:400;color:var(--navy);font-size:clamp(52px,7.4vw,104px);line-height:.96;letter-spacing:-.03em;margin:0}
    .lead{max-width:610px;margin:28px 0 36px;font-size:18px;line-height:1.72;color:#4b5563}
    .actions{display:flex;gap:14px;flex-wrap:wrap}
    .btn{padding:15px 22px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--navy);transition:.2s ease}
    .btn.primary{background:var(--navy);color:#fff}
    .btn.primary:hover{background:var(--blue);border-color:var(--blue)}
    .btn.ghost:hover{background:var(--soft)}

    .hero-card{border:1px solid var(--line);background:#fff;padding:18px;box-shadow:0 30px 80px rgba(9,34,76,.08)}
    .hero-image{aspect-ratio:4/5;background:
      linear-gradient(180deg, rgba(9,34,76,.06), rgba(9,34,76,.3)),
      url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1200&q=80') center/cover;
    }
    .property-meta{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;padding:20px 4px 4px}
    .property-meta small{display:block;color:var(--muted);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}
    .property-meta strong{font-family:Georgia,serif;color:var(--navy);font-size:25px;font-weight:400}
    .price{font-size:14px;color:var(--navy);white-space:nowrap}

    section{padding:100px 0}
    .section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:44px}
    .section-head h2{font-family:Georgia,serif;color:var(--navy);font-size:46px;font-weight:400;margin:0}
    .section-head p{max-width:500px;margin:0;color:var(--muted);line-height:1.75}

    .properties{background:var(--soft)}
    .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
    .card{background:#fff;border:1px solid var(--line);transition:.25s ease}
    .card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(9,34,76,.08)}
    .photo{aspect-ratio:4/3;background-size:cover;background-position:center}
    .p1{background-image:url('https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=900&q=80')}
    .p2{background-image:url('https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=900&q=80')}
    .p3{background-image:url('https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=900&q=80')}
    .card-body{padding:22px}
    .tag{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:9px}
    .card h3{font-family:Georgia,serif;font-size:25px;font-weight:400;color:var(--navy);margin:0 0 10px}
    .card p{color:var(--muted);font-size:14px;line-height:1.6;margin:0 0 17px}
    .card-foot{padding-top:15px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px;color:#39465a}

    .about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}
    .logo-panel{background:#fff;border:1px solid var(--line);padding:34px 24px;min-height:520px;display:flex;align-items:center;justify-content:center}
    .logo-panel img{width:100%;max-width:620px;margin:auto;display:block}
    .about h2{font-family:Georgia,serif;font-weight:400;color:var(--navy);font-size:48px;margin:0 0 22px}
    .about p{color:var(--muted);line-height:1.8;margin:0 0 18px}
    .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}
    .stat{padding-top:20px;border-top:1px solid var(--line)}
    .stat strong{display:block;color:var(--navy);font-family:Georgia,serif;font-size:30px;font-weight:400}
    .stat span{font-size:11px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}

    .contact{background:var(--navy);color:white}
    .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
    .contact h2{font-family:Georgia,serif;font-size:48px;font-weight:400;margin:0 0 16px}
    .contact p{color:rgba(255,255,255,.72);line-height:1.75;max-width:560px}
    .contact-box{border:1px solid rgba(255,255,255,.18);padding:28px;display:grid;gap:16px}
    .contact-row{display:flex;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}
    .contact-row:last-child{padding-bottom:0;border-bottom:0}
    .contact-row span:first-child{color:rgba(255,255,255,.56);font-size:12px;text-transform:uppercase;letter-spacing:.1em}
    .contact-row span:last-child{text-align:right}

    footer{padding:28px 0;border-top:1px solid rgba(255,255,255,.1);background:var(--navy);color:rgba(255,255,255,.5);font-size:12px}
    .foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

    @media (max-width:900px){
      nav{display:none}.nav{height:92px}.brand img{width:66px;height:72px}
      .hero{min-height:auto;padding:60px 0}
      .hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:45px}
      .grid3{grid-template-columns:1fr}
      .section-head{display:block}.section-head p{margin-top:16px}
      .stats{grid-template-columns:1fr 1fr 1fr}
    }
    @media (max-width:560px){
      .wrap{width:min(100% - 26px,1180px)}
      .brand{min-width:0}.brand img{width:58px;height:64px}.cta{padding:11px 13px}
      h1{font-size:54px}.lead{font-size:16px}
      section{padding:72px 0}.section-head h2,.about h2,.contact h2{font-size:38px}
      .stats{grid-template-columns:1fr}.logo-panel{padding:26px}
    }
  
.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:20px;top:10px;background:white;padding:12px;z-index:100}
body.admin-bar header{top:32px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.menu-toggle{display:none}nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image{background:none}.photo img{width:100%;height:100%;object-fit:cover}.photo{overflow:hidden;display:block}.empty-photo{background:linear-gradient(135deg,#09224c,#0b4dc2);display:grid;place-items:center;color:white;font-family:Georgia,serif;font-size:24px}
.property-meta{grid-template-columns:1fr}.price{white-space:normal}.filters{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:32px;align-items:end}.filters label{display:grid;gap:8px;font-size:13px}.filters input,.filters select{padding:12px;border:1px solid var(--line);background:white;max-width:100%;min-width:120px}.btn{cursor:pointer;display:inline-block}.content{max-width:850px;margin:auto}.content p{line-height:1.8}.content img{height:auto}.details{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:28px 0}.details div{padding:20px;background:var(--soft)}.details dt{color:var(--muted);font-size:13px}.details dd{margin:8px 0 0;color:var(--navy);font-size:20px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.gallery img{width:100%;height:auto}.pagination{margin-top:35px}.pagination .page-numbers{padding:10px}.notice{padding:24px;border:1px solid var(--line)}.contact-row a{overflow-wrap:anywhere}.contact-row{flex-wrap:wrap}.hero-card a{display:block}.main-title{font-size:clamp(38px,6vw,66px);line-height:1.1;margin-bottom:28px}.featured-label{color:var(--blue);font-size:12px}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
@media(max-width:900px){.menu-toggle{display:block;background:white;border:1px solid var(--navy);padding:12px;color:var(--navy)}.nav{gap:12px}.nav nav.is-open{display:block;position:absolute;top:100%;left:0;right:0;background:white;padding:24px;border-bottom:1px solid var(--line)}nav ul{flex-direction:column}.details{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){body.admin-bar header{top:46px}.gallery,.details{grid-template-columns:1fr}.filters label{width:100%}.cta{font-size:10px}.menu-toggle{padding:10px}.logo-panel{min-height:320px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.card:hover{transform:none}}

.property-video{aspect-ratio:16/9;max-width:100%;margin:24px 0}.property-video iframe{width:100%;height:100%;border:0}

.contact-form-wrap{max-width:760px;margin:48px auto 0;border-top:1px solid rgba(255,255,255,.2);padding-top:32px}.contact-form-wrap h3{font-family:Georgia,serif;font-weight:400;font-size:32px;margin:0 0 20px}.contact-form-fields{display:grid;gap:12px}.contact-form-fields label{font-size:14px;color:#fff}.contact-form-fields input,.contact-form-fields textarea{width:100%;background:#fff;color:var(--ink);padding:14px;border:1px solid var(--line);font:inherit;border-radius:0}.contact-form-fields textarea{resize:vertical}.contact-send{background:var(--gold);border-color:var(--gold);color:var(--navy);font-weight:600}.contact-help{font-size:13px}.contact-help a{text-decoration:underline}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-feedback{padding:18px;border:1px solid var(--gold)}
