:root{--navy:#0a3654;--blue:#1385bf;--gold:#d9a440;--ink:#30343a;--muted:#666}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:15px/1.75 Poppins,Arial,sans-serif}a{color:inherit;text-decoration:none}.container{width:min(1170px,calc(100% - 40px));margin:auto}.top{height:34px;background:#f7f7f7}.top .container{display:flex;justify-content:flex-end;gap:16px;align-items:center;height:100%;color:#555;font-size:13px}.brandbar{background:#fff}.brandbar .container{height:132px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:18px}.brand img{width:104px;height:96px;object-fit:contain}.brand h1{font:600 27px/1.15 Montserrat,Arial;margin:0;color:#164a73}.brand p{margin:7px 0 0;color:#777;font-size:13px}.call{text-align:right;color:#777}.call b{display:block;font-size:19px;color:#222;letter-spacing:.3px}.nav{background:var(--navy);position:relative;z-index:5}.nav .container{height:53px;display:flex;align-items:center}.home{padding:0 22px 0 2px;color:#fff;font-size:18px}.menu{display:flex;list-style:none;padding:0;margin:0;height:100%;align-items:center}.menu a{display:block;padding:14px 22px;color:#fff;font-weight:500;font-size:14px}.menu a:hover,.menu a.active{background:var(--blue)}.toggle{display:none;color:white;background:none;border:0;font:600 14px Poppins}.hero{height:468px;display:grid;place-items:center;background:linear-gradient(#0004,#0004),url('assets/cropped-porthcothan-beach.jpeg') center/cover}.hero-card{text-align:center;color:#fff;max-width:730px;padding:30px}.hero h2{font:600 43px/1.2 Montserrat;margin:0 0 13px;text-shadow:0 2px 8px #000}.hero p{font-size:18px;margin:0}.section{padding:78px 0}.intro{text-align:center;max-width:900px}.intro h2,.section-title{font:600 29px Montserrat;margin:0 0 23px;color:#222}.intro p{color:#666;font-size:15px}.button{display:inline-block;background:var(--blue);color:#fff;padding:11px 25px;margin-top:20px;text-transform:uppercase;font-size:12px;font-weight:bold;letter-spacing:.3px}.features{background:linear-gradient(#0c385eea,#0c385eea),url('assets/IMG_1175-scaled.jpeg') center/cover;color:#fff}.features .section-title,.features .intro p{color:#fff}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 44px;margin-top:44px}.feature{display:flex;gap:17px}.check{flex:none;width:48px;height:48px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;font-size:20px}.feature h3{font:600 16px Montserrat;margin:0 0 7px}.feature p{margin:0;font-size:13px;line-height:1.7;color:#f3f3f3}.testimonials{background:#f8f8f8}.testimonial-row{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.quote{background:#fff;padding:30px;box-shadow:0 2px 16px #0000000b;border-bottom:3px solid var(--gold)}.avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;float:left;margin:0 14px 12px 0}.stars{color:var(--gold);font-size:12px}.quote h3{font:600 16px/1.4 Montserrat;margin:0}.visited{display:block;color:#888;font-size:12px}.quote p{clear:both;font-size:13px;line-height:1.75;color:#666}.quote cite{font-style:normal;font-weight:600;color:var(--navy)}.cta{padding:65px 0;text-align:center;color:#fff;background:linear-gradient(#123b61d9,#123b61d9),url('assets/cropped-porthcothan-beach.jpeg') center/cover}.cta h2{margin:0;font:600 31px Montserrat}.cta p{margin:7px}.partners{padding:65px 0;background:#fff;text-align:center}.logos{display:flex;align-items:center;justify-content:center;gap:35px;flex-wrap:wrap;margin-top:30px}.logos img{width:125px;height:60px;object-fit:contain;filter:grayscale(10%)}footer{background:#102e44;color:#d9e0e5;padding:43px 0 18px}footer h2{font:600 17px Montserrat;color:#fff;margin:0 0 12px}footer p{margin:4px 0;font-size:13px}.copyright{border-top:1px solid #ffffff24;margin-top:28px;padding-top:17px;font-size:12px;color:#a8bac5}.subhero{height:265px;display:grid;place-items:center;background:linear-gradient(#0b3758c9,#0b3758c9),url('assets/cropped-porthcothan-beach.jpeg') center/cover;color:#fff;text-align:center}.subhero h2{font:600 35px Montserrat;margin:0}.crumb{font-size:13px;margin-top:8px}.page{padding:70px 0}.story{display:grid;grid-template-columns:1fr 360px;gap:55px}.story h2{font:600 30px Montserrat;margin-top:0}.story p{color:#555}.story-images img{width:100%;display:block;margin:0 0 20px;box-shadow:0 8px 25px #0002}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service{padding:26px;border:1px solid #e5e5e5}.service b{color:var(--navy);font:600 16px Montserrat}.service p{font-size:13px;color:#666}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:55px}.contact-card{text-align:center;padding:25px 15px;background:#f7f7f7}.contact-card strong{display:block;color:var(--navy);font:600 17px Montserrat;margin-bottom:7px}.contact-form{max-width:820px;margin:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #ddd;padding:13px;font:14px Poppins}.contact-form textarea{height:130px;margin-top:17px}.notice{display:none;margin-top:15px;padding:12px;background:#eaf7ed;color:#236438}.blog-layout{display:grid;grid-template-columns:1fr 290px;gap:50px}.posts{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.post{border:1px solid #e7e7e7}.post img{width:100%;height:190px;object-fit:cover}.post div{padding:18px}.post h2{font:600 18px/1.4 Montserrat;margin:0 0 8px;color:var(--navy)}.post p{font-size:13px;color:#777;margin:0}.sidebar{background:#f7f7f7;padding:24px;height:max-content}.sidebar h2{font:600 19px Montserrat;margin-top:0}.sidebar a{display:block;border-bottom:1px solid #ddd;padding:9px 0;color:#397297;font-size:13px}@media(max-width:760px){.top{display:none}.brandbar .container{height:92px}.brand img{width:66px;height:63px}.brand h1{font-size:18px}.brand p{font-size:10px}.call{font-size:11px}.call b{font-size:13px}.nav .container{height:auto;display:block;padding:11px 0}.home{display:none}.toggle{display:block;width:100%;text-align:left}.menu{display:none;height:auto;margin-top:10px}.menu.open{display:block}.menu a{padding:10px}.hero{height:355px}.hero h2{font-size:31px}.grid,.testimonial-row,.service-grid{grid-template-columns:1fr}.features{background-position:center}.section,.page{padding:50px 0}.story,.blog-layout{grid-template-columns:1fr}.story-images{display:grid;grid-template-columns:1fr 1fr;gap:12px}.story-images img{margin:0}.contact-grid{grid-template-columns:1fr 1fr}.form-grid,.posts{grid-template-columns:1fr}.logos{gap:18px}.logos img{width:102px}.subhero{height:205px}.subhero h2{font-size:28px}}
