/* North Lakes Today brochure styles: scoped to the shortcode container. */
.nlt-page {font-family:Arial,sans-serif;color:#183246}
.nlt-page {--navy:#102d45;--teal:#007e88;--cream:#f5f7f6;--gold:#f6bf4d}
.nlt-page, .nlt-page * {box-sizing:border-box}
.nlt-page {margin:0;color:#183246;font-family:Arial,Helvetica,sans-serif;line-height:1.55;background:#fff}
.nlt-page header {background:var(--navy);color:white;padding:17px max(5%,calc((100% - 1120px)/2));display:flex;justify-content:space-between;align-items:center;gap:12px}
.nlt-page header strong {font-size:22px}
.nlt-page a.btn, .nlt-page button.btn {background:var(--gold);color:#102d45;padding:14px 24px;border-radius:5px;text-decoration:none;font-weight:800;border:0;cursor:pointer;display:inline-block}
.nlt-page .hero {background:linear-gradient(115deg,#102d45,#08636d);color:white;padding:76px 5%;text-align:center}
.nlt-page .eyebrow {text-transform:uppercase;letter-spacing:2px;font-weight:bold;color:#f6bf4d}
.nlt-page .hero h1 {font-size:clamp(37px,6vw,72px);line-height:1.08;max-width:940px;margin:12px auto}
.nlt-page .hero p {font-size:21px;max-width:760px;margin:22px auto 30px}
.nlt-page .wrap {max-width:1120px;margin:auto;padding:65px 24px}
.nlt-page h2 {font-size:clamp(29px,4vw,43px);line-height:1.18;margin:0 0 17px}
.nlt-page .muted {color:#5c6c76}
.nlt-page .grid {display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.nlt-page .card {border:1px solid #dce4e5;border-radius:9px;padding:24px;background:white}
.nlt-page .card strong {font-size:26px;color:var(--teal)}
.nlt-page .shade {background:var(--cream)}
.nlt-page .preview {display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:30px 0}
.nlt-page .page {aspect-ratio:1/1.414;border:2px dashed #a4b5ba;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#6b7d85;border-radius:5px;font-weight:bold}
.nlt-page .page small {font-weight:normal}
.nlt-page .three {display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.nlt-page .three h3 {color:var(--teal)}
.nlt-page .tag {background:#fce9b6;color:#533c06;padding:6px 12px;border-radius:30px;font-size:12px;font-weight:bold}
.nlt-page .prices {display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.nlt-page .price {border:1px solid #dce4e5;padding:24px;border-radius:8px}
.nlt-page .price b {font-size:30px;color:var(--teal)}
.nlt-page form {max-width:760px;margin:auto;background:white;padding:28px;border-radius:12px;box-shadow:0 7px 35px #112c3b18}
.nlt-page label {display:block;font-weight:700;margin:14px 0 6px}
.nlt-page input[type=text], .nlt-page input[type=email], .nlt-page input[type=tel], .nlt-page select {width:100%;padding:13px;border:1px solid #b9c8cb;border-radius:5px;font-size:16px}
.nlt-page .checks {display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.nlt-page .checks label {padding:12px;border:1px solid #d9e2e3;border-radius:6px;margin:0;font-weight:normal}
.nlt-page .checks input {margin-right:8px}
.nlt-page .total {background:#e6f4f2;padding:22px;margin:24px 0;border-radius:7px}
.nlt-page .total strong {font-size:31px;color:#08636d}
.nlt-page .fine {font-size:13px;color:#60717a}
.nlt-page footer {background:#102d45;color:white;padding:32px;text-align:center}
@media(max-width:720px) {
.nlt-page .grid, .nlt-page .preview, .nlt-page .prices {grid-template-columns:repeat(2,1fr)}
.nlt-page .three {grid-template-columns:1fr}
.nlt-page header strong {font-size:18px}
.nlt-page .hero {padding:55px 22px}
.nlt-page .wrap {padding:45px 20px}
.nlt-page form {padding:20px}
.nlt-page .checks {grid-template-columns:1fr}
}
.nlt-page .nlt-feedback{margin:12px 0;color:#a12d2d}.nlt-page button:disabled{opacity:.6;cursor:wait}
/* v0.9.6: scoped CTA buttons, protected from WordPress theme overrides */
.nlt-page{--navy:#102d45;--teal:#007e88;--cream:#f5f7f6;--gold:#f6bf4d}
.nlt-page a.btn,.nlt-page button.btn,.nlt-page button[type="submit"].btn{appearance:none!important;-webkit-appearance:none!important;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:13px 25px!important;border:2px solid #e8ad2c!important;border-radius:8px!important;background:#f6bf4d!important;color:#102d45!important;font:800 16px/1.3 Arial,Helvetica,sans-serif!important;letter-spacing:.01em;text-decoration:none!important;text-align:center;box-shadow:0 3px 0 #b88315,0 6px 16px rgba(16,45,69,.13)!important;cursor:pointer;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}
.nlt-page a.btn:hover,.nlt-page button.btn:hover{background:#ffcf67!important;color:#102d45!important;transform:translateY(-1px);box-shadow:0 4px 0 #b88315,0 8px 18px rgba(16,45,69,.2)!important}
.nlt-page a.btn:focus-visible,.nlt-page button.btn:focus-visible{outline:3px solid #087e88!important;outline-offset:3px}
.nlt-page button.btn:disabled{opacity:.65;cursor:wait;transform:none}
.nlt-page #booking button.btn{width:100%;min-height:54px}
@media(max-width:480px){.nlt-page a.btn,.nlt-page button.btn{padding:12px 15px!important;font-size:15px!important}}
/* v0.9.7: callback section alignment and theme-resistant CTAs */
.nlt-page #request-call .nlt-call-inner{max-width:760px;margin:0 auto;width:100%}
.nlt-page #request-call .nlt-call-inner>h2,.nlt-page #request-call .nlt-call-inner>p{max-width:760px;margin-left:0;margin-right:0}
.nlt-page #request-call form.nlt-booking{width:100%;max-width:760px;margin:24px auto 0;box-sizing:border-box}
.nlt-page #request-call form.nlt-booking input{display:block;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:13px!important;border:1px solid #b9c8cb!important;border-radius:5px!important}
.nlt-page button.nlt-primary-cta,.nlt-page #booking button.nlt-primary-cta,.nlt-page #call-request button.nlt-primary-cta{background:#103b61!important;color:#fff!important;border:2px solid #103b61!important;border-radius:8px!important;padding:15px 26px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:52px!important;font:800 17px/1.25 Arial,sans-serif!important;box-shadow:0 4px 12px rgba(16,45,69,.18)!important;cursor:pointer!important}
.nlt-page button.nlt-primary-cta:hover{background:#17547f!important;border-color:#17547f!important;color:#fff!important}
.nlt-page #booking button.nlt-primary-cta{width:100%!important}
/* v0.9.8: callback copy and form share one 760px centred column */
.nlt-page section#request-call.wrap{padding-top:28px!important}
.nlt-page section#request-call .nlt-call-inner{width:100%!important;max-width:760px!important;margin-inline:auto!important;box-sizing:border-box!important}
.nlt-page section#request-call .nlt-call-inner>h2,.nlt-page section#request-call .nlt-call-inner>p{width:100%!important;max-width:100%!important;text-align:left!important;margin-left:0!important;margin-right:0!important}
.nlt-page section#request-call form#call-request{width:100%!important;max-width:100%!important;margin:0!important;box-sizing:border-box!important}
/* Configurable Heyzine brochure samples */
.nlt-page .nlt-heyzine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:100%}
.nlt-page .nlt-heyzine-card{min-width:0}
.nlt-page .nlt-heyzine-card iframe{display:block;width:100%;height:450px;border:1px solid #d3dbe3;border-radius:8px;background:#fff}
.nlt-page .nlt-heyzine-card h3{margin:0 0 12px}
@media(max-width:767px){.nlt-page .nlt-heyzine-grid{grid-template-columns:1fr}.nlt-page .nlt-heyzine-card iframe{height:420px}}
/* v0.9.13: mobile brochure cover instead of embedded desktop viewer */
.nlt-page .nlt-mobile-sample{display:none}
@media(max-width:767px){
.nlt-page .nlt-desktop-flipbook,.nlt-page .nlt-desktop-sample-link{display:none!important}
.nlt-page .nlt-mobile-sample{display:block!important}
.nlt-page .nlt-mobile-cover-link{display:block;max-width:360px;margin:0 auto 14px;text-align:center}
.nlt-page .nlt-mobile-cover-link img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain;border:1px solid #d3dbe3;border-radius:8px;background:#fff}
.nlt-page .nlt-mobile-sample-button{display:block!important;max-width:440px;margin:12px auto 26px;padding:17px 15px;border-radius:9px;background:#123c61;color:#fff!important;font-size:16px;font-weight:700;text-align:center;text-decoration:none!important;line-height:1.35}
.nlt-page .nlt-heyzine-card h3{font-size:22px;line-height:1.25}
}
/* v0.9.14: prevent theme CSS from showing desktop and mobile samples together */
.nlt-page .nlt-samples-section .nlt-mobile-sample{display:none!important}
.nlt-page .nlt-samples-section .nlt-desktop-flipbook{display:block!important}
.nlt-page .nlt-samples-section .nlt-heyzine-grid{align-items:start!important}
.nlt-page .nlt-samples-section .nlt-heyzine-card{overflow:hidden!important}
.nlt-page .nlt-samples-section .nlt-heyzine-card iframe{width:100%!important;height:390px!important;max-width:100%!important;overflow:hidden!important}
.nlt-page .nlt-samples-section .wrap{padding-top:42px!important;padding-bottom:42px!important}
@media(max-width:767px){
.nlt-page .nlt-samples-section .nlt-desktop-flipbook{display:none!important}
.nlt-page .nlt-samples-section .nlt-mobile-sample{display:block!important}
.nlt-page .nlt-samples-section .nlt-heyzine-grid{grid-template-columns:minmax(0,1fr)!important}
.nlt-page .nlt-samples-section .nlt-mobile-sample-button{display:block!important;background:#123c61!important;color:white!important;padding:16px!important;border-radius:8px!important;text-decoration:none!important}
}
/* v0.9.15: single responsive cover-and-button presentation; no embedded iframes */
.nlt-page .nlt-samples-section{overflow:visible!important}
.nlt-page .nlt-samples-section .wrap{padding:32px 24px 38px!important}
.nlt-page .nlt-samples-section .nlt-heyzine-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;margin-top:20px!important}
.nlt-page .nlt-samples-section .nlt-heyzine-card{display:flex!important;flex-direction:column!important;min-width:0!important;overflow:visible!important;background:#fff!important;border:1px solid #dbe4e8!important;border-radius:10px!important;padding:20px!important}
.nlt-page .nlt-samples-section .nlt-heyzine-card h3{font-size:22px!important;line-height:1.3!important;margin:0 0 16px!important;color:#123c61!important}
.nlt-page .nlt-samples-section .nlt-sample-cover{display:flex!important;align-items:center!important;justify-content:center!important;min-height:260px!important;max-height:440px!important;width:100%!important;background:#f5f7f8!important;border-radius:6px!important;overflow:hidden!important;text-decoration:none!important}
.nlt-page .nlt-samples-section .nlt-sample-cover img{display:block!important;max-width:100%!important;width:auto!important;height:auto!important;max-height:440px!important;object-fit:contain!important;margin:auto!important}
.nlt-page .nlt-samples-section .nlt-sample-cover-empty{color:#667781!important;text-align:center!important;padding:24px!important}
.nlt-page .nlt-samples-section a.nlt-sample-view{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:52px!important;margin-top:16px!important;padding:13px 18px!important;border-radius:8px!important;background:#123c61!important;color:#fff!important;font:700 16px/1.3 Arial,sans-serif!important;text-align:center!important;text-decoration:none!important}
.nlt-page .nlt-samples-section a.nlt-sample-view:hover{background:#17547f!important;color:#fff!important}
@media(max-width:767px){.nlt-page .nlt-samples-section .nlt-heyzine-grid{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}.nlt-page .nlt-samples-section .wrap{padding:26px 16px 30px!important}.nlt-page .nlt-samples-section .nlt-heyzine-card{padding:16px!important}.nlt-page .nlt-samples-section .nlt-sample-cover{min-height:180px!important}}