:root{--ink:#163d39;--paper:#fbfaf6;--sand:#e9e4d9;--sage:#cad6c7;--line:#d8d8d0;--accent:#c96f56;--muted:#65716d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'DM Sans','Noto Sans SC',sans-serif}a{color:inherit;text-decoration:none}header{height:82px;padding:0 5.5%;display:flex;align-items:center;gap:32px;background:#fffefa;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:10px;font:600 13px/1 'DM Sans';letter-spacing:.12em}.brand small{display:block;font:8px 'DM Mono';letter-spacing:.22em;margin-top:4px;color:var(--muted)}.brand-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white;font:500 20px 'Playfair Display'}.brand+nav{display:flex;gap:26px;margin-left:auto;font-size:12px}.nav-cta{border-bottom:1px solid var(--ink);padding-bottom:3px}.language{border:1px solid var(--line);background:none;padding:7px 10px;font:10px 'DM Mono';color:var(--ink)}.menu{display:none;border:0;background:none;font-size:25px}.hero{display:grid;grid-template-columns:1.18fr .82fr;min-height:620px;background:var(--sage)}.hero-image{background:url('public/assets/harbourline-hero.png') center/cover}.hero-card{padding:105px 15% 65px 12%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font:10px 'DM Mono';letter-spacing:.18em;color:var(--muted);margin:0 0 20px}.hero h1,.intro h2,.residences h2,.location h2,.quality h2,.enquire h2{font:500 clamp(42px,5vw,70px)/.98 'Playfair Display','Noto Sans SC',serif;letter-spacing:-.04em;margin:0}.hero h1 em,.intro em,.location em,.quality em,.enquire em{color:var(--accent);font-style:normal}.hero-card>p:not(.eyebrow){line-height:1.8;color:#415a54;max-width:350px;margin:25px 0}.button{display:inline-flex;border:0;padding:14px 18px;font:12px 'DM Sans';letter-spacing:.04em;cursor:pointer}.button.light{background:var(--paper)}.button.dark{background:var(--ink);color:white}.text-link{font-size:12px;border-bottom:1px solid;padding-bottom:4px;margin-left:22px}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:32px 6%;background:var(--ink);color:white}.facts article{padding-left:22px;border-left:1px solid #ffffff36}.facts b{font:500 31px 'Playfair Display';display:block}.facts span{font-size:12px;color:#d6e0d9}.shell{padding:120px 8%}.intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%}.intro p:last-child{line-height:1.9;color:var(--muted);font-size:16px;max-width:520px}.section-head,.quality{display:flex;justify-content:space-between;gap:11%;align-items:end}.section-head>p{max-width:320px;color:var(--muted);line-height:1.8}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:54px;border-top:1px solid var(--line)}.feature-grid article{padding:23px 24px 0 0;margin-top:22px;border-right:1px solid var(--line);padding-left:20px}.feature-grid article:first-child{padding-left:0}.feature-grid article:last-child{border:0}.feature-grid span,.quality-list>b{font:10px 'DM Mono';color:var(--accent)}h3{font:500 23px 'Playfair Display';margin:28px 0 10px}.feature-grid p,.quality-list p{color:var(--muted);font-size:13px;line-height:1.8}.location{display:grid;grid-template-columns:1fr 1fr;background:#e2e7dc}.location-copy{padding:100px 15%}.location-copy>p:not(.eyebrow){line-height:1.9;color:#50655d}.location ul{list-style:none;padding:0;margin:35px 0 0}.location li{border-top:1px solid #9eafa3;padding:12px 0;display:flex;gap:25px}.location li b{font:12px 'DM Mono';width:55px}.map-art{position:relative;min-height:480px;overflow:hidden;background:#b9cbbd}.map-art:before{content:'';position:absolute;width:130%;height:130%;left:-30%;top:-23%;background:repeating-radial-gradient(ellipse at center,#e7eadf 0 2px,transparent 3px 53px);opacity:.65}.map-art span{position:absolute;left:16%;top:22%;font:600 29px 'DM Sans';letter-spacing:.12em}.map-art b{position:absolute;right:12%;bottom:15%;font:10px 'DM Mono';letter-spacing:.18em}.road{position:absolute;height:20px;width:120%;background:#f5f3e9;transform:rotate(-22deg);top:48%;left:-15%;border:1px solid #9ba99a}.r2{transform:rotate(53deg);top:28%;left:20%;width:90%}.water{position:absolute;right:-12%;bottom:-20%;width:88%;height:56%;border-radius:50% 0 0;background:#8daab0}.quality{align-items:start;background:var(--paper)}.quality-list{width:47%}.quality-list article{display:grid;grid-template-columns:50px 1fr;border-top:1px solid var(--line);padding:21px 0}.quality-list h3{margin:0 0 8px}.quality-list p{margin:0}.enquire{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:95px 10%;background:var(--ink);color:white}.enquire .eyebrow{color:#b9c9bd}.enquire h2 em{color:#e7a18b}.enquire>div>p:last-child{line-height:1.8;color:#cfdbd0;max-width:390px}.enquire form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.enquire label{font-size:11px;color:#d3dfd5}.enquire label:nth-child(4),.enquire small,.enquire button{grid-column:1/-1}.enquire input,.enquire select,.enquire textarea{display:block;width:100%;border:0;border-bottom:1px solid #698075;background:transparent;color:white;padding:9px 0;outline:0;margin-top:7px}.enquire select{color:#d3dfd5}.enquire option{color:#163d39}.enquire small{font-size:10px;color:#aabcb0}.enquire .button{justify-content:center}.enquire .button:hover{background:#e7a18b;color:var(--ink)}footer{padding:34px 6%;display:flex;align-items:center;gap:45px}footer p{font-size:11px;line-height:1.7;color:var(--muted);margin:0}footer .language{margin-left:auto}@media(max-width:760px){header{height:68px;padding:0 5%;gap:13px}.brand{font-size:11px}.brand-mark{width:30px;height:30px}.brand+nav{position:absolute;display:none;top:68px;left:0;right:0;background:var(--paper);padding:18px;flex-direction:column}.brand+nav.open{display:flex}.menu{display:block;order:4}.language{margin-left:auto}.hero{display:flex;flex-direction:column;min-height:0}.hero-image{height:300px}.hero-card{padding:48px 7%}.hero h1,.intro h2,.residences h2,.location h2,.quality h2,.enquire h2{font-size:44px}.facts{grid-template-columns:1fr 1fr;padding:20px}.facts article{padding:12px}.facts b{font-size:26px}.shell{padding:75px 7%}.intro,.section-head,.quality,.enquire,.location{display:block}.intro p:last-child{margin-top:28px}.feature-grid{grid-template-columns:1fr 1fr;margin-top:33px}.feature-grid article:nth-child(3){padding-left:0}.feature-grid article{padding:15px;border-bottom:1px solid var(--line)}.feature-grid h3{margin-top:18px;font-size:20px}.location-copy{padding:70px 7%}.map-art{min-height:290px}.quality-list{width:100%;margin-top:38px}.enquire{padding:70px 7%}.enquire form{margin-top:38px}.enquire .text-link{margin-left:12px}footer{display:block;padding:30px 7%}footer p{margin:20px 0}footer .language{margin:0}.hero-card .text-link{margin-left:12px}}
