/*
Theme Name: A&K Docks Custom
Theme URI: https://akdocks.com
Author: A&K Docks
Description: Custom A&K Docks one-page responsive website with dock planner and catalog inquiries.
Version: 1.0.0
Requires at least: 6.0
Text Domain: ak-docks
*/
:root{--navy:#10283a;--blue:#1576a3;--sand:#f4f1e9}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Arial;color:var(--navy);line-height:1.6}header{background:#fff;position:sticky;top:0;z-index:2;box-shadow:0 2px 10px #0001}.wrap{max-width:1150px;margin:auto;padding:0 22px}.top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;flex-wrap:wrap}.brand{font-weight:900;font-size:1.45rem;letter-spacing:.02em}.flag{font-size:1.25rem}nav{display:flex;gap:16px;flex-wrap:wrap}nav a{font-size:.88rem;color:inherit;text-decoration:none;font-weight:650}.hero{background:linear-gradient(120deg,#10283aef,#165477d9),linear-gradient(135deg,#86b5c8,#d5e3e9);color:white;padding:95px 0}.hero h1{font-size:clamp(1.95rem,4.5vw,3.75rem);line-height:1.08;max-width:850px;margin:0 0 20px}.hero p{font-size:1.22rem;max-width:650px}.btn{display:inline-block;background:#f0ba56;color:#152b3b;text-decoration:none;padding:13px 20px;border-radius:6px;font-weight:800;margin:10px 10px 0 0}.btn.secondary{background:transparent;color:white;border:1px solid white}.section{padding:70px 0}.section:nth-of-type(even){background:var(--sand)}h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2;margin:0 0 16px}.lead{max-width:760px;font-size:1.1rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.tile{background:white;border:1px solid #d9e1e5;border-radius:12px;overflow:hidden}.tile .art{height:145px;background:linear-gradient(135deg,#b4d1db,#5d91a9);display:grid;place-items:center;font-size:2.7rem}.tile .copy{padding:20px}.tile h3{margin:0 0 8px}.tile p{margin:0}.dark{background:var(--navy)!important;color:white}.dark .tile{color:var(--navy)}.pill{display:inline-block;border:1px solid #a4c1cd;border-radius:50px;padding:5px 12px;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;font-weight:750}.notice{background:#e9f3f7;padding:20px;border-left:4px solid var(--blue);border-radius:6px}.dark .notice{color:var(--navy)}footer{background:#071b28;color:white;padding:30px 0}footer a{color:white}@media(max-width:760px){.grid{grid-template-columns:1fr}.hero{padding:65px 0}nav{gap:10px}.top{align-items:flex-start}.section{padding:50px 0}}.hero{background:linear-gradient(90deg,rgba(8,31,45,.91) 0%,rgba(8,31,45,.70) 49%,rgba(8,31,45,.12) 100%),url("assets/58a2daf03b92edd9.jpg") center 54%/cover no-repeat;min-height:540px;display:flex;align-items:center}.tile .art{height:205px;background:#d8e4e9;overflow:hidden}.tile .art img{display:block;width:100%;height:100%;object-fit:cover}.tile{box-shadow:0 8px 25px #10283a0b}.brand{white-space:nowrap}@media(max-width:760px){.hero{min-height:480px;background-position:center,60% center}.hero h1{font-size:2.2875rem}.tile .art{height:225px}}

/* Version 3: customer-first polish */
html{scroll-behavior:smooth}section[id]{scroll-margin-top:85px}
a:focus-visible,button:focus-visible{outline:3px solid #e7a72f;outline-offset:4px}
.ak-quick{background:#f2f6f8;border-top:1px solid #dce5eb;border-bottom:1px solid #dce5eb;padding:25px 18px}
.ak-quick-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ak-quick a{display:block;text-align:center;background:white;border:1px solid #d6e0e6;border-radius:14px;padding:20px 12px;text-decoration:none;color:#12374e;font-weight:750;box-shadow:0 3px 12px #0a284015}
.ak-quick small{display:block;font-weight:400;margin-top:5px;color:#526a79}
.ak-note{background:#f6fafc;padding:28px 22px;text-align:center;color:#24465c}
.ak-note p{max-width:820px;margin:8px auto;line-height:1.6}
.ak-footer{background:#09283e;color:#fff;padding:30px 20px;text-align:center;line-height:1.8}
.ak-footer a{color:#fff}
.ak-mobile-call{display:none}
@media(max-width:680px){.ak-quick-inner{grid-template-columns:1fr;gap:9px}.ak-quick a{padding:14px}.ak-mobile-call{display:block;position:fixed;bottom:12px;left:12px;right:12px;z-index:999;background:#e6a62c;color:#102c3c!important;text-align:center;padding:15px;border-radius:50px;text-decoration:none;font-weight:800;box-shadow:0 6px 24px #0006}body{padding-bottom:72px}}

.dock-builder{margin-top:38px;padding:clamp(20px,4vw,40px);border-radius:22px;background:#f1f6f9;color:#163348;box-shadow:0 12px 35px #09263b14}.dock-builder h3{font-size:clamp(1.5rem,3vw,2.1rem);margin:12px 0}.dock-builder p{line-height:1.5}.builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dock-builder label{display:flex;flex-direction:column;gap:7px;font-weight:650;margin:12px 0}.dock-builder input,.dock-builder select,.dock-builder textarea{width:100%;box-sizing:border-box;border:1px solid #aabcc9;border-radius:10px;padding:13px;background:#fff;color:#142f41;font:inherit}.builder-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px}.builder-submit,.builder-secondary{display:inline-block;border:0;border-radius:10px;background:#075b7e;color:white!important;font:inherit;font-weight:750;padding:14px 20px;text-decoration:none;cursor:pointer}.builder-secondary{background:#e0e9ef;color:#173b50!important}.builder-note{font-size:.87rem;max-width:360px}.builder-result{background:white;padding:18px;border-radius:14px;margin-top:22px;border:1px solid #c6d6df}.builder-result a,.builder-result button{margin:6px 6px 6px 0}.builder-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.86rem;border-top:1px solid #ddd;padding-top:12px}@media(max-width:680px){.builder-grid{grid-template-columns:1fr}.dock-builder{padding:18px}}
.catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:25px 0}.catalog-card{background:#fff;color:#18324b;border:1px solid #d8e2e9;border-radius:15px;padding:22px;box-shadow:0 6px 18px #102b4510}.catalog-card h3{margin:0 0 8px;font-size:1.17rem}.catalog-card p{line-height:1.55}.catalog-tag{display:inline-block;background:#e6f3fa;color:#125377;padding:5px 10px;border-radius:20px;font-size:.8rem;font-weight:700}.catalog-card a{display:inline-block;margin-top:10px;color:#075f91;font-weight:700}.catalog-note{padding:16px 20px;border-left:4px solid #2a86b0;background:#eef6fa;color:#17384d;border-radius:8px;margin:20px 0}

.quote-builder{margin-top:28px;padding:clamp(18px,4vw,34px);background:#eef6fa;border:1px solid #b7d6e4;border-radius:18px;color:#12344b}
.quote-builder h3{font-size:clamp(22px,3vw,30px);margin:9px 0}.quote-intro p{max-width:750px}
.quote-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px;margin:22px 0}
.quote-options label{display:flex;align-items:center;gap:10px;background:#fff;padding:13px;border-radius:10px;border:1px solid #d2e0e8;cursor:pointer}
.quote-options input{width:19px;height:19px;flex-shrink:0;accent-color:#0b6595}
.quote-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.quote-fields label{font-weight:650;display:flex;flex-direction:column;gap:7px}
.quote-fields input,.quote-fields select,.quote-fields textarea{width:100%;font:inherit;padding:12px;border:1px solid #9db9c7;border-radius:9px;background:white;color:#152e3b}
.quote-fields label:last-child{grid-column:1/-1}.quote-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.quote-builder .btn{cursor:pointer;border:0}.quote-builder .btn-secondary{background:white;color:#123e59;border:1px solid #9ebdce}
.quote-result{margin-top:22px;padding:18px;border-radius:12px;background:white}.quote-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6}
.quote-result .btn{display:inline-block;margin:5px 8px 5px 0;text-decoration:none}.smallprint{font-size:13px;opacity:.8}
@media(max-width:640px){.quote-fields{grid-template-columns:1fr}.quote-actions .btn{width:100%}.quote-result .btn{width:100%;text-align:center}}

html{scroll-behavior:smooth} :focus-visible{outline:3px solid #f7b733;outline-offset:3px} .skip-link{position:absolute;left:-9999px;top:0;background:white;color:#123b59;padding:12px;z-index:99999}.skip-link:focus{left:8px}
/* Layout and accessibility refinements */
.dock-builder{max-width:1106px;margin:38px auto 0;width:calc(100% - 44px)}
.top{padding:14px 22px}nav a{padding:5px 0}input,select,textarea{min-width:0;font-size:16px!important}
@media(max-width:760px){header{position:relative}.top{gap:10px}nav{width:100%;gap:6px 16px}nav a{padding:6px 0}section[id],#dock-request{scroll-margin-top:18px}}
@media(min-width:761px){#dock-request{scroll-margin-top:130px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.form-honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}button:disabled{opacity:.6;cursor:wait}[role="status"]{overflow-wrap:anywhere}

/* Clean, conversational typography */
:root{--site-font:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif}
body{font-family:var(--site-font);font-weight:400;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:var(--site-font);font-weight:400}
h1,h2,h3{font-weight:500;letter-spacing:-.025em}
.hero h1{font-weight:500;line-height:1.15}
.brand{font-weight:600;letter-spacing:0;font-size:1.4rem}
nav a{font-weight:500}.pill{font-weight:500;letter-spacing:.03em;text-transform:none}
.btn,.builder-submit,.builder-secondary,.ak-quick a,.ak-mobile-call{font-weight:600}
.dock-builder label,.quote-fields label{font-weight:500}.catalog-tag{font-weight:500}
strong{font-weight:600}.lead,.hero p{font-weight:400}.ak-quick small{font-weight:400}

.ak-family{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:36px;align-items:center;margin-top:28px}.ak-family img{display:block;width:100%;height:auto;border-radius:14px}.ak-family p{margin-top:0}@media(max-width:650px){.ak-family{grid-template-columns:1fr;gap:22px}.ak-family img{max-width:340px;margin:auto}}

/* Clearer navigation with generous touch targets */
nav{gap:6px 12px;align-items:center}
nav a{font-size:1.0625rem;font-weight:700;line-height:1.3;min-height:44px;padding:10px 4px;display:inline-flex;align-items:center}
nav a:hover{color:#075f91;text-decoration:underline;text-underline-offset:5px}
@media(min-width:761px){section[id]{scroll-margin-top:155px}}
@media(max-width:760px){nav{gap:4px 12px}nav a{font-size:1rem;padding:10px 4px}}

/* Original A&K Docks wordmark, sized to fit small screens. */
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand .flag{flex:none;font-size:1.875rem;line-height:1}
.brand-home{display:block;line-height:0}
.brand-logo{display:block;width:240px;max-width:calc(100vw - 100px);height:auto}

.required-mark,.required-key span{color:#b42318;font-weight:700}.required-key{font-size:.9rem;margin:12px 0 18px}
