:root{--blue:#07558d;--deep:#052f48;--brown:#8b421d;--paper:#fff;--sand:#f2f4f6;--ink:#193444}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.65 Arial,Helvetica,sans-serif}a{color:inherit}header{display:flex;align-items:center;justify-content:space-between;padding:16px 6%;border-bottom:1px solid #dce4e8;background:white;gap:25px}.brand img{display:block;width:260px;height:auto}nav{display:flex;align-items:center;gap:30px;font-size:16px;font-weight:700}nav a{text-decoration:none}.navcall{color:var(--brown);font-size:21px}section{padding:90px 7%}.hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding-top:60px;padding-bottom:70px;align-items:center}.eyebrow{font-size:14px;font-weight:700;letter-spacing:2px;color:var(--brown);margin:0 0 20px}h1,h2,h3{line-height:1.08;letter-spacing:-1.4px;color:var(--blue);margin:0}h1{font-size:clamp(44px,5vw,76px);font-weight:800}h2{font-size:clamp(36px,4vw,54px)}h3{font-size:25px;letter-spacing:-.5px}.intro{font-size:21px;max-width:560px;margin:28px 0}.button{display:inline-block;background:var(--blue);color:white;text-decoration:none;border-radius:14px;padding:15px 24px;font-weight:700;line-height:1.5}.button:hover{background:var(--deep)}.textlink{display:block;margin-top:22px;color:var(--brown);font-weight:700;font-size:16px}.heroimage{position:relative}.heroimage img{width:100%;height:500px;object-fit:cover;border-radius:3px}.imagecaption{background:var(--brown);color:white;padding:18px 24px;position:absolute;bottom:25px;left:-25px;max-width:90%;font-size:16px;font-weight:700}.services{background:var(--sand);display:grid;grid-template-columns:1fr 1.5fr;gap:7%}.sectionhead p:last-child{max-width:420px}.servicegrid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.servicegrid article{border-top:2px solid #c7b8a9;padding-top:20px}.servicegrid span{color:var(--brown);font-size:14px;display:block;margin-bottom:15px;font-weight:700}.servicegrid p{font-size:17px;margin-bottom:0}.meet{display:grid;grid-template-columns:.8fr 1fr;gap:10%;align-items:center}.portrait img{width:100%;height:520px;object-fit:cover;object-position:center 25%;border-radius:3px}.meet p:not(.eyebrow){max-width:590px}.steps{background:var(--deep);color:white}.steps h2,.steps h3{color:white}.steps .eyebrow{color:#e4b48e}.stepgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;margin-top:45px}.stepgrid b{display:inline-flex;width:45px;height:45px;border:1px solid #8ba2b1;align-items:center;justify-content:center;margin-bottom:20px;color:#e4b48e}.stepgrid p{color:#d9e6ed;font-size:17px}.contact{text-align:center;background:var(--sand)}.bigphone{font-size:clamp(32px,5vw,62px);color:var(--brown);font-weight:800;text-decoration:none;display:block;line-height:1.2;margin:30px 0}.small{font-size:15px}footer{display:flex;justify-content:space-between;gap:20px;padding:28px 7%;font-size:14px}footer a{color:var(--brown);font-weight:700}a:focus-visible{outline:3px solid #bb762c;outline-offset:5px}@media(max-width:850px){header{padding:15px 5%;flex-wrap:wrap;justify-content:center}.brand img{width:240px}nav{gap:22px;justify-content:center;flex-wrap:wrap}.navcall{font-size:18px}.hero,.services,.meet{grid-template-columns:1fr;gap:35px}section{padding:60px 6%}.heroimage img{height:360px}.imagecaption{left:0;bottom:20px}.sectionhead p:last-child{max-width:none}.portrait{max-width:420px}.portrait img{height:450px}.stepgrid{gap:28px}.hero{padding-top:40px}.intro{font-size:19px}}@media(max-width:540px){.servicegrid,.stepgrid{grid-template-columns:1fr}.servicegrid{gap:28px}.stepgrid article{border-top:1px solid #577183;padding-top:24px}footer{flex-direction:column;align-items:center;gap:8px}.heroimage img{height:290px}.button{width:100%;text-align:center}body{font-size:17px}.eyebrow{letter-spacing:1.5px}nav{font-size:14px;gap:18px}h1{font-size:47px}h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Sky and craftsmanship lead the first impression. */
.hero{position:relative;isolation:isolate;min-height:660px;background:#d8efff url("assets/birdhouse-sky.jpg") center/cover no-repeat;padding:80px 7%;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.9) 26%,rgba(255,255,255,.45) 48%,transparent 66%)}
.herocopy{max-width:570px;animation:welcome .7s ease-out both}.hero h1{color:var(--blue)}.hero .intro{color:#17384e}.heroimage{min-height:450px}.button{box-shadow:0 5px 15px #075a9820;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px);background:#064b80}.contact,.services{background:#f2f4f6}footer{justify-content:center;text-align:center}h2{color:var(--blue)}
@keyframes welcome{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:850px){.hero{min-height:790px;display:block;padding:50px 6% 390px;background-position:62% bottom;background-size:auto 100%}.hero::before{background:linear-gradient(180deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.95) 40%,rgba(255,255,255,.2) 66%,transparent 80%)}.heroimage{display:none}.herocopy{max-width:600px}}
@media(max-width:540px){.hero{min-height:860px;padding-bottom:380px;background-position:70% bottom}.hero h1{font-size:45px}.hero::before{background:linear-gradient(180deg,white 0%,rgba(255,255,255,.98) 48%,rgba(255,255,255,.2) 74%,transparent 90%)}.hero .button{width:auto}.hero .intro{max-width:390px}}
@media(prefers-reduced-motion:reduce){.herocopy{animation:none}.button{transition:none}}

.contactlogo{display:block;width:min(580px,100%);height:auto;margin:36px auto 25px;border-radius:8px}.contactname{font-size:clamp(26px,3vw,36px);font-weight:800;color:var(--blue);line-height:1.25;margin:22px 0 12px}.contactservices{font-size:clamp(21px,2.5vw,28px);font-weight:600;line-height:1.4;margin:0;color:var(--ink)}

.button{border-radius:999px;background:var(--blue)}h1,h2,h3,.hero h1,.steps h2,.steps h3{color:var(--blue)}.steps{background:#edf5fb;color:var(--ink)}.steps .eyebrow{color:var(--brown)}.stepgrid p{color:var(--ink)}.stepgrid b{color:var(--blue);border-color:#83a9c4}

.domainname{color:var(--blue);font-size:22px;font-weight:700;margin:20px 0 0}

.steps{background:#f2f4f6}.stepgrid b{width:68px;height:68px;border:0;border-radius:50%;background:var(--blue);color:white;font-size:32px;font-weight:800;box-shadow:0 6px 15px #07558d25;margin-bottom:24px}.stepgrid article{border-top-color:#c5d0d8}
.hero{min-height:720px;background-position:72% center;grid-template-columns:1.05fr 1fr;padding-top:95px;padding-bottom:95px;border-bottom:6px solid var(--blue)}.hero h1{font-size:clamp(48px,5.7vw,86px);letter-spacing:-2px}.hero .eyebrow{font-size:15px;letter-spacing:2.2px}.hero::before{background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 24%,rgba(255,255,255,.60) 43%,transparent 62%)}.hero .button{font-size:20px;padding:18px 28px;box-shadow:0 8px 24px #07558d35}.hero .intro{font-size:22px;line-height:1.55;max-width:490px}
@media(max-width:850px){.hero{min-height:860px;background-position:66% bottom;padding:48px 6% 400px}.hero h1{font-size:58px}.hero::before{background:linear-gradient(180deg,white 0%,rgba(255,255,255,.96) 43%,rgba(255,255,255,.15) 67%,transparent 82%)}}
@media(max-width:540px){.hero{min-height:900px;background-position:72% bottom;padding-bottom:400px}.hero h1{font-size:49px;letter-spacing:-1.4px}.hero .intro{font-size:19px}.hero .button{font-size:17px;padding:16px 23px}.hero::before{background:linear-gradient(180deg,white 0%,rgba(255,255,255,.97) 48%,rgba(255,255,255,.15) 72%,transparent 87%)}}
.hero{background-position:center;gap:4%;padding:65px 5%;min-height:720px}.hero::before{background:linear-gradient(180deg,rgba(4,59,103,.04),rgba(4,59,103,.12))}.herocopy{background:rgba(255,255,255,.95);padding:38px 34px;border-radius:22px;border-top:6px solid var(--blue);box-shadow:0 18px 50px #073c6833;max-width:570px}.hero h1{font-size:clamp(46px,5vw,74px)}.hero .intro{font-size:20px}.hero .eyebrow{font-size:13px;letter-spacing:1.8px}.heroimage{min-height:540px}
@media(max-width:850px){.hero{padding:30px 5% 390px;min-height:930px;background-position:67% bottom}.herocopy{max-width:580px;padding:30px}.hero::before{background:transparent}.hero h1{font-size:56px}}
@media(max-width:540px){.hero{padding:22px 5% 375px;min-height:940px;background-position:73% bottom}.herocopy{padding:26px 22px;border-radius:18px}.hero h1{font-size:44px}.hero .intro{font-size:18px}.hero .eyebrow{font-size:12px;letter-spacing:1px}.hero .button{font-size:16px}}

.birdstart{display:flex;align-items:center;justify-content:space-between;gap:25px}.birdstart img{width:210px;height:145px;object-fit:contain;flex-shrink:0}@media(max-width:650px){.birdstart{align-items:flex-start;gap:12px}.birdstart img{width:110px;height:100px}.birdstart h2{font-size:32px}}

.hero .herocopy{grid-column:2;grid-row:1}.hero .heroimage{grid-column:1;grid-row:1}.birdstart{justify-content:flex-start;gap:25px;margin-bottom:12px}.birdstart .eyebrow{margin:0}.birdstart img{width:150px;height:100px}.hero{background-image:url("assets/birdhouse-sky-left.jpg")}@media(max-width:850px){.hero{background-position:25% bottom}.hero .herocopy{margin-left:auto}.birdstart{justify-content:space-between}.birdstart img{width:110px;height:80px}}@media(max-width:540px){.hero{background-position:23% bottom}.birdstart .eyebrow{max-width:230px}}
/* Show the full weather vane, with the arrow aimed at the information panel. */
.hero{background-size:auto 100%;background-position:left center;align-items:start}.hero .herocopy{align-self:start}.hero .heroimage{min-height:540px}
@media(max-width:850px){.hero{background-image:none;background-color:#64b5ef;min-height:0;padding:30px 5% 0}.hero .herocopy{margin:0 auto}.hero .heroimage{display:block;min-height:0;height:420px;margin:20px -5.6% 0;background:url("assets/birdhouse-sky-left.jpg") left center/auto 100% no-repeat}.hero::before{background:none}}
@media(max-width:540px){.hero{min-height:0;padding:22px 5% 0}.hero .heroimage{height:360px}}

/* Dedicated image panel prevents hero artwork being hidden behind copy. */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4%;background:#63b7f0;background-image:none;padding:35px 5%;min-height:0;align-items:center;overflow:visible}.hero::before{display:none}.hero .heroimage{display:block;grid-column:1;grid-row:1;min-height:0;height:auto;margin:0;background:none;border-radius:18px;overflow:hidden}.hero .heroimage img{display:block;width:100%;height:clamp(360px,42vw,620px);object-fit:cover;object-position:left center;border-radius:18px}.hero .herocopy{grid-column:2;grid-row:1;width:100%;max-width:none;min-width:0;margin:0;align-self:center;padding:30px}.hero h1{font-size:clamp(36px,4.4vw,65px);overflow-wrap:normal}.hero .intro{font-size:19px}.hero .eyebrow{line-height:1.6}
@media(max-width:850px){.hero{display:flex;flex-direction:column;padding:24px 5%;gap:24px;min-height:0}.hero .heroimage{width:100%;max-width:600px;order:0}.hero .herocopy{order:1;max-width:600px;padding:28px}.hero .heroimage img{height:clamp(350px,65vw,500px)}.hero h1{font-size:clamp(36px,6vw,52px)}}
@media(max-width:540px){.hero .heroimage img{height:390px}.hero .herocopy{padding:25px 20px}.hero h1{font-size:38px}.hero .intro{font-size:18px}}
.hero{background-color:var(--blue)}
.hero .heroimage{aspect-ratio:1;height:auto}.hero .heroimage img{height:100%;width:100%;object-fit:cover;object-position:left center}
