/* GC Prestige - SEQ House & Land project pages (house-and-land.html) */
.hp{--ink:#121f30;--ink2:#111;--mute:#6f6a66;--line:#e7ddd4;--bg:#fff8f3;--card:#fff;--acc:#69d2c8;background:var(--bg);color:var(--ink2);font-family:"Hafferxh Trial","Haffer Trial",sans-serif;min-height:60vh}
.hp *{box-sizing:border-box}
.hp [hidden]{display:none!important}
.hp a{color:inherit}
.hp-wrap{max-width:80rem;margin:0 auto;padding:0 5%}
.hp-ey{font-size:12px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--mute)}
.hp-h1{font-family:"F 37 Wicklowtrial","Hafferxh Trial","Haffer Trial",serif;font-weight:400;font-size:clamp(40px,6vw,84px);line-height:1;margin:0;letter-spacing:-.5px;text-transform:none}
.hp-h2{font-family:"F 37 Wicklowtrial","Hafferxh Trial","Haffer Trial",serif;font-weight:400;font-size:clamp(30px,3.6vw,48px);line-height:1.05;margin:8px 0 0;color:var(--ink2);text-transform:none}
.hp-h3{font-family:"F 37 Wicklowtrial","Hafferxh Trial","Haffer Trial",serif;font-weight:400;font-size:24px;line-height:1.15;margin:4px 0 6px;color:var(--ink2);text-transform:none}
.hp-p{font-size:15px;line-height:1.7;letter-spacing:.3px;color:#3b3734;margin:0}
.hp-note{font-size:11.5px;color:var(--mute);letter-spacing:.3px;line-height:1.55;margin:14px 0 0}
.hp-price{font-size:14px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}
.hp-btn{appearance:none;border:1px solid var(--ink2);background:var(--ink2);color:#fff8f3;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:15px 22px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:10px;transition:background .2s,color .2s;line-height:1.2}
.hp-btn:hover{background:transparent;color:var(--ink2)}
.hp-btn.gh{background:transparent;color:var(--ink2)}.hp-btn.gh:hover{background:var(--ink2);color:#fff8f3}
.hp-btn.lt{border-color:#fff8f3;background:#fff8f3;color:var(--ink)}.hp-btn.lt:hover{background:transparent;color:#fff8f3}
.hp-btn.lg{border-color:rgba(255,248,243,.8);background:transparent;color:#fff8f3}.hp-btn.lg:hover{background:#fff8f3;color:var(--ink)}
.hp-btns{display:flex;gap:10px;flex-wrap:wrap}
.hp-tag{display:inline-block;background:var(--ink2);color:#fff8f3;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:7px 11px}
.hp-tag.ac{background:var(--acc);color:var(--ink)}
.hp-tag.lt{background:#fff8f3;color:var(--ink)}
.hp-chip{appearance:none;border:1px solid var(--line);background:#fff;padding:9px 14px;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;cursor:pointer;color:var(--ink2)}
.hp-chip.on{background:var(--ink2);color:#fff8f3;border-color:var(--ink2)}
.hp-chips{display:flex;gap:8px;flex-wrap:wrap}
.hp-sel{appearance:none;border:1px solid var(--line);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23111' fill='none' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 12px center;padding:9px 34px 9px 12px;font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink2);cursor:pointer}
.hp-seg{display:inline-flex;border:1px solid var(--ink2)}
.hp-seg button{appearance:none;border:0;background:transparent;padding:9px 16px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;color:var(--ink2)}
.hp-seg button.on{background:var(--ink2);color:#fff8f3}
.hp-icons{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;font-weight:700;letter-spacing:.4px}
.hp-icons span{display:inline-flex;gap:5px;align-items:center;white-space:nowrap}
.hp-icons svg{width:16px;height:16px}
.hp-img{background:#ddd center/cover no-repeat}
/* hero */
.hp-hero{position:relative;min-height:min(86vh,820px);display:flex;align-items:flex-end;color:#fff8f3;background:var(--ink);overflow:hidden}
.hp-hero .hp-img{position:absolute;inset:0;transform:scale(1.04);animation:hpZoom 14s ease-out forwards}
@keyframes hpZoom{to{transform:scale(1)}}
.hp-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,31,48,.55) 0%,rgba(18,31,48,0) 30%,rgba(18,31,48,.25) 55%,rgba(18,31,48,.88) 100%)}
.hp-hero-in{position:relative;z-index:2;width:100%;padding:150px 0 54px}
.hp-crumb{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:22px;color:rgba(255,248,243,.8)}
.hp-crumb a{text-decoration:none;color:#fff8f3}.hp-crumb a:hover{text-decoration:underline}
.hp-hero .hp-h1{color:#fff8f3;max-width:900px}
.hp-hero-sub{display:flex;gap:28px;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;margin-top:26px}
.hp-hero-meta{font-size:15px;letter-spacing:.4px;color:rgba(255,248,243,.9);line-height:1.6}
.hp-hero-meta b{font-size:22px;letter-spacing:.5px;display:block;color:#fff8f3}
/* sticky sub nav */
.hp-nav{position:sticky;top:0;z-index:40;background:rgba(255,248,243,.96);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.hp-nav .hp-wrap{display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}
.hp-nav .hp-wrap::-webkit-scrollbar{display:none}
.hp-nav a{display:inline-block;padding:18px 12px;font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;text-decoration:none;color:var(--mute);border-bottom:2px solid transparent}
.hp-nav a.on,.hp-nav a:hover{color:var(--ink2);border-bottom-color:var(--ink2)}
.hp-nav .hp-btn{margin-left:auto;padding:11px 16px}
/* sections */
.hp-sec{padding:72px 0;border-bottom:1px solid var(--line);scroll-margin-top:60px}
.hp-sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.hp-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink2);border-left:1px solid var(--line)}
.hp-fact{padding:20px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.hp-fact small{display:block;font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--mute);margin-bottom:6px}
.hp-fact b{font-size:17px;letter-spacing:.3px;line-height:1.3}
.hp-ov{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:6%;align-items:start}
.hp-ov .hp-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.hp-hl{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.hp-hl li{display:flex;gap:12px;font-size:14px;line-height:1.55;color:#3b3734}
.hp-hl li:before{content:"";flex:0 0 18px;height:1px;background:var(--ink2);margin-top:11px}
/* featured */
.hp-feat{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);background:#fff;border:1px solid var(--line)}
.hp-feat>*{min-width:0}
.hp-feat .hp-img{min-height:420px;position:relative}
.hp-feat .hp-img .hp-tag{position:absolute;left:18px;top:18px}
.hp-feat-b{padding:38px 34px;display:flex;flex-direction:column;gap:14px}
.hp-kv{width:100%;border-collapse:collapse;font-size:13px;letter-spacing:.3px}
.hp-kv td{padding:9px 0;border-bottom:1px solid var(--line);vertical-align:top}
.hp-kv td:first-child{color:var(--mute);padding-right:12px}
.hp-kv td:last-child{text-align:right;font-weight:700}
/* packages */
.hp-bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-bottom:18px}
.hp-bar-l{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.hp-count{font-size:12px;color:var(--mute);letter-spacing:.4px}
.hp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hp-card{appearance:none;text-align:left;border:1px solid var(--line);background:#fff;padding:0;cursor:pointer;color:inherit;font:inherit;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s;position:relative;text-decoration:none}
.hp-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -26px rgba(0,0,0,.4)}
.hp-card.best{border-color:var(--ink2)}
.hp-card .hp-img{aspect-ratio:3/2;position:relative}
.hp-card .hp-img .hp-tag{position:absolute;left:12px;top:12px}
.hp-card-b{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.hp-card-b .hp-more{margin-top:auto;font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}
.hp-sub{font-size:12px;color:var(--mute);letter-spacing:.4px}
.hp-tbl-w{overflow-x:auto;border:1px solid var(--line);background:#fff}
.hp-tbl{width:100%;border-collapse:collapse;font-size:12.5px;letter-spacing:.3px;min-width:900px}
.hp-tbl th{position:sticky;top:0;background:#fff;text-align:left;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--mute);padding:12px 12px;border-bottom:1px solid var(--ink2);cursor:pointer;white-space:nowrap}
.hp-tbl th[data-s]:after{content:" \2195";opacity:.35}
.hp-tbl td{padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}
.hp-tbl tr{cursor:pointer}.hp-tbl tbody tr:hover{background:#fbf7f2}
.hp-tbl td.r,.hp-tbl th.r{text-align:right}
.hp-tbl .b{font-weight:700}
.hp-empty{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap;background:#fff;border:1px dashed #cbbfb3;padding:24px}
/* guide rows */
.hp-guide{border:1px solid var(--line);background:#fff}
.hp-gr{display:grid;grid-template-columns:minmax(0,1.6fr) .7fr minmax(0,1.5fr) minmax(0,1.2fr) minmax(0,1.2fr) auto;gap:12px;align-items:center;padding:13px 18px;border-bottom:1px solid var(--line);font-size:12.5px;letter-spacing:.3px}
.hp-gr:last-child{border-bottom:0}
.hp-gr.hd{font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--mute);border-bottom-color:var(--ink2)}
.hp-gr .lay{font-family:"F 37 Wicklowtrial","Hafferxh Trial","Haffer Trial",serif;font-size:18px}
.hp-gr .pr{font-weight:700}
.hp-gr button{appearance:none;border:0;background:none;padding:0;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px;cursor:pointer;color:var(--ink2)}
/* designs */
.hp-dz{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:14px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory}
.hp-dz .hp-card{scroll-snap-align:start}
.hp-dz .hp-fpt{aspect-ratio:4/3;background:#fff center/contain no-repeat;border-bottom:1px solid var(--line)}
/* gallery */
.hp-gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:190px;gap:8px}
.hp-gal button{appearance:none;border:0;padding:0;cursor:zoom-in;background:#ddd center/cover no-repeat;position:relative}
.hp-gal button:first-child{grid-column:span 2;grid-row:span 2}
.hp-gal button span{position:absolute;left:0;right:0;bottom:0;padding:8px 10px;font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.6),rgba(0,0,0,0));text-align:left;opacity:0;transition:opacity .25s}
.hp-gal button:hover span{opacity:1}
/* location */
.hp-loc{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:4%;align-items:stretch}
.hp-map{height:460px;border:1px solid var(--line);background:#eceae7;position:relative}
.hp-map .leaflet-control-attribution{font-size:9px}
.hp-map .leaflet-control-zoom a{border-radius:0!important;color:#111}
.hp-pin{background:#111;color:#fff;font-size:11px;font-weight:700;letter-spacing:.8px;padding:6px 10px;white-space:nowrap;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.25);transform:translate(-50%,-130%);position:absolute;left:0;top:0;text-decoration:none}
.hp-pin:after{content:"";position:absolute;left:50%;bottom:-5px;width:8px;height:8px;background:inherit;transform:translateX(-50%) rotate(45deg)}
.hp-pin.me{background:var(--acc);color:var(--ink);z-index:3}
.hp-pin.o{background:#fff;color:#111;opacity:.92}
.hp-dist{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink2)}
.hp-dist li{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:13.5px;letter-spacing:.3px}
.hp-dist b{white-space:nowrap}
/* costs */
.hp-cost{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4%}
.hp-steps{counter-reset:s;list-style:none;margin:0;padding:0;display:grid;gap:14px}
.hp-steps li{counter-increment:s;display:grid;grid-template-columns:38px 1fr;gap:12px;font-size:14px;line-height:1.55;color:#3b3734}
.hp-steps li:before{content:counter(s,decimal-leading-zero);font-size:11px;font-weight:700;letter-spacing:1.6px;color:var(--mute);padding-top:3px}
.hp-steps b{color:var(--ink2);display:block;font-size:15px}
/* similar */
.hp-sim{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
/* enquiry */
.hp-enq{background:var(--ink);color:#fff8f3}
.hp-enq .hp-h2{color:#fff8f3}
.hp-enq .hp-p{color:rgba(255,248,243,.82)}
.hp-enq-g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:6%;align-items:start}
.hp-form{background:#fff8f3;color:#121f30;padding:28px}
.hp-form form{display:grid;gap:12px;margin:0;color:#121f30}
.hp-form .r2{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.hp-form label{display:block;font-size:13px;font-weight:600;margin:0 0 6px;letter-spacing:.2px}
.hp-form input,.hp-form select,.hp-form textarea{display:block;width:100%;margin:0;padding:13px 14px;font:inherit;font-size:16px;line-height:1.4;color:#121f30;background:#fff;border:1px solid rgba(18,31,48,.28);border-radius:6px;letter-spacing:0}
.hp-form select{-webkit-appearance:none;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23121f30' fill='none' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:36px}
.hp-form textarea{min-height:90px;resize:vertical}
.hp-form input:focus,.hp-form select:focus,.hp-form textarea:focus{outline:none;border-color:#121f30;box-shadow:0 0 0 3px rgba(105,210,200,.45)}
.hp-form .seg{display:flex;gap:8px;flex-wrap:wrap}
.hp-form .seg label{margin:0;font-weight:500;display:inline-flex;position:relative}
.hp-form .seg input{position:absolute;left:0;top:0;opacity:0;width:1px!important;height:1px!important;padding:0!important;border:0!important;margin:0;clip:rect(0 0 0 0);overflow:hidden;pointer-events:none}
.hp-form .seg span{display:inline-block;padding:10px 14px;border:1px solid rgba(18,31,48,.28);border-radius:999px;background:#fff;font-size:14px;cursor:pointer}
.hp-form .seg input:checked+span{background:#121f30;color:#fff;border-color:#121f30}
.hp-form button[type=submit]{width:100%;min-height:52px;margin-top:4px;border:0;border-radius:6px;background:#121f30;color:#fff;font:inherit;font-size:16px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.hp-form button[type=submit]:disabled{opacity:.6;cursor:wait}
.hp-form .w-form-done,.hp-form .w-form-fail{display:none;padding:16px;border-radius:6px;font-size:15px;line-height:1.45}
.hp-form .w-form-done{background:rgba(105,210,200,.22)}.hp-form .w-form-fail{margin-top:12px;background:rgba(220,60,60,.12)}
.hp-contact{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px;font-size:15px}
.hp-contact a{color:#fff8f3;text-decoration:none;border-bottom:1px solid rgba(255,248,243,.4)}
.hp-disc{font-size:11px;line-height:1.6;color:var(--mute);padding:28px 0 60px}
/* overlays */
.hp-ov2{position:fixed;inset:0;z-index:100000;background:rgba(17,17,17,.62);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .25s}
.hp-ov2.show{opacity:1;pointer-events:auto}
.hp-ov2-in{background:var(--bg);width:100%;max-width:1120px;max-height:calc(100dvh - 40px);overflow:auto;position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.hp-x{position:absolute;right:12px;top:12px;width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.95);cursor:pointer;font-size:19px;line-height:36px;z-index:5;color:#111}
.hp-fp{background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;min-height:520px;border-right:1px solid var(--line)}
.hp-fp img{max-width:100%;max-height:calc(100dvh - 140px);height:auto;display:block;cursor:zoom-in}
.hp-fp.zoom img{max-height:none;cursor:zoom-out}
.hp-fp-tabs{display:flex;gap:6px;margin-bottom:12px}
.hp-spec{padding:40px 34px;display:flex;flex-direction:column;gap:14px}
.hp-lb{position:fixed;inset:0;z-index:100001;background:rgba(10,10,10,.94);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s}
.hp-lb.show{opacity:1;pointer-events:auto}
.hp-lb img{max-width:92vw;max-height:84vh;display:block}
.hp-lb p{position:absolute;left:0;right:0;bottom:18px;text-align:center;color:#fff;font-size:12px;letter-spacing:1.4px;text-transform:uppercase}
.hp-lb .nv{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.92);font-size:22px;cursor:pointer}
.hp-lb .nv.p{left:16px}.hp-lb .nv.n{right:16px}
/* index */
.hp-ix-hero{background:var(--ink);color:#fff8f3;padding:170px 0 64px;position:relative;overflow:hidden}
.hp-ix-hero .hp-img{position:absolute;inset:0;opacity:.35}
.hp-ix-hero .hp-wrap{position:relative}
.hp-ix-hero .hp-h1{color:#fff8f3}
.hp-stats{display:flex;gap:44px;flex-wrap:wrap;margin-top:34px}
.hp-stats b{display:block;font-family:"F 37 Wicklowtrial","Hafferxh Trial","Haffer Trial",serif;font-weight:400;font-size:44px;line-height:1}
.hp-stats span{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,248,243,.75)}
.hp-ix-map{height:440px;border:1px solid var(--line);margin-bottom:26px;background:#eceae7}
@media (max-width:991px){
 .hp-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hp-ov,.hp-feat,.hp-loc,.hp-cost,.hp-enq-g,.hp-ov2-in{grid-template-columns:1fr}
 .hp-grid,.hp-sim{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hp-gal{grid-template-columns:repeat(3,minmax(0,1fr))}
 .hp-gr{grid-template-columns:minmax(0,1.4fr) minmax(0,1.3fr) minmax(0,1fr) auto}.hp-gr .c2,.hp-gr .c5{display:none}
 .hp-fp{min-height:0;border-right:0;border-bottom:1px solid var(--line)}
}
@media (max-width:767px){
 .hp-hero{min-height:78vh}.hp-hero-in{padding:120px 0 34px}
 .hp-sec{padding:52px 0}
 .hp-grid,.hp-sim{grid-template-columns:1fr}
 .hp-gal{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:140px}
 .hp-feat .hp-img{min-height:260px}.hp-feat-b,.hp-spec{padding:24px 20px}
 .hp-gr{grid-template-columns:minmax(0,1fr) auto;gap:2px 10px}.hp-gr.hd{display:none}.hp-gr .c4{display:none}
 .hp-form{padding:20px}.hp-form .r2{grid-template-columns:1fr}
 .hp-ov2{padding:0}.hp-ov2-in{max-height:100dvh;height:100dvh;display:block}.hp-fp img{max-height:62vh}
 .hp-map,.hp-ix-map{height:380px}
 .hp-nav .hp-btn{display:none}
 .hp-stats{gap:26px}.hp-stats b{font-size:34px}
}

/* listing-template mode (property/house-land.html) */
.hp-embed{min-height:0}
.hp-embed .hp-find{font-size:clamp(40px,5vw,72px);color:var(--ink2);margin-top:14px}
.hp-embed #overview{padding-top:80px}
.hp-ctabar{background:var(--ink);color:#fff8f3;padding:34px 0}
.hp-ctabar-in{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.hp-embed .hp-enq{border-top:1px solid rgba(255,248,243,.12)}
.gc-css-end{--gc-css-end:1}
