/* Contact page content; the header and footer use printer-buzz-site.css. */
@font-face{font-family:'PB Inter';src:url('../fonts/pb-inter.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
.cn-body{margin:0;background:#fff;color:#0a2530;font-family:'PB Inter',Inter,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
.cn-page{--cn-teal:#00565c;--cn-deep:#003d43;--cn-coral:#ff604b;--cn-coral-text:#ce4b38;--cn-muted:#566a70;--cn-line:#e0e8e5;--cn-mint:#f0f7f4;--cn-display:Manrope,'PB Inter',Arial,sans-serif;font-size:16px;line-height:1.6}
.cn-page,.cn-page *,.cn-page *::before,.cn-page *::after{box-sizing:border-box}
.cn-page [hidden]{display:none!important}
.cn-page :where(h1,h2,h3,p,ul){margin:0}
.cn-page :where(ul){padding:0;list-style:none}
.cn-page :where(a){color:inherit;text-decoration:none}
.cn-page :where(button,input,select,textarea){font:inherit;color:inherit}
.cn-page button{cursor:pointer}
.cn-page :focus-visible{outline:3px solid #ef8d45;outline-offset:3px}
.cn-page h1,.cn-page h2,.cn-page h3{font-family:var(--cn-display);font-weight:800;letter-spacing:-.025em;line-height:1.15;text-wrap:balance}
.cn-page .pb-icon{width:19px;height:19px}
.cn-wrap{width:88%;max-width:1320px;margin-inline:auto}
.cn-eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.16em;line-height:1.5;color:#285b5d;margin-bottom:10px!important}

/* Hero */
.cn-hero{position:relative;overflow:hidden;padding:26px 0 120px;background:linear-gradient(180deg,#f2f8f5 0%,#f7fbf9 100%)}
.cn-hero::before{content:"";position:absolute;right:-4%;top:-30%;width:min(560px,52vw);aspect-ratio:1;border-radius:50%;border:2px solid #9fd9bd;border-left-color:transparent;border-bottom-color:transparent;transform:rotate(18deg);background:radial-gradient(circle,#dff2e9 0,#e9f6f0 45%,#f2f8f500 70%)}
.cn-hero::after{content:"";position:absolute;right:calc(-4% + min(560px,52vw) * .1);top:calc(-30% + min(560px,52vw) * .16);width:16px;height:16px;border-radius:50%;background:#3fbf5f;box-shadow:0 0 0 6px #3fbf5f22}
.cn-hero .cn-wrap{position:relative;z-index:1}
.cn-breadcrumb{display:flex;align-items:center;gap:10px;font-size:14px;color:#647571;margin-bottom:40px}
.cn-breadcrumb a:hover{color:var(--cn-teal);text-decoration:underline;text-underline-offset:3px}
.cn-breadcrumb [aria-current]{color:#1f4440;font-weight:600}
.cn-hero h1{max-width:720px;font-size:clamp(34px,4vw,56px);letter-spacing:-.035em;line-height:1.08}
.cn-hero h1 span{color:var(--cn-teal)}
.cn-lead{max-width:600px;margin-top:18px!important;font-size:18px;line-height:1.6;color:#47585e}
.cn-hero-points{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:28px!important}
.cn-hero-points li{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:600;color:#1d4442}
.cn-page .cn-hero-points .pb-icon{width:21px;height:21px;color:var(--cn-teal)}

/* Layout */
.cn-layout{position:relative;z-index:2;display:grid;grid-template-columns:380px minmax(0,1fr);gap:28px;align-items:start;margin-top:-80px;padding-bottom:64px}
.cn-info{display:grid;gap:14px}
.cn-info-card{display:flex;gap:16px;padding:22px;border:1px solid var(--cn-line);border-radius:18px;background:#fff;box-shadow:0 12px 30px -20px #003d4340;transition:border-color .2s,transform .2s,box-shadow .2s}
a.cn-info-card:hover{border-color:#a9cbc2;transform:translateY(-3px);box-shadow:0 18px 36px -20px #003d4359}
.cn-info-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:var(--cn-mint);color:var(--cn-teal);flex-shrink:0}
.cn-page .cn-info-icon .pb-icon{width:24px;height:24px}
.cn-info-card>span:last-child{display:grid;gap:3px;min-width:0}
.cn-info-card strong{font-family:var(--cn-display);font-size:17px;font-weight:800}
.cn-info-value{font-size:15.5px;color:#1f3a3f;overflow-wrap:anywhere}
.cn-info-note{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--cn-muted)}
a.cn-info-card .cn-info-note{color:var(--cn-coral-text);font-weight:600}
.cn-page .cn-info-note .pb-icon{width:15px;height:15px}
.cn-help{padding:26px 24px;border-radius:18px;background:radial-gradient(ellipse at top left,#00646b,#003d43 75%);color:#fff}
.cn-help .cn-eyebrow{color:#a9d6cf}
.cn-page .cn-help h2{font-size:22px}
.cn-help p:not(.cn-eyebrow){margin-top:8px!important;font-size:15px;line-height:1.55;color:#d5e4e5}
.cn-help strong{color:#fff}

/* Form card */
.cn-card{padding:36px 38px 38px;border:1px solid var(--cn-line);border-radius:22px;background:#fff;box-shadow:0 24px 50px -28px #003d4340}
.cn-page .cn-card>h2{font-size:clamp(25px,2.3vw,32px)}
.cn-card-intro{margin-top:8px!important;font-size:15px;color:var(--cn-muted)}
.cn-form{margin-top:26px}
.cn-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cn-span-2{grid-column:span 2}
.cn-field{display:grid;gap:7px;align-content:start;min-width:0}
.cn-field label{font-size:15px;font-weight:600;color:#1f3a3f}
.cn-req{color:var(--cn-coral-text)}
.cn-optional{font-weight:500;color:#7a8b88;font-size:14px}
.cn-field input,.cn-field select,.cn-field textarea{width:100%;min-height:54px;padding:13px 16px;border:1px solid #c9d7d3;border-radius:12px;background:#fff;font-size:16px;line-height:1.4;outline:0;transition:border-color .15s,box-shadow .15s}
.cn-field textarea{min-height:150px;resize:vertical}
.cn-field ::placeholder{color:#8a9b98;opacity:1}
.cn-field input:hover,.cn-field select:hover,.cn-field textarea:hover{border-color:#9db8b1}
.cn-field input:focus,.cn-field select:focus,.cn-field textarea:focus{border-color:var(--cn-teal);box-shadow:0 0 0 4px #00565c1f}
.cn-page .cn-field :focus-visible{outline:0}
.cn-field.has-error input,.cn-field.has-error select,.cn-field.has-error textarea{border-color:#d4513b;background:#fffaf8}
.cn-field.has-error :focus{box-shadow:0 0 0 4px #d4513b26}
.cn-select{position:relative}
.cn-select select{appearance:none;-webkit-appearance:none;padding-right:44px;cursor:pointer}
.cn-page .cn-select .pb-icon{position:absolute;right:15px;top:50%;width:18px;height:18px;transform:translateY(-50%);pointer-events:none;color:var(--cn-muted)}
.cn-hint{font-size:13.5px;line-height:1.45;color:var(--cn-muted)}
.cn-count{text-align:right}
.cn-error{font-size:14px;font-weight:500;line-height:1.45;color:#b8402b}
.cn-error:empty{display:none}
.cn-error:not(:empty)::before{content:"!";display:inline-grid;place-items:center;width:17px;height:17px;margin-right:7px;border-radius:50%;background:#d4513b;color:#fff;font-size:11px;font-weight:800;vertical-align:1px}
.cn-form-error{margin-top:16px!important}
.cn-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.cn-error-summary{margin-top:22px;padding:16px 20px;border:1px solid #ffc4b5;border-left:5px solid var(--cn-coral);border-radius:12px;background:#fff6f3;outline:0}
.cn-error-summary:focus-visible{box-shadow:0 0 0 3px #ef8d4566}
.cn-page .cn-error-summary h3{display:flex;align-items:center;gap:9px;font-size:16.5px;letter-spacing:-.01em;color:#6b2a1d}
.cn-page .cn-error-summary .pb-icon{width:20px;height:20px;color:var(--cn-coral-text)}
.cn-error-summary ul{display:grid;gap:4px;margin-top:8px!important;padding-left:29px!important;list-style:disc!important;color:#8c3a29}
.cn-error-summary a{font-size:15px;color:#8c3a29!important;text-decoration:underline!important;text-underline-offset:3px}
.cn-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:24px}
.cn-page .cn-submit{min-height:56px;padding-inline:34px;font-family:var(--cn-display);font-size:16px;font-weight:800;letter-spacing:0}
.cn-page .cn-submit .pb-icon{transition:transform .15s}
.cn-page .cn-submit:hover .pb-icon{transform:translateX(3px)}
.cn-page .cn-submit.is-busy{cursor:progress;opacity:.85;transform:none}
.cn-spinner{display:none;width:19px;height:19px;border:2.5px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:cn-spin .7s linear infinite}
.cn-submit.is-busy .cn-spinner{display:block}
.cn-submit.is-busy .pb-icon{display:none}
.cn-privacy{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--cn-muted)}
.cn-page .cn-privacy .pb-icon{width:16px;height:16px;flex-shrink:0}
.cn-privacy a{color:var(--cn-teal);font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* Map */
.cn-map{padding-bottom:72px}
.cn-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}
.cn-page .cn-map h2{font-size:clamp(25px,2.3vw,32px)}
.cn-text-link{display:inline-flex;align-items:center;gap:7px;color:var(--cn-coral-text)!important;font-size:15px;font-weight:600;white-space:nowrap}
.cn-text-link:hover{text-decoration:underline;text-underline-offset:3px}
.cn-page .cn-text-link .pb-icon{width:17px;height:17px}
.cn-map-frame{display:block;width:100%;height:380px;border:1px solid var(--cn-line);border-radius:20px;background:var(--cn-mint)}

/* Thank-you modal */
.cn-modal{width:min(480px,calc(100% - 32px));padding:44px 36px 34px;border:0;border-radius:24px;background:#fff;color:#0a2530;text-align:center;box-shadow:0 30px 80px -20px #003d4366}
.cn-modal[open]{animation:cn-pop .3s cubic-bezier(.2,.9,.3,1.2)}
.cn-modal::backdrop{background:#062a2fa6;backdrop-filter:blur(3px)}
.cn-modal-close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:var(--cn-muted);transition:background .15s}
.cn-modal-close:hover{background:var(--cn-mint)}
.cn-modal-badge{display:inline-grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--cn-teal);color:#fff;box-shadow:0 0 0 10px #00565c1a}
.cn-page .cn-modal-badge .pb-icon{width:40px;height:40px;stroke-width:2.4}
.cn-page .cn-modal h2{margin-top:26px;font-size:28px}
.cn-modal p{margin-top:12px!important;font-size:16.5px;line-height:1.6;color:var(--cn-muted);overflow-wrap:anywhere}
.cn-modal p strong{color:#1f3a3f}
.cn-modal-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.cn-page .cn-modal-actions .pb-button{min-height:52px;padding-inline:28px;font-family:var(--cn-display);font-size:15px;font-weight:800}
.cn-outline{min-height:52px;padding:10px 26px;border:1.5px solid #c9d7d3;border-radius:999px;background:#fff;font-family:var(--cn-display);font-size:15px;font-weight:800;transition:border-color .15s,color .15s}
.cn-outline:hover{border-color:var(--cn-teal);color:var(--cn-teal)}
@keyframes cn-pop{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
@keyframes cn-spin{to{transform:rotate(360deg)}}

@media(max-width:1100px){.cn-layout{grid-template-columns:320px minmax(0,1fr);gap:22px}.cn-card{padding:30px 28px}}
@media(max-width:900px){
.cn-hero{padding-bottom:110px}
.cn-layout{grid-template-columns:1fr}
.cn-card{order:-1}
.cn-info{grid-template-columns:repeat(2,minmax(0,1fr))}
.cn-help{grid-column:span 2}
}
@media(max-width:640px){
.cn-wrap{width:auto;margin-inline:16px}
.cn-hero{padding:20px 0 96px}
.cn-hero::before{width:380px;right:-190px;top:-140px}
.cn-hero::after{display:none}
.cn-breadcrumb{margin-bottom:28px;font-size:13.5px}
.cn-lead{font-size:16.5px}
.cn-hero-points{gap:10px;margin-top:22px!important}
.cn-hero-points li{font-size:14.5px}
.cn-layout{margin-top:-70px;padding-bottom:48px}
.cn-card{padding:24px 18px 26px;border-radius:18px}
.cn-grid{grid-template-columns:1fr;gap:18px}
.cn-span-2{grid-column:auto}
.cn-info{grid-template-columns:1fr}
.cn-help{grid-column:auto}
.cn-actions{flex-direction:column;align-items:stretch}
.cn-page .cn-submit{width:100%}
.cn-map{padding-bottom:52px}
.cn-map-head{flex-direction:column;align-items:flex-start;gap:8px}
.cn-map-frame{height:300px;border-radius:16px}
.cn-modal{padding:40px 22px 26px}
.cn-modal-actions>*{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.cn-page *{transition:none!important;animation:none!important}}
