
    @import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
    :root{--ink:#173458;--deep:#0b2342;--cream:#f5f7fb;--paper:#ffffff;--sage:#e8eef7;--line:#d8e2ee;--accent:#90b8e8;--body:#56697e;--shadow:0 24px 70px rgba(11,35,66,.11)}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}svg{display:block}::selection{background:#dce9fb;color:var(--deep)}
    .shell{width:min(1360px,calc(100% - 64px));margin:auto}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.18em;font:700 11px/1 'Manrope',sans-serif;color:#7895b6}.eyebrow:before{content:"";width:26px;height:1px;background:currentColor}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px}.section-head h2,.story h2,.quote-card h2,.cta h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}.section-head h2{font-size:clamp(42px,4vw,62px);line-height:1.08;margin:18px 0 0}.text-link{font-weight:700;font-size:13px;display:inline-flex;align-items:center;gap:11px;border-bottom:1px solid var(--ink);padding-bottom:8px;white-space:nowrap}.text-link svg{transition:transform .2s}.text-link:hover svg{transform:translateX(4px)}
    .topbar{background:var(--deep);color:#e8f0fa;font-size:11px;letter-spacing:.08em}.topbar .shell{height:34px;display:flex;align-items:center;justify-content:space-between}.topbar a{display:inline-flex;align-items:center;gap:8px}.topbar a:hover{text-decoration:underline}.topbar-right{display:flex;gap:26px}
    .header{position:relative;z-index:10;background:var(--paper);box-shadow:0 1px 0 rgba(18,50,89,.08)}.header .shell{height:90px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:12px;min-width:275px}.brand-mark{width:39px;height:42px;border:1.7px solid var(--ink);position:relative;display:grid;place-items:center;font:italic 30px/1 Georgia,serif;letter-spacing:-.13em;padding-right:5px}.brand-mark:after{content:"";position:absolute;right:-5px;bottom:-5px;width:8px;height:8px;background:var(--accent)}.brand-name{font:700 20px/1.1 'Manrope',sans-serif;letter-spacing:-.055em}.brand-name small{display:block;margin-top:4px;font:700 9px/1 'DM Sans',sans-serif;letter-spacing:.28em;text-transform:uppercase;color:#8497ad}.nav{display:flex;align-items:center;gap:30px}.nav a{font:700 12px/1 'Manrope',sans-serif;color:#4b6380;transition:color .2s}.nav a:hover,.nav a.active{color:#0b2e59}.nav a.active:after{content:"";display:block;height:2px;background:var(--accent);margin-top:9px}.header-cta{height:42px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--ink);color:#fff;padding:0 20px;font:700 11px/1 'Manrope',sans-serif;white-space:nowrap;transition:background .2s,transform .2s}.header-cta:hover,.button:hover{background:#285584;transform:translateY(-2px)}.menu-button{display:none;border:0;background:none;padding:8px;color:var(--ink)}
    .hero{min-height:650px;position:relative;color:white;isolation:isolate;background:#244b77 url('irish-home-hero.png') center 47%/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,27,57,.82) 0%,rgba(6,27,57,.62) 32%,rgba(6,27,57,.1) 69%,rgba(6,27,57,.06) 100%),linear-gradient(0deg,rgba(6,27,57,.4),transparent 35%)}.hero .shell{min-height:650px;display:flex;align-items:center}.hero-content{max-width:660px;padding:25px 0 76px}.hero .eyebrow{color:#c6ddf8}.hero h1{font:400 clamp(56px,6.2vw,92px)/1.02 Georgia,serif;letter-spacing:-.055em;margin:23px 0 24px}.hero h1 em{font-style:italic;color:#cee1fa}.hero p{max-width:470px;font-size:16px;line-height:1.75;color:#eef4fb;margin:0}.hero-actions{display:flex;gap:13px;margin-top:35px}.button{height:50px;display:inline-flex;align-items:center;justify-content:center;gap:17px;padding:0 23px;background:#edf4fc;color:var(--deep);font:700 12px/1 'Manrope',sans-serif;transition:transform .2s,background .2s}.button:hover{background:#fff}.button-outline{background:transparent;color:white;border:1px solid rgba(255,255,255,.65)}.button-outline:hover{background:rgba(255,255,255,.15)}.hero-side{position:absolute;right:calc((100% - min(1360px,100% - 64px))/2);bottom:39px;display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#f7fbff}.hero-side span{width:45px;height:1px;background:#f7fbff}
    .search-wrap{position:relative;z-index:2;margin-top:-43px}.search-panel{background:var(--paper);box-shadow:var(--shadow);padding:18px 20px 18px 25px;display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;gap:16px;border:1px solid rgba(216,226,238,.6)}.search-field{display:flex;flex-direction:column;gap:8px;border-right:1px solid var(--line);padding:4px 20px 4px 5px}.search-field label{font:700 10px/1 'Manrope',sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#8396ab}.search-field input,.search-field select{border:0;outline:0;background:transparent;color:var(--ink);font-size:15px;width:100%;height:26px}.search-field input::placeholder{color:#8396ab}.search-field select{appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23173458' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right center/14px no-repeat}.search-submit{height:55px;padding:0 27px;border:0;background:var(--ink);color:white;display:flex;align-items:center;gap:16px;font:700 12px/1 'Manrope',sans-serif}.search-submit:hover{background:#285584}.search-note{font-size:11px;color:#8296ae;margin:13px 0 0 6px}.search-note span{color:var(--ink);font-weight:700}
    .intro{padding:120px 0 100px}.intro-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:9%;align-items:center}.intro-image{height:535px;position:relative;overflow:hidden;background:#9cb2cc}.intro-image img{width:100%;height:100%;object-fit:cover;object-position:60% center;filter:saturate(.82)}.intro-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,35,66,.25),transparent 50%)}.image-tag{position:absolute;left:24px;bottom:24px;z-index:1;background:#f6f9fe;padding:15px 18px;min-width:186px;font:700 11px/1.5 'Manrope',sans-serif;letter-spacing:.03em}.image-tag small{display:block;font-size:10px;color:#7b91ab;letter-spacing:.11em;text-transform:uppercase;margin-bottom:3px}.intro-copy{padding:30px 0}.intro-copy h2{font:400 clamp(44px,4.2vw,66px)/1.1 Georgia,serif;letter-spacing:-.05em;margin:22px 0 24px}.intro-copy h2 em{font-weight:400;color:#769ed0}.intro-copy p{font-size:15px;line-height:1.9;color:var(--body);max-width:550px;margin:0 0 17px}.intro-stats{display:flex;gap:58px;border-top:1px solid var(--line);margin:35px 0 30px;padding-top:26px}.intro-stats strong{display:block;font:400 39px/1 Georgia,serif;letter-spacing:-.04em}.intro-stats span{font-size:11px;letter-spacing:.05em;color:#788da7;display:block;margin-top:7px}
    .properties{background:#edf3fa;padding:95px 0 105px}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:37px}.property-card{display:block;background:var(--paper);transition:transform .25s,box-shadow .25s}.property-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(19,49,88,.13)}.property-image{height:270px;position:relative;overflow:hidden;background:#c6d5e5}.property-image img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.property-card:hover img{transform:scale(1.035)}.property-badge{position:absolute;top:17px;left:17px;padding:10px 12px;background:#edf4fc;color:#203d63;font:700 10px/1 'Manrope',sans-serif;letter-spacing:.11em;text-transform:uppercase}.property-body{padding:23px 24px 25px}.property-type{font:700 10px/1 'Manrope',sans-serif;color:#8298b3;text-transform:uppercase;letter-spacing:.13em}.property-body h3{font:400 26px/1.15 Georgia,serif;letter-spacing:-.04em;margin:10px 0 8px}.property-body p{font-size:12px;color:#788ca4;margin:0;line-height:1.55}.property-bottom{border-top:1px solid #e3eaf2;margin-top:21px;padding-top:16px;display:flex;justify-content:space-between;align-items:center;font:700 11px/1 'Manrope',sans-serif}.property-bottom span{color:#7b91a9}.property-bottom svg{color:var(--ink)}.empty-state{display:none;background:white;padding:30px;margin-top:25px;color:var(--body)}
    .services{padding:108px 0 116px;background:var(--paper)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.service{border:1px solid #dbe5ef;min-height:275px;padding:31px 30px;display:flex;flex-direction:column;transition:background .25s,border-color .25s}.service:hover{background:#f4f8fd;border-color:#c9d9e9}.service-icon{width:44px;height:44px;border:1px solid #b8cce3;display:grid;place-items:center;color:var(--ink)}.service h3{font:400 30px/1.1 Georgia,serif;letter-spacing:-.03em;margin:32px 0 10px}.service p{font-size:13px;line-height:1.7;color:#6c829b;margin:0;max-width:300px}.service .service-link{margin-top:auto;padding-top:24px;font:700 11px/1 'Manrope',sans-serif;display:flex;gap:8px;align-items:center}
    .testimonial{background:var(--deep);color:#f3f7fc;overflow:hidden}.testimonial .shell{display:grid;grid-template-columns:1fr 1.18fr;gap:7%;align-items:center;min-height:425px}.quote-intro{padding:80px 0}.quote-intro .eyebrow{color:#abc5e4}.quote-intro h2{font:400 clamp(42px,4vw,60px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:20px 0}.quote-intro p{font-size:13px;color:#b8c9db;line-height:1.8;max-width:340px}.quote-card{background:#183b66;padding:49px 55px;position:relative}.quote-mark{font:400 79px/0.6 Georgia,serif;color:#b7d2f3}.quote-text{font:400 24px/1.55 Georgia,serif;letter-spacing:-.02em;margin:20px 0 30px;min-height:115px}.quote-foot{display:flex;justify-content:space-between;align-items:center;gap:20px}.quote-person{font:700 12px/1.3 'Manrope',sans-serif}.quote-person span{display:block;font:400 11px/1.3 'DM Sans',sans-serif;color:#a9bfd7;margin-top:4px}.quote-controls{display:flex;gap:8px}.quote-controls button{width:36px;height:36px;border:1px solid #6385ac;background:transparent;color:#fff;display:grid;place-items:center}.quote-controls button:hover{background:#2d598b}
    .cta{padding:95px 0;background:#dfe8f4;position:relative;overflow:hidden}.cta:after{content:"C";position:absolute;right:-35px;top:-130px;font:400 550px/.9 Georgia,serif;color:rgba(255,255,255,.23);pointer-events:none}.cta .shell{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{font-size:clamp(42px,4.5vw,68px);line-height:1.08;margin:18px 0 0;max-width:670px}.cta .button{background:var(--ink);color:white;white-space:nowrap}.cta .button:hover{background:#285584}
    .footer{background:#0a2140;color:#e4edf9;padding:63px 0 26px}.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:35px;padding-bottom:65px}.footer .brand{color:white}.footer .brand-mark{border-color:white}.footer .brand-name small{color:#9eb7d3}.footer-about{max-width:300px;font-size:12px;line-height:1.8;color:#a9bed6;margin-top:22px}.footer h4{font:700 11px/1 'Manrope',sans-serif;text-transform:uppercase;letter-spacing:.15em;margin:7px 0 23px;color:white}.footer-col a{display:block;font-size:12px;color:#b3c7dd;margin:12px 0}.footer-col a:hover{color:white}.footer-bottom{border-top:1px solid #36547a;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#8ea8c3}.footer-bottom a{text-decoration:underline}.design-note{font-size:10px;color:#8aa6c5;margin-top:14px}
    @media(max-width:1100px){.nav{gap:17px}.brand{min-width:235px}.header-cta{padding:0 14px}.intro-grid{gap:5%}.property-image{height:220px}}
    @media(max-width:900px){.topbar-right{display:none}.header .shell{height:74px}.nav{display:none;position:absolute;left:0;right:0;top:74px;background:var(--paper);padding:20px 32px 28px;box-shadow:0 14px 22px rgba(12,40,78,.12);flex-direction:column;align-items:flex-start;gap:20px}.nav.open{display:flex}.nav a.active:after{display:none}.menu-button{display:block;margin-left:auto}.header-cta{display:none}.hero,.hero .shell{min-height:610px}.hero-content{padding-bottom:80px}.intro-grid{grid-template-columns:1fr 1fr}.intro-image{height:460px}.intro-stats{gap:26px}.property-grid{gap:14px}.property-body{padding:19px}.property-body h3{font-size:23px}.property-image{height:195px}.services-grid{gap:12px}.service{padding:24px}.testimonial .shell{gap:4%}.quote-card{padding:35px}}
    @media(max-width:700px){.shell{width:min(100% - 36px,1360px)}.topbar .shell{height:31px}.topbar{font-size:10px}.brand{min-width:0}.brand-name{font-size:18px}.hero,.hero .shell{min-height:610px}.hero{background-position:60% center}.hero:before{background:linear-gradient(90deg,rgba(6,27,57,.86),rgba(6,27,57,.52) 78%,rgba(6,27,57,.4))}.hero h1{font-size:clamp(48px,11vw,70px)}.hero p{font-size:14px}.hero-actions{flex-wrap:wrap}.hero-side{right:18px;bottom:24px}.search-wrap{margin-top:-25px}.search-panel{grid-template-columns:1fr;padding:15px 18px;gap:9px}.search-field{border-right:0;border-bottom:1px solid var(--line);padding:10px 2px 15px}.search-submit{width:100%;justify-content:space-between;margin-top:4px}.intro{padding:80px 0}.intro-grid{grid-template-columns:1fr;gap:30px}.intro-image{height:370px}.intro-copy{padding:0}.intro-copy h2{font-size:47px}.intro-stats{margin:27px 0}.properties,.services{padding:75px 0}.section-head{align-items:start;flex-direction:column;gap:18px}.section-head h2{font-size:45px}.property-grid,.services-grid{grid-template-columns:1fr}.property-image{height:270px}.services-grid{gap:12px}.service{min-height:235px}.service h3{margin-top:23px}.testimonial .shell{grid-template-columns:1fr;padding-bottom:65px}.quote-intro{padding:65px 0 10px}.quote-card{padding:35px 28px}.quote-text{font-size:22px;min-height:130px}.cta{padding:75px 0}.cta .shell{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr;gap:28px;padding-bottom:40px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
  
/* Shared interior-page components */
.brand-mark{width:46px;height:46px;font-size:21px;letter-spacing:-.14em;padding-right:4px;font-style:normal;font-weight:700}
.interior-hero{background:var(--deep);color:#fff;position:relative;overflow:hidden;padding:90px 0 100px}
.interior-hero:before{content:"";position:absolute;right:-8%;top:-125%;width:68%;height:290%;border:1px solid rgba(181,207,238,.13);border-radius:50%;box-shadow:0 0 0 100px rgba(181,207,238,.035),0 0 0 200px rgba(181,207,238,.025)}
.interior-hero .shell{position:relative}.interior-hero .eyebrow{color:#aac9eb}.interior-hero h1{font:400 clamp(50px,5.6vw,82px)/1.04 Georgia,serif;letter-spacing:-.052em;max-width:820px;margin:20px 0 18px}.interior-hero p{font-size:16px;line-height:1.8;color:#c3d4e8;max-width:650px;margin:0}.breadcrumbs{display:flex;gap:10px;font:700 10px/1 'Manrope',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#a6bedb;margin-bottom:35px}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs span:last-child{color:#f3f7fc}
.inner-section{padding:85px 0}.inner-section.light{background:#fff}.inner-section.blue-tint{background:#edf3fa}.inner-section h2{font:400 clamp(35px,3.8vw,55px)/1.12 Georgia,serif;letter-spacing:-.045em;margin:14px 0 20px}.inner-section p{font-size:14px;line-height:1.85;color:var(--body)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.two-col.align-center{align-items:center}.lead{font-size:18px!important;line-height:1.75!important;color:#304d70!important}.prose{max-width:730px}.prose p{margin:0 0 20px}.prose h3{font:400 28px/1.2 Georgia,serif;letter-spacing:-.03em;margin:38px 0 12px}.prose ul{color:var(--body);font-size:14px;line-height:1.9;padding-left:19px}.editorial-image{height:510px;background:#d9e5f2;overflow:hidden}.editorial-image img{width:100%;height:100%;object-fit:cover}.editorial-note{font-size:11px;color:#7890aa;margin-top:12px}.stat-line{display:flex;gap:35px;border-top:1px solid var(--line);padding-top:25px;margin-top:33px}.stat-line strong{display:block;font:400 38px/1 Georgia,serif}.stat-line span{display:block;color:#788ea9;font-size:11px;margin-top:8px}.coverage{display:flex;flex-wrap:wrap;gap:10px;margin-top:23px}.coverage span{border:1px solid #cfdaea;background:#fff;padding:10px 14px;font-size:12px;color:#3b5c81}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:37px}.feature-card{background:#fff;border:1px solid #dce6f0;padding:29px;min-height:220px}.feature-card .number{color:#86a9d1;font:700 11px/1 'Manrope',sans-serif;letter-spacing:.15em}.feature-card h3{font:400 27px/1.16 Georgia,serif;margin:23px 0 11px;letter-spacing:-.03em}.feature-card p{margin:0;font-size:13px;line-height:1.7}.feature-card a{font-weight:700;text-decoration:underline}.page-cta{background:#dfe8f4;padding:67px 0}.page-cta .shell{display:flex;justify-content:space-between;align-items:center;gap:30px}.page-cta h2{font:400 clamp(34px,4vw,55px)/1.1 Georgia,serif;letter-spacing:-.04em;max-width:650px;margin:0}.page-cta .button{background:var(--ink);color:#fff;white-space:nowrap}.page-cta .button:hover{background:#285584}
.catalog-tools{display:flex;align-items:end;gap:12px;background:#fff;border:1px solid #dce6f0;padding:22px;margin:0 0 28px}.catalog-tools .tool{flex:1}.catalog-tools label{display:block;font:700 10px/1 'Manrope',sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#8198b3;margin-bottom:8px}.catalog-tools input,.catalog-tools select{height:42px;width:100%;border:1px solid #d8e2ee;background:#f9fbfe;padding:0 12px;color:var(--ink);outline:none}.catalog-tools input:focus,.catalog-tools select:focus{border-color:#6d9acb}.catalog-tools button{height:42px;border:0;background:var(--ink);color:white;padding:0 20px;font-weight:700}.catalog-summary{font:700 11px/1 'Manrope',sans-serif;letter-spacing:.06em;color:#7288a2;margin:0 0 23px}.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.listing-card{background:#fff;border:1px solid #dde6f0;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.listing-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(11,35,66,.1)}.listing-art{height:145px;background:linear-gradient(135deg,#153c68,#5d86b8);position:relative;overflow:hidden;color:#d9e8f9;padding:20px}.listing-art:after{content:"JC";position:absolute;right:9px;bottom:-47px;font:400 180px/1 Georgia,serif;color:rgba(255,255,255,.1);letter-spacing:-.16em}.listing-art span{position:relative;z-index:1;display:block;font:700 10px/1.3 'Manrope',sans-serif;letter-spacing:.14em;text-transform:uppercase;max-width:180px}.listing-art.site{background:linear-gradient(135deg,#274d77,#87a7cb)}.listing-art.commercial{background:linear-gradient(135deg,#142d53,#456d9e)}.listing-art.letting{background:linear-gradient(135deg,#375879,#94b2cf)}.listing-art.sold{background:linear-gradient(135deg,#243e66,#738eb4)}.listing-content{padding:22px;display:flex;flex:1;flex-direction:column}.listing-kicker{font:700 10px/1 'Manrope',sans-serif;color:#8198b3;letter-spacing:.12em;text-transform:uppercase}.listing-content h3{font:400 25px/1.2 Georgia,serif;letter-spacing:-.035em;margin:12px 0 10px}.listing-content p{font-size:12px;line-height:1.6;margin:0 0 18px;color:#7287a0}.listing-content .price{font:700 16px/1.1 'Manrope',sans-serif;color:var(--ink);margin-top:auto}.listing-content .more{border-top:1px solid #e5ecf4;margin-top:20px;padding-top:14px;font:700 11px/1 'Manrope',sans-serif;display:flex;justify-content:space-between;color:#355e8a}.listing-card[hidden]{display:none}.empty-results{display:none;background:#fff;border:1px solid #dde6f0;padding:33px;margin-top:18px;color:var(--body)}
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}.category-tile{min-height:255px;background:linear-gradient(145deg,#12325a,#4f7daf);color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s}.category-tile:nth-child(even){background:linear-gradient(145deg,#214a79,#7196c4)}.category-tile:hover{transform:translateY(-4px)}.category-tile span{font:700 10px/1 'Manrope',sans-serif;letter-spacing:.17em;text-transform:uppercase;color:#bfd5ef}.category-tile h3{font:400 32px/1.1 Georgia,serif;letter-spacing:-.04em;margin:0}.category-tile b{font-size:18px;align-self:flex-end;font-weight:400}
.detail-hero{padding:65px 0 80px;background:#e7eef8}.detail-hero .breadcrumbs{color:#6b86a5}.detail-hero .breadcrumbs span:last-child{color:var(--ink)}.detail-hero h1{font:400 clamp(43px,5vw,70px)/1.08 Georgia,serif;letter-spacing:-.05em;max-width:950px;margin:0 0 18px}.detail-meta{display:flex;flex-wrap:wrap;gap:12px}.detail-meta span{background:#fff;border:1px solid #d7e2ef;padding:9px 13px;font-size:11px;color:#436389}.detail-layout{display:grid;grid-template-columns:1.5fr .8fr;gap:7%;padding:75px 0 100px}.detail-layout h2{font:400 42px/1.12 Georgia,serif;letter-spacing:-.04em;margin:0 0 17px}.detail-layout p{font-size:15px;color:var(--body);line-height:1.85}.detail-box{background:#fff;border:1px solid #dce6f0;padding:28px;position:sticky;top:20px}.detail-box strong{font:700 21px/1.1 'Manrope',sans-serif}.detail-box .button{width:100%;margin-top:25px;background:var(--ink);color:#fff}.detail-box .secondary{display:block;text-align:center;margin-top:18px;font-size:12px;text-decoration:underline;color:#547395}.detail-disclaimer{font-size:11px!important;color:#8195ac!important}.detail-illustration{height:360px;background:linear-gradient(135deg,#143760,#7398c4);position:relative;overflow:hidden;margin:25px 0}.detail-illustration:after{content:"JC";position:absolute;right:-20px;bottom:-115px;font:400 440px/1 Georgia,serif;color:rgba(255,255,255,.1);letter-spacing:-.16em}.detail-illustration span{position:absolute;left:30px;top:28px;color:#dceaf9;font:700 11px/1 'Manrope',sans-serif;letter-spacing:.16em;text-transform:uppercase}
.quote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.review-card{background:#fff;border:1px solid #dce6f0;padding:29px}.review-card .stars{color:#638fc2;letter-spacing:.15em;font-size:15px}.review-card blockquote{font:400 20px/1.55 Georgia,serif;letter-spacing:-.02em;margin:19px 0 22px}.review-card cite{font:700 11px/1 'Manrope',sans-serif;font-style:normal;text-transform:uppercase;letter-spacing:.1em;color:#7894b4}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%}.contact-detail{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid #d8e2ee}.contact-detail small{display:block;font:700 10px/1 'Manrope',sans-serif;text-transform:uppercase;letter-spacing:.14em;color:#839ab5;margin-bottom:9px}.contact-detail a,.contact-detail span{font:400 23px/1.35 Georgia,serif;color:var(--ink)}.contact-form{background:#fff;border:1px solid #dce6f0;padding:34px}.contact-form h2{margin-top:0}.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form label{display:block;font:700 11px/1 'Manrope',sans-serif;margin-bottom:7px;color:#415f82}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #d7e2ee;background:#f9fbfe;padding:13px 14px;color:var(--ink);outline:none}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:#709bd0}.contact-form .field{margin-bottom:17px}.contact-form textarea{min-height:140px;resize:vertical}.contact-form button{background:var(--ink);color:#fff;border:0;padding:15px 24px;font-weight:700}.contact-form .form-note{font-size:11px;line-height:1.5;color:#8397ae;margin-bottom:0}
@media(max-width:900px){.listing-grid,.category-grid,.feature-grid{grid-template-columns:repeat(2,1fr)}.detail-layout{gap:4%}}
@media(max-width:700px){.interior-hero{padding:60px 0 70px}.interior-hero h1{font-size:48px}.inner-section{padding:65px 0}.two-col,.contact-grid,.detail-layout{grid-template-columns:1fr;gap:25px}.editorial-image{height:320px}.feature-grid,.listing-grid,.category-grid,.quote-grid{grid-template-columns:1fr}.catalog-tools{flex-direction:column;align-items:stretch}.catalog-tools .tool{width:100%}.page-cta .shell{flex-direction:column;align-items:flex-start}.contact-form{padding:24px}.contact-form .row{grid-template-columns:1fr}.detail-box{position:static}.detail-illustration{height:260px}.stat-line{gap:18px}}
/* Authentic property photography */
.listing-art.has-photo{height:218px;padding:0;background:#d7e3f1}
.listing-art.has-photo:after{display:none}
.listing-art.has-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.listing-card:hover .listing-art.has-photo img{transform:scale(1.035)}
.listing-art.has-photo span{position:absolute;top:14px;left:14px;background:rgba(11,35,66,.88);color:#fff;padding:9px 11px;max-width:none;font-size:9px}
.detail-illustration.photo{height:470px;background:#d7e3f1}
.detail-illustration.photo:after{display:none}
.detail-illustration.photo img{width:100%;height:100%;object-fit:cover}
.detail-illustration.photo span{background:rgba(11,35,66,.86);padding:10px 13px;color:#fff}
@media(max-width:700px){.detail-illustration.photo{height:300px}}
/* On phones, keep the home visible beneath the introduction instead of cropping it away. */
@media(max-width:700px){
  .hero,.hero .shell{min-height:760px}
  .hero{background-size:auto 49%;background-position:right bottom;background-color:#0b2342}
  .hero:before{background:linear-gradient(180deg,#0b2342 0%,#0b2342 46%,rgba(11,35,66,.82) 59%,rgba(11,35,66,.08) 100%)}
  .hero .shell{align-items:flex-start}
  .hero-content{padding:66px 0 0}
  .hero-side{bottom:35px}
}
/* A clear location marker above the overlapping search panel. */
.hero-side{bottom:104px;display:flex;align-items:center;gap:14px;padding:14px 17px;background:rgba(11,35,66,.86);border:1px solid rgba(255,255,255,.24);box-shadow:0 12px 28px rgba(6,27,57,.18);backdrop-filter:blur(12px);letter-spacing:normal;text-transform:none;color:#fff}
.hero-side span{width:auto;height:auto;background:none}
.hero-side-index{font:400 30px/1 Georgia,serif;color:#cee1fa;border-right:1px solid rgba(255,255,255,.35);padding-right:14px;white-space:nowrap}
.hero-side-copy{font:700 10px/1.3 'Manrope',sans-serif;letter-spacing:.13em;text-transform:uppercase}
@media(max-width:700px){.hero-side{right:18px;bottom:48px;padding:11px 12px;gap:10px}.hero-side-index{font-size:24px;padding-right:10px}.hero-side-copy{font-size:9px}}
/* Gently layered photography: cursor tilt on desktop, quiet depth on touch screens. */
.depth-photo{isolation:isolate;perspective:900px;box-shadow:0 16px 34px rgba(12,40,78,.15),0 2px 7px rgba(12,40,78,.1)}
.depth-photo img{display:block;width:100%;height:100%;object-fit:cover;transform:perspective(900px) rotateX(var(--photo-tilt-x,0deg)) rotateY(var(--photo-tilt-y,0deg)) scale(1.065);transition:transform .38s cubic-bezier(.2,.7,.2,1);will-change:transform}
.listing-card:hover .depth-photo img,.property-card:hover .depth-photo img{transform:perspective(900px) rotateX(var(--photo-tilt-x,0deg)) rotateY(var(--photo-tilt-y,0deg)) scale(1.09)}
.depth-photo::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at var(--photo-light-x,50%) var(--photo-light-y,30%),rgba(255,255,255,.28),transparent 52%);mix-blend-mode:screen;opacity:.42;transition:opacity .35s}
.depth-photo.is-tilting::before{opacity:.8}
.depth-photo .property-badge,.depth-photo .image-tag,.depth-photo > span{z-index:2}
.depth-photo .image-tag{box-shadow:0 9px 24px rgba(6,27,57,.22)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (min-width:701px){.hero{background-position:calc(50% + var(--hero-depth-x,0px)) calc(47% + var(--hero-depth-y,0px));transition:background-position .3s ease-out}}
@media(hover:none){.listing-card,.property-card{box-shadow:0 10px 26px rgba(12,40,78,.1)}.depth-photo::before{opacity:.3}}
@media(prefers-reduced-motion:reduce){.depth-photo img{transition:none;transform:none;will-change:auto}.depth-photo::before{display:none}.hero{transition:none}}
/* Keep the desktop blue palette on phones while leaving the house photograph clear. */
@media(max-width:700px){
  .hero{background-color:#244b77;color:#fff}
  .hero:before{background:linear-gradient(180deg,#244b77 0%,#244b77 44%,rgba(36,75,119,.92) 52%,rgba(36,75,119,.22) 65%,transparent 76%)}
  .hero .eyebrow{color:#c6ddf8}
  .hero h1 em{color:#cee1fa}
  .hero p{color:#eef4fb}
  .hero .button{background:#edf4fc;color:#0b2342}
  .hero .button-outline{background:rgba(11,35,66,.22);color:#fff;border-color:rgba(255,255,255,.65)}
  .hero-side{background:rgba(11,35,66,.86);border-color:rgba(255,255,255,.24);color:#fff;box-shadow:0 8px 22px rgba(12,40,78,.12)}
  .hero-side-index{color:#cee1fa;border-right-color:rgba(255,255,255,.35)}
}

/* Editorial content and sitewide cookie reference. */
.service-intro{color:var(--body);font-size:17px;line-height:1.7;max-width:760px}
.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:30px 0 0;padding:0;list-style:none}
.service-list li{background:#fff;border:1px solid var(--line);padding:22px 24px 22px 48px;position:relative;color:var(--body);line-height:1.65}
.service-list li:before{content:'✓';position:absolute;left:22px;color:#3972b1;font-weight:700}
.service-list a,.legal-copy a{color:#20548c;text-decoration:underline;text-underline-offset:3px}
.legal-copy{max-width:850px;color:var(--body);font-size:16px;line-height:1.8}
.legal-copy h2{color:var(--ink);font:400 clamp(36px,4vw,54px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:18px 0 30px}
.legal-copy ol{padding-left:26px}.legal-copy li{padding-left:10px;margin:0 0 20px}
.legal-source{border-top:1px solid var(--line);padding-top:20px;font-size:14px}
.cookie-notice{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;max-width:850px;margin:auto;padding:20px 22px;background:#fff;border:1px solid #bfd0e4;box-shadow:0 15px 50px rgba(11,35,66,.22);display:flex;align-items:center;gap:20px;color:var(--ink)}
.cookie-notice p{margin:0;font-size:13px;line-height:1.6;flex:1}.cookie-notice a{text-decoration:underline;text-underline-offset:3px;font-weight:700}
.cookie-notice button{border:0;background:var(--ink);color:#fff;padding:12px 18px;font-weight:700;white-space:nowrap}
@media(max-width:700px){.service-list{grid-template-columns:1fr}.cookie-notice{left:12px;right:12px;bottom:12px;display:block;padding:18px}.cookie-notice button{margin-top:14px;width:100%}}

.privacy-notice h3{color:var(--ink);font:700 18px/1.45 'Manrope',Arial,sans-serif;margin:0 0 26px}.privacy-notice p{margin:0 0 20px}.privacy-notice .lead{font-size:18px;color:var(--ink)}.privacy-notice address{font-style:normal;border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.privacy-updated{font-size:13px;color:#7189a3;margin-top:24px!important}

.footer-bottom{flex-wrap:wrap}.footer-credit{white-space:nowrap}
