/* Seamline Pacific Builders. Source: build/styles.src.css */
:root{--ground:#f3f5f8;--surface:#ffffff;--tone:#e7ecf2;--ink:#0e1a2b;--ink-2:#3b4655;--navy:#0d3f78;--navy-deep:#0a2f5a;--on-navy:#ffffff;--on-navy-2:#c9d9ec;--link:#0d3f78;--link-on-navy:#a9cbef;--slate:#7a7f85;--focus:#2f6fb2;--shadow:0 12px 32px rgba(14, 26, 43, 0.18);--rule:rgba(14, 26, 43, 0.12);--rule-on-navy:rgba(255, 255, 255, 0.22);--img-rule:rgba(14, 26, 43, 0.08);--seam:#0d3f78;--seam-on-navy:#a9cbef;--mark-chip:transparent;--font:"Helvetica Neue", Helvetica, Arial, "Liberation Sans", sans-serif;--step--1:0.875rem;--step-0:clamp(1.0625rem, 1rem + 0.25vw, 1.125rem);--step-1:1.3125rem;--step-2:clamp(1.6rem, 1.2rem + 1.6vw, 2.2rem);--step-3:clamp(2.1rem, 1.4rem + 3vw, 3.6rem);--step-4:clamp(2.6rem, 1.5rem + 5vw, 5.4rem);--step-2-5:clamp(1.75rem, 1.2rem + 2.2vw, 2.75rem);--s-1:8px;--s-2:12px;--s-3:20px;--s-4:32px;--s-5:48px;--s-6:clamp(56px, 6vw, 80px);--ease-out:cubic-bezier(0.16, 1, 0.3, 1);--dur-micro:150ms;--dur-small:250ms;--dur-medium:400ms;--gutter:max(16px, env(safe-area-inset-left, 0px));--gutter-r:max(16px, env(safe-area-inset-right, 0px));--measure:66ch;--max:1200px;--section:clamp(72px, 10vw, 160px);color-scheme:light}@media (prefers-color-scheme:dark){:root{--ground:#0b1420;--surface:#111d2c;--tone:#16263a;--ink:#e9eef4;--ink-2:#aeb9c7;--navy:#0d3f78;--navy-deep:#082847;--on-navy:#ffffff;--on-navy-2:#c9d9ec;--link:#9cc3ec;--link-on-navy:#b8d4f2;--focus:#8db8e8;--rule:rgba(233, 238, 244, 0.14);--img-rule:rgba(233, 238, 244, 0.10);--seam:#5b8fcc;--mark-chip:#e9eef4;color-scheme:dark}}*, *::before, *::after{box-sizing:border-box}html, body{overflow-x:clip}html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font);font-size:var(--step-0);line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:var(--link);text-underline-offset:0.18em;text-decoration-thickness:1px;transition:text-decoration-thickness var(--dur-micro) var(--ease-out), text-underline-offset var(--dur-micro) var(--ease-out)}a:hover{text-decoration-thickness:2px;text-underline-offset:0.22em}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.on-navy :focus-visible, .site-foot :focus-visible, .callbar :focus-visible{outline-color:var(--on-navy)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}::selection{background:var(--navy);color:var(--on-navy)}h1, h2, h3{margin:0;font-weight:700;color:var(--ink);text-wrap:balance;overflow-wrap:break-word;min-width:0}h1{font-size:var(--step-4);line-height:0.98;letter-spacing:-0.035em}h2{font-size:var(--step-3);line-height:1.02;letter-spacing:-0.03em}h3{font-size:var(--step-1);line-height:1.2;letter-spacing:-0.01em}p{margin:0;max-width:var(--measure);text-wrap:pretty}.section h2::before, .page-head h1::before, .hero h1::before{content:"";display:block;width:40px;height:4px;margin-bottom:0.45em;background:var(--seam)}.hero h1::before, .page-head h1::before{margin-bottom:0.32em}.on-navy h2::before{background:var(--seam-on-navy)}.wrap{width:100%;max-width:calc(var(--max) + 2 * 32px);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter-r)}@media (min-width:720px){.wrap{padding-left:max(32px, env(safe-area-inset-left, 0px));padding-right:max(32px, env(safe-area-inset-right, 0px))}}.skip{position:absolute;left:-9999px;top:0}.skip:focus{left:16px;top:16px;z-index:100;background:var(--surface);color:var(--ink);padding:12px 16px}.lede{font-size:var(--step-1);line-height:1.45;color:var(--ink-2)}.muted{color:var(--ink-2)}.small{font-size:var(--step--1)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;font:inherit;font-weight:700;font-size:1rem;text-decoration:none;border:2px solid var(--navy);border-radius:0;background:var(--navy);color:var(--on-navy);transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), transform var(--dur-micro) var(--ease-out)}.btn:active{transform:translateY(1px)}.btn:hover{background:var(--navy-deep);border-color:var(--navy-deep)}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:var(--ground)}.on-navy .btn{background:var(--on-navy);color:var(--navy);border-color:var(--on-navy)}.on-navy .btn:hover{background:var(--on-navy-2);border-color:var(--on-navy-2)}.on-navy .btn.ghost{background:transparent;color:var(--on-navy);border-color:var(--on-navy)}.on-navy .btn.ghost:hover{background:var(--on-navy);color:var(--navy)}.actions{display:flex;flex-wrap:wrap;gap:var(--s-2)}@media (max-width:479px){.hero .actions, .contact .actions{display:grid;grid-template-columns:minmax(0, 1fr)}}.site-head{position:sticky;top:0;z-index:20;background:var(--ground)}@supports (animation-timeline:scroll()){.site-head{animation:head-rule linear both;animation-timeline:scroll(root);animation-range:0 96px}@keyframes head-rule{from{box-shadow:0 1px 0 transparent}to{box-shadow:0 1px 0 var(--rule)}}}body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top, 0px);z-index:30;background:var(--ground)}.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}.mark{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:700;letter-spacing:-0.01em;line-height:1.1}.mark img{width:62px;height:40px;background:var(--mark-chip);padding:0;flex:none}@media (prefers-color-scheme:dark){.mark img{width:70px;height:48px;padding:4px}}@media (max-width:419px){.mark img{width:48px;height:31px}}@media (max-width:419px) and (prefers-color-scheme:dark){.mark img{width:50px;height:34px;padding:2px}}.mark span small{display:block;font-weight:400;color:var(--ink-2);font-size:var(--step--1);letter-spacing:0}.nav{display:flex;align-items:center;gap:24px}.nav a:not(.btn){color:var(--ink);text-decoration:none;font-size:1rem;padding:12px 0}.nav a:not(.btn):hover, .nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px}.menu{display:none}@media (max-width:860px){.nav{display:none}.menu{display:block;position:relative}.menu summary{list-style:none;cursor:pointer;min-height:48px;min-width:48px;display:inline-flex;align-items:center;padding:0 14px;border:2px solid var(--ink);font-weight:700}.menu summary::-webkit-details-marker{display:none}.menu[open] summary{background:var(--ink);color:var(--ground)}.menu .panel{position:absolute;right:0;top:calc(100% + 8px);background:var(--surface);min-width:220px;padding:8px 0;box-shadow:var(--shadow)}.menu .panel a{display:block;padding:14px 20px;color:var(--ink);text-decoration:none}.menu .panel{border-top:4px solid var(--seam)}.menu .panel a:hover{background:var(--tone)}}.hero{padding-block:clamp(32px, 6vw, 72px) clamp(56px, 8vw, 112px)}.hero .wrap{display:grid;gap:clamp(32px, 5vw, 64px);align-items:center;grid-template-columns:minmax(0, 1fr)}@media (min-width:960px){.hero .wrap{grid-template-columns:minmax(0, 0.95fr) minmax(0, 1.1fr)}}.hero .copy{display:grid;gap:24px}.hero figure{margin:0}.hero figure img{width:100%;aspect-ratio:3 / 2;object-fit:cover}@media (min-width:960px){.hero figure img{aspect-ratio:4 / 3}}figcaption{font-size:var(--step--1);color:var(--ink-2);margin-top:10px}.hero figcaption{border-left:3px solid var(--seam);padding-left:10px}.hero figure img, .feature img, .tiles img, .case img, .team img{outline:1px solid var(--img-rule);outline-offset:-1px}.record{background:var(--tone);padding-block:28px}.record dl{display:grid;gap:16px 32px;margin:0;grid-template-columns:repeat(auto-fit, minmax(min(100%, 230px), 1fr))}.record dt{font-size:var(--step--1);color:var(--ink-2)}.record dd{margin:2px 0 0;font-weight:700;font-variant-numeric:tabular-nums}@media (min-width:1200px){.hero ~ .record dl > div + div{border-left:1px solid var(--rule);padding-left:var(--s-3)}.hero ~ .record dd{white-space:nowrap}}.section{padding-block:var(--section)}.section.tight{padding-block:clamp(56px, 7vw, 104px)}.split{display:grid;gap:clamp(32px, 5vw, 72px);grid-template-columns:minmax(0, 1fr)}@media (min-width:900px){.split{grid-template-columns:minmax(0, 5fr) minmax(0, 7fr)}.split .head{position:sticky;top:104px;align-self:start}}.head{display:grid;gap:18px;align-content:start}.services{display:grid;gap:var(--s-4);margin:0;padding:0;list-style:none}.services li{display:grid;gap:var(--s-1);padding-top:var(--s-3);border-top:1px solid var(--rule)}.services li:first-child{border-top:0;padding-top:0}.services p{color:var(--ink-2)}.services .adr{background:var(--surface);padding:24px;border-top:0;border-left:4px solid var(--seam)}.process{display:grid;gap:28px;margin:var(--s-5) 0 0;padding:0;list-style:none;grid-template-columns:minmax(0, 1fr);counter-reset:step}@media (min-width:760px){.process{grid-template-columns:repeat(3, minmax(0, 1fr))}}.process li{display:grid;gap:var(--s-1);align-content:start;counter-increment:step;border-top:3px solid var(--ink);padding-top:var(--s-2)}.process li::before{content:counter(step, decimal-leading-zero);font-size:var(--step--1);font-weight:700;color:var(--link);font-variant-numeric:tabular-nums}.process li h3{font-size:var(--step-1)}.process p{color:var(--ink-2)}.on-navy{background:var(--navy);color:var(--on-navy)}.on-navy h2, .on-navy h3{color:var(--on-navy)}.on-navy p, .on-navy dd, .on-navy .muted{color:var(--on-navy-2)}.on-navy a:not(.btn){color:var(--link-on-navy)}.values{display:grid;gap:40px 56px;margin:56px 0 0;grid-template-columns:minmax(0, 1fr)}@media (min-width:760px){.values{grid-template-columns:repeat(2, minmax(0, 1fr))}}.values div{display:grid;gap:var(--s-1);align-content:start;border-top:1px solid var(--rule-on-navy);padding-top:var(--s-3)}.values dt{font-size:var(--step-2);font-weight:700;letter-spacing:-0.02em;line-height:1.1;color:var(--on-navy)}.values dd{margin:0;font-size:var(--step-1)}.feature{display:grid;gap:clamp(24px, 4vw, 56px);margin-top:56px;grid-template-columns:minmax(0, 1fr);align-items:center}@media (min-width:900px){.feature{grid-template-columns:minmax(0, 7fr) minmax(0, 5fr)}}.feature img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.frame{display:block;overflow:hidden;background:var(--tone)}.frame img{transition:transform var(--dur-medium) var(--ease-out)}@media (hover:hover) and (pointer:fine){.tiles a:hover .frame img, .feature:hover .frame img{transform:scale(1.03)}}.feature .body{display:grid;gap:14px}.facts{margin:0;padding:0;list-style:none;display:grid;gap:6px;color:var(--ink-2);font-variant-numeric:tabular-nums}.tiles{display:grid;gap:28px 16px;margin:56px 0 0;padding:0;list-style:none;grid-template-columns:repeat(2, minmax(0, 1fr))}.tiles h3{font-size:clamp(1rem, 0.85rem + 0.7vw, 1.3125rem)}@media (min-width:600px){.tiles{gap:40px 24px}}@media (min-width:960px){.tiles{grid-template-columns:repeat(3, minmax(0, 1fr))}}.tiles a{text-decoration:none;color:var(--ink);display:grid;gap:10px}.tiles a:focus-visible{outline-offset:6px}.tiles img{width:100%;aspect-ratio:3 / 2;object-fit:cover;background:var(--tone)}.tiles a:hover h3{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:0.18em}.tiles .where{font-size:var(--step--1);color:var(--ink-2)}.more{margin-top:40px}.quote{margin:0;display:grid;gap:20px}.quote blockquote{margin:0}.quote p{font-size:clamp(1.4rem, 1rem + 1.6vw, 2.1rem);line-height:1.25;letter-spacing:-0.015em;color:var(--ink);max-width:30ch;text-indent:-0.42em}.quote footer{color:var(--ink-2)}.quote.full p{font-size:var(--step-1);line-height:1.5;max-width:var(--measure);text-indent:-0.4em}.quote figcaption{border-left:3px solid var(--seam);padding-left:10px;margin-top:0}.team{display:grid;gap:16px;margin:48px 0 0;padding:0;list-style:none;grid-template-columns:repeat(3, minmax(0, 1fr));max-width:840px}@media (min-width:600px){.team{gap:24px}}.team h3{font-size:clamp(1rem, 0.9rem + 0.6vw, 1.3125rem)}.team li{display:grid;gap:10px}.team img{width:100%;aspect-ratio:1;object-fit:cover;background:var(--tone)}.team p{color:var(--ink-2)}.faq{display:grid;gap:4px}.faq details{background:var(--surface)}.faq summary{cursor:pointer;list-style:none;padding:20px 56px 20px 24px;font-weight:700;font-size:var(--step-1);line-height:1.3;position:relative;min-height:48px}.faq summary::-webkit-details-marker{display:none}.faq summary{transition:background-color var(--dur-micro) var(--ease-out)}.faq summary:hover{background:var(--tone)}.faq summary::before, .faq summary::after{content:"";position:absolute;right:24px;top:50%;width:16px;height:2px;margin-top:-1px;background:var(--link);transition:transform var(--dur-small) var(--ease-out)}.faq summary::before{transform:rotate(90deg)}.faq details[open] summary::before{transform:rotate(0deg)}.faq details[open] > summary{border-bottom:1px solid var(--rule);margin-bottom:var(--s-3)}.faq details > div{padding:0 24px 24px;color:var(--ink-2)}.contact{display:grid;gap:40px;grid-template-columns:minmax(0, 1fr)}@media (min-width:900px){.contact{grid-template-columns:minmax(0, 7fr) minmax(0, 5fr);align-items:end}}.contact .big{font-size:var(--step-2);font-weight:700;letter-spacing:-0.02em;line-height:1.2}.contact .big a{color:var(--on-navy);text-decoration:none;overflow-wrap:anywhere}.contact .big a:hover{text-decoration:underline}.contact dl{margin:0;display:grid;gap:14px}.contact dt{font-size:var(--step--1);color:var(--on-navy-2)}.contact dd{margin:0;color:var(--on-navy)}.table-wrap{overflow-x:auto;margin-top:32px}table{border-collapse:collapse;width:100%;min-width:560px;font-size:1rem}th, td{text-align:left;padding:12px 16px 12px 0;vertical-align:top;border-bottom:1px solid var(--tone)}th{font-size:var(--step--1);color:var(--ink-2);font-weight:400}td:first-child{font-weight:700}.note{background:var(--surface);padding:20px 24px;color:var(--ink-2);max-width:var(--measure)}.case{display:grid;gap:clamp(24px, 4vw, 56px);padding-block:clamp(48px, 6vw, 88px);grid-template-columns:minmax(0, 1fr)}@media (min-width:900px){.case{grid-template-columns:minmax(0, 6fr) minmax(0, 6fr);align-items:start}}.case img{width:100%;aspect-ratio:3 / 2;object-fit:cover;background:var(--tone)}.case .body{display:grid;gap:14px;align-content:start}.case .kind{color:var(--ink-2)}.case h2{font-size:var(--step-2-5);line-height:1.05}.cases > .case:nth-child(even){background:var(--surface);box-shadow:0 0 0 100vmax var(--surface);clip-path:inset(0 -100vmax)}.page-head{padding-block:clamp(40px, 7vw, 96px) clamp(24px, 4vw, 48px);display:grid;gap:20px}.prose{display:grid;gap:18px;padding-bottom:var(--section)}.prose h2{font-size:var(--step-2);margin-top:24px}.prose ul{margin:0;padding-left:1.2em;max-width:var(--measure)}.site-foot{background:var(--navy-deep);color:var(--on-navy-2);padding-block:64px 40px}.foot-mark{display:inline-flex;background:var(--on-navy);padding:8px 10px;margin-bottom:var(--s-3)}.foot-mark img{width:62px;height:40px}.site-foot .name{font-size:clamp(1.9rem, 1rem + 4.4vw, 4.6rem);font-weight:700;letter-spacing:-0.035em;line-height:1;color:var(--on-navy)}.site-foot .cols{display:grid;gap:32px;margin-top:40px;grid-template-columns:repeat(auto-fit, minmax(min(100%, 200px), 1fr))}.site-foot h2{font-size:var(--step--1);font-weight:700;color:var(--on-navy);letter-spacing:0}.site-foot ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:4px}.site-foot a{color:var(--on-navy-2);text-decoration:none;display:inline-block;padding:6px 0}.site-foot a:hover{color:var(--on-navy);text-decoration:underline}.site-foot .legal{margin-top:40px;font-size:var(--step--1);max-width:none}.site-foot .legal + .legal{margin-top:12px}.site-foot .legal a{display:inline;text-decoration:underline;padding:0;color:var(--on-navy)}.callbar{display:none}@media (max-width:720px){.callbar{display:grid;grid-template-columns:1fr 1fr;gap:1px;position:fixed;left:0;right:0;bottom:0;z-index:25;background:var(--navy-deep);padding-bottom:env(safe-area-inset-bottom, 0px)}.callbar a{display:flex;align-items:center;justify-content:center;min-height:56px;color:var(--on-navy);background:var(--navy);font-weight:700;text-decoration:none}body{padding-bottom:calc(57px + env(safe-area-inset-bottom, 0px))}}@media (prefers-reduced-motion:reduce){*, *::before, *::after{transition:none !important;animation:none !important;scroll-behavior:auto !important}.frame img{transform:none !important}}@media print{.site-head, .callbar, .menu{display:none !important}body{background:var(--surface);color:var(--ink)}}
