/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#061d2c;--ink-soft:#183b4e;--deep-water:#06283b;--harbor:#246c83;--harbor-dark:#164f65;--cream:#f3eee3;--paper:#fffdf7;--foam:#f7fbfa;--lake:#95c1ca;--lake-light:#dcebed;--sky:#c9e0e4;--red:#d44c42;--red-dark:#aa342e;--gold:#d9ad67;--rope:#c8aa76;--white:#fff;--line:#081a2829;--max-width:1480px;--display:Impact, Haettenschweiler, "Arial Narrow Bold", "Arial Narrow", sans-serif;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:116px}body{color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:linear-gradient(#b9d3d8 0%,#dce7e6 52%,#abc7cd 100%);margin:0;font-size:16px;line-height:1.5}body,button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,a,summary{touch-action:manipulation}::selection{background:var(--red);color:var(--white)}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.skip-link{z-index:1000;background:var(--paper);padding:12px 18px;font-weight:800;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-shell{width:100%;max-width:var(--max-width);background:var(--foam);margin:0 auto;overflow:hidden;box-shadow:0 0 80px #081a281f}.barber-stripe{background:repeating-linear-gradient(-48deg, var(--red) 0 16px, var(--foam) 16px 32px, var(--harbor) 32px 48px, var(--foam) 48px 64px);height:7px}.topline{background:linear-gradient(90deg, transparent 0 49%, #ffffff0e 50% 51%, transparent 52%) 0 0 / 46px 100%, var(--deep-water);color:#ffffffd1;letter-spacing:.13em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;min-height:36px;padding:7px clamp(20px,4vw,64px);font-size:.69rem;font-weight:800;line-height:1.2;display:grid}.topline p{margin:0}.topline>a{justify-self:end;align-items:center;min-height:40px;display:inline-flex}.topline>a:hover{color:var(--white);text-underline-offset:3px;text-decoration:underline}.shop-status{font-size:inherit;font-weight:inherit;align-items:center;gap:8px;display:inline-flex}.shop-status i{background:var(--gold);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e8b15d21}.shop-status.open i{background:#63c994;animation:2s ease-out infinite status-pulse}.shop-status.closed i{background:#ec817b}@keyframes status-pulse{0%{box-shadow:0 0 #63c99466}70%{box-shadow:0 0 0 8px #63c99400}to{box-shadow:0 0 #63c99400}}.site-header{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7fbfaf0;border-bottom:1px solid #246c8333;grid-template-columns:1fr auto 1fr;align-items:center;min-height:84px;padding:12px clamp(20px,4vw,64px);display:grid;position:sticky;top:0}.brand{align-items:center;gap:12px;width:fit-content;display:inline-flex}.brand-mark{border:2px solid var(--harbor-dark);background:radial-gradient(circle, transparent 0 53%, #246c8333 54% 58%, transparent 59%), linear-gradient(135deg, transparent 44%, var(--red) 45% 54%, transparent 55%), var(--foam);width:50px;height:50px;box-shadow:inset 0 0 0 4px var(--paper), 0 0 0 1px #246c8333;font-family:var(--display);letter-spacing:.04em;border-radius:50%;flex:none;place-items:center;font-size:1.02rem;display:grid;position:relative}.brand-type{line-height:1;display:grid}.brand-type strong{font-family:var(--display);letter-spacing:.035em;text-transform:uppercase;font-size:1.2rem}.brand-type small{color:var(--harbor-dark);letter-spacing:.16em;text-transform:uppercase;margin-top:5px;font-size:.57rem;font-weight:900}.site-header nav{justify-content:center;gap:clamp(20px,2.5vw,42px);display:flex}.site-header nav a{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;padding:12px 0;font-size:.76rem;font-weight:850;position:relative}.site-header nav a:after{background:var(--harbor);content:"";transform-origin:100%;height:2px;transition:transform .18s;position:absolute;bottom:7px;left:0;right:0;transform:scaleX(0)}.site-header nav a:hover:after{transform-origin:0;transform:scaleX(1)}.site-header>.button{justify-self:end}.button{letter-spacing:.08em;text-transform:uppercase;border:2px solid #0000;justify-content:center;align-items:center;gap:16px;min-height:52px;padding:13px 22px;font-size:.77rem;font-weight:900;line-height:1;transition:background .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-small{min-height:44px;padding:10px 18px;font-size:.69rem}.button-dark{background:var(--deep-water);color:var(--white)}.button-dark:hover,.button-primary{background:var(--red);color:var(--white)}.button-primary:hover{background:var(--red-dark)}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--gold)}.button-outline{color:var(--white);border-color:#ffffff75}.button-outline:hover{border-color:var(--white);background:var(--white);color:var(--ink)}.text-link{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:14px;min-height:44px;font-size:.75rem;font-weight:900;display:inline-flex}.text-link span{transition:transform .16s}.text-link:hover span{transform:translate(4px)}.eyebrow{color:var(--harbor-dark);letter-spacing:.17em;text-transform:uppercase;margin:0;font-size:.71rem;font-weight:900}.eyebrow span{margin-right:7px}.hero{isolation:isolate;background:linear-gradient(180deg, #ffffff9e, transparent 48%), linear-gradient(180deg, var(--foam) 0%, var(--foam) 68%, var(--lake-light) 100%);grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);align-items:center;gap:clamp(36px,6vw,96px);min-height:calc(100svh - 128px);padding:clamp(64px,8vw,118px) clamp(24px,6vw,96px) clamp(84px,9vw,130px);display:grid;position:relative}.hero:before{z-index:-2;aspect-ratio:1;content:"";border:1px solid #246c8324;border-radius:50%;width:72%;position:absolute;top:-22%;right:-20%;box-shadow:0 0 0 58px #246c8309,0 0 0 116px #246c8309,0 0 0 174px #246c8309}.hero:after{z-index:-1;content:"";background:radial-gradient(at 50% 100%,#0000 0 52%,#246c8329 53% 55%,#0000 56%) 0 0/150px 74px repeat-x,linear-gradient(#0000,#95c1ca33);height:20%;position:absolute;bottom:0;left:0;right:0}.hero-copy{z-index:2;max-width:760px;position:relative}.hero h1,.section-heading h2,.shop-statement h2,.family-copy h2,.proof-intro h2,.visit-content h2,.final-cta h2{font-family:var(--display);letter-spacing:-.018em;text-transform:uppercase;margin:0;font-weight:900;line-height:.84}.hero h1{max-width:820px;margin-top:24px;font-size:clamp(5rem,10.6vw,10.25rem)}.hero h1 span,.section-heading h2 span,.shop-statement h2 span,.final-cta h2 span{color:var(--red);display:block}.hero h1 span{color:var(--harbor)}.hero-lede{max-width:630px;color:var(--ink-soft);margin:clamp(28px,4vw,46px) 0 0;font-size:clamp(1.05rem,1.55vw,1.32rem);line-height:1.65}.hero-actions{align-items:center;gap:28px;margin-top:34px;display:flex}.bay-coordinates{align-items:center;gap:14px;width:fit-content;margin-top:28px;display:flex}.bay-coordinates>span{border:1px solid var(--harbor);border-radius:50%;flex:none;width:34px;height:34px;position:relative}.bay-coordinates>span:before,.bay-coordinates>span:after{background:var(--harbor);content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bay-coordinates>span:before{width:18px;height:1px}.bay-coordinates>span:after{width:1px;height:18px}.bay-coordinates p{color:var(--harbor-dark);letter-spacing:.12em;text-transform:uppercase;gap:2px;margin:0;font-size:.63rem;display:grid}.bay-coordinates small{color:#061d2c85;font-size:.57rem;font-weight:800}.rating-proof{border-bottom:1px solid #081a282e;align-items:center;gap:10px;width:fit-content;min-height:44px;margin-top:38px;padding:0 2px 8px;font-size:.8rem;display:flex}.rating-proof:hover{border-color:var(--harbor)}.rating-stars{color:var(--red);letter-spacing:.08em;font-size:.76rem}.rating-proof strong{font-size:1rem}.rating-proof>span:nth-child(3){color:#081a28a8}.hero-board-wrap{justify-self:end;width:min(100%,470px);position:relative;transform:rotate(1.2deg)}.board-shadow{z-index:-1;background:repeating-linear-gradient(0deg, transparent 0 18px, #ffffff29 19px 20px), var(--harbor);border:2px solid #081a2838;position:absolute;inset:22px -22px -22px 22px}.hero-board{border:2px solid var(--deep-water);outline-offset:-9px;background:var(--foam);outline:1px solid #246c833d;padding:clamp(28px,4vw,50px);position:relative;overflow:hidden;box-shadow:0 26px 70px #081a2826}.board-pole{background:repeating-linear-gradient(-45deg, var(--red) 0 14px, var(--foam) 14px 28px, var(--harbor) 28px 42px, var(--foam) 42px 56px);height:12px;position:absolute;top:0;left:0;right:0}.board-heading,.board-status,.service-card-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.board-heading{border-bottom:1px solid var(--line);color:#081a2894;letter-spacing:.13em;text-transform:uppercase;padding-bottom:22px;font-size:.61rem;font-weight:900}.board-heading p{margin:0}.board-title{padding:28px 0 24px;display:grid}.board-title span{color:var(--harbor);font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-style:italic}.board-title strong{font-family:var(--display);letter-spacing:-.02em;text-transform:uppercase;font-size:clamp(3rem,6vw,5.25rem);line-height:.88}.board-status{border-top:1px solid var(--line);border-bottom:1px solid var(--line);letter-spacing:.07em;text-transform:uppercase;padding:18px 0;font-size:.68rem;font-weight:850}.board-status>span:first-child{color:#081a288a}.board-status .shop-status{text-align:right;justify-content:flex-end}.board-services{grid-template-columns:1fr auto;gap:12px 20px;padding:24px 0;font-size:.92rem;display:grid}.board-services strong{font-family:var(--display);letter-spacing:.04em;font-size:1.2rem}.board-note{background:var(--lake-light);border-left:3px solid var(--harbor);color:var(--ink-soft);margin:0;padding:18px;font-size:.75rem;line-height:1.55}.board-link{border-bottom:2px solid var(--harbor-dark);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;min-height:48px;margin-top:8px;font-size:.72rem;font-weight:900;display:flex}.hero-scroll{color:#081a2880;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:12px;font-size:.58rem;font-weight:900;display:flex;position:absolute;bottom:34px;left:clamp(24px,6vw,96px)}.hero-scroll span{background:#081a2873;width:44px;height:1px}.lake-horizon{flex-direction:column;align-items:flex-end;gap:6px;width:min(26vw,300px);display:flex;position:absolute;bottom:34px;right:clamp(24px,6vw,96px)}.lake-horizon span{background:var(--harbor);opacity:.36;height:1px}.lake-horizon span:first-child{width:100%}.lake-horizon span:nth-child(2){width:76%}.lake-horizon span:nth-child(3){width:48%}.quick-strip{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);background:linear-gradient(90deg, #246c830b 1px, transparent 1px) 0 0 / 42px 100%, var(--paper);grid-template-columns:repeat(3,1fr);display:grid}.quick-strip>div{align-items:center;gap:18px;min-height:124px;padding:24px clamp(22px,3vw,46px);display:flex}.quick-strip>div+div{border-left:1px solid var(--line)}.quick-number{border:1px solid var(--harbor-dark);width:43px;height:43px;color:var(--harbor-dark);font-family:var(--display);border-radius:50%;flex:none;place-items:center;display:grid}.quick-strip p{gap:4px;margin:0;display:grid}.quick-strip strong{letter-spacing:.06em;text-transform:uppercase;font-size:.8rem}.quick-strip p span{color:#081a289e;font-size:.78rem}.services-section{background:radial-gradient(ellipse at 50% 100%, transparent 0 51%, #ffffff0a 52% 54%, transparent 55%) 0 0 / 180px 82px, linear-gradient(140deg, var(--deep-water), #0a3b50 56%, var(--deep-water));color:var(--white);padding:clamp(82px,10vw,150px) clamp(24px,6vw,96px)}.section-heading{grid-template-columns:1.5fr 1fr;align-items:end;gap:28px clamp(32px,7vw,110px);margin-bottom:clamp(46px,7vw,86px);display:grid}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{max-width:780px;font-size:clamp(3.7rem,8vw,7.7rem)}.section-heading>p:last-child{color:#081a28a8;max-width:470px;margin:0 0 4px;font-size:clamp(1rem,1.3vw,1.17rem);line-height:1.7}.section-heading-light .eyebrow,.more-services .eyebrow,.visit-content .eyebrow,.section-heading-light h2 span{color:var(--gold)}.section-heading-light>p:last-child{color:#ffffffab}.service-grid{border-top:1px solid #ffffff2e;border-left:1px solid #ffffff2e;grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-bottom:1px solid #ffffff2e;border-right:1px solid #ffffff2e;flex-direction:column;min-height:370px;padding:clamp(24px,3vw,42px);transition:background .18s,color .18s;display:flex}.service-card.featured{background:var(--lake-light);color:var(--ink)}.service-card:hover{background:var(--harbor);color:var(--white)}.service-card-top{color:#ffffff78;letter-spacing:.14em;text-transform:uppercase;font-size:.57rem;font-weight:900}.service-card.featured .service-card-top{color:#081a2885}.service-card:hover .service-card-top{color:#ffffffc2}.service-card h3{max-width:330px;font-family:var(--display);text-transform:uppercase;margin:auto 0 20px;font-size:clamp(2rem,3.5vw,3.5rem);line-height:.95}.service-card>p{color:#ffffff96;min-height:50px;margin:0;font-size:.84rem;line-height:1.55}.service-card.featured>p{color:#081a28a1}.service-card:hover>p{color:#ffffffd1}.service-card-bottom{border-top:1px solid;justify-content:space-between;align-items:end;gap:16px;margin-top:34px;padding-top:22px;display:flex}.service-card-bottom strong{font-family:var(--display);font-size:2rem}.service-card-bottom .walkin-label{min-height:44px;color:inherit;letter-spacing:.11em;text-transform:uppercase;align-items:center;padding:0 8px;font-size:.67rem;font-weight:900;display:inline-flex}.more-services{border-top:1px solid #ffffff38;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,7vw,100px);margin-top:clamp(60px,8vw,108px);padding-top:48px;display:grid}.more-services h3{max-width:470px;font-family:var(--display);text-transform:uppercase;margin:20px 0 0;font-size:clamp(2.6rem,5vw,5.2rem);line-height:.9}.more-services ul{margin:0;padding:0;list-style:none}.more-services li{border-bottom:1px solid #fff3;justify-content:space-between;gap:24px;padding:18px 2px;display:flex}.more-services li span{color:#ffffffbf}.more-services li strong{font-family:var(--display);font-size:1.45rem}.price-note{color:#ffffff70;text-align:right;max-width:780px;margin:44px 0 0 auto;font-size:.68rem;line-height:1.65}.shop-section{background:var(--paper);grid-template-columns:.92fr 1.08fr;gap:clamp(60px,9vw,140px);padding:clamp(90px,11vw,165px) clamp(24px,6vw,96px);display:grid}.shop-statement{align-self:center}.shop-statement h2{margin-top:24px;font-size:clamp(4rem,8.1vw,8rem)}.shop-statement>p:last-child{color:#081a28a8;max-width:600px;margin:38px 0 0;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.75}.craft-grid{border-top:1px solid var(--ink);display:grid}.craft-grid article{border-bottom:1px solid var(--ink);grid-template-columns:60px minmax(110px,.72fr) 1.2fr;align-items:start;gap:18px;padding:clamp(28px,4vw,48px) 0;display:grid}.craft-icon{background:var(--ink);width:44px;height:44px;color:var(--white);font-family:var(--display);border-radius:50%;place-items:center;display:grid}.craft-grid h3{font-family:var(--display);text-transform:uppercase;margin:5px 0 0;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1}.craft-grid p{color:#081a289e;margin:4px 0 0;font-size:.87rem;line-height:1.65}.family-band{background:radial-gradient(ellipse at 50% 100%, transparent 0 50%, #ffffff14 51% 53%, transparent 54%) 0 0 / 140px 64px, linear-gradient(135deg, var(--harbor-dark), var(--harbor));min-height:620px;color:var(--white);grid-template-columns:minmax(420px,1.05fr) minmax(0,.95fr);display:grid;position:relative;overflow:hidden}.family-band:before{aspect-ratio:1;content:"";border:1px solid #ffffff24;border-radius:50%;width:380px;position:absolute;bottom:-170px;left:-50px;box-shadow:0 0 0 50px #ffffff09,0 0 0 100px #ffffff09}.family-band:after{background:repeating-linear-gradient(-45deg, var(--red) 0 14px, var(--foam) 14px 28px);content:"";width:42%;height:9px;position:absolute;top:0;right:0}.family-scene{z-index:1;border-right:1px solid #ffffff2b;align-content:center;justify-items:center;padding:clamp(64px,8vw,110px) clamp(32px,6vw,84px);display:grid;position:relative;overflow:hidden}.family-type{color:#ffffff13;font-family:var(--display);white-space:nowrap;font-size:clamp(7.5rem,13vw,13.5rem);line-height:.7;position:absolute;bottom:-.12em;left:-.025em}.family-porthole{aspect-ratio:1;border:clamp(15px, 1.7vw, 24px) solid var(--rope);background:radial-gradient(circle at 72% 25%, var(--gold) 0 6.5%, transparent 6.8%), linear-gradient(180deg, #d9edf0 0 52%, #347f91 52% 100%);border-radius:50%;width:clamp(260px,28vw,410px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 5px #06283b73,0 0 0 5px #ffffff2e,0 28px 70px #0318234d}.family-porthole:before{z-index:3;content:"";pointer-events:none;border:1px solid #ffffff6b;border-radius:50%;position:absolute;inset:7px}.family-porthole:after{z-index:1;content:"";background:radial-gradient(at 50% 100%,#0000 0 50%,#ffffff40 51% 54%,#0000 55%) 0 0/84px 38px repeat-x;height:33%;position:absolute;bottom:11%;left:-8%;right:-8%}.porthole-buoy{z-index:2;background:repeating-linear-gradient(-45deg, var(--red) 0 10px, var(--foam) 10px 20px);border:2px solid #061d2c8c;border-radius:8px 8px 3px 3px;width:17px;height:66px;position:absolute;bottom:37%;left:34%;transform:rotate(-5deg);box-shadow:0 8px 18px #061d2c2e}.porthole-buoy:before{border:2px solid var(--deep-water);content:"";border-radius:50%;width:9px;height:9px;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.porthole-wave{z-index:2;border-top:3px solid #ffffffb8;border-radius:50%;height:18%;position:absolute;left:-12%;right:-12%}.porthole-wave-one{bottom:28%;transform:rotate(2deg)}.porthole-wave-two{border-color:#ffffff75;bottom:16%;transform:rotate(-3deg)}.porthole-wave-three{border-color:#ffffff47;bottom:4%;transform:rotate(1deg)}.family-scene-caption{z-index:2;text-align:center;text-transform:uppercase;justify-items:center;gap:5px;margin:26px 0 0;display:grid;position:relative}.family-scene-caption strong{font-family:var(--display);letter-spacing:.03em;font-size:clamp(1.7rem,2.7vw,2.7rem)}.family-scene-caption span{color:#ffffffa8;letter-spacing:.13em;font-size:.61rem;font-weight:850}.family-copy{z-index:2;align-self:center;padding:70px clamp(24px,7vw,100px) 70px 20px}.family-copy .eyebrow{color:var(--white)}.family-copy h2{max-width:560px;margin-top:26px;font-size:clamp(3.6rem,6.5vw,6.7rem)}.family-copy>p:not(.eyebrow){color:#fffc;max-width:540px;margin:32px 0;line-height:1.75}.proof-section{background:linear-gradient(180deg, #ffffff61, transparent 28%), var(--lake-light);grid-template-columns:.8fr 1.2fr;gap:clamp(50px,9vw,150px);padding:clamp(90px,11vw,165px) clamp(24px,6vw,96px);display:grid}.proof-intro{align-self:start;position:sticky;top:140px}.proof-intro h2{max-width:590px;margin-top:24px;font-size:clamp(3.6rem,6.5vw,6.5rem)}.proof-intro .text-link{margin-top:38px}.quote-stack blockquote{border-top:1px solid #081a283d;margin:0;padding:clamp(40px,5vw,70px) 0;position:relative}.quote-stack blockquote:last-child{border-bottom:1px solid #081a283d}.quote-stack p{max-width:680px;margin:0;padding-left:54px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.65rem,3.3vw,3rem);font-style:italic;line-height:1.27}.quote-mark{color:var(--red);font-family:Georgia,Times New Roman,serif;font-size:5rem;line-height:1;position:absolute;top:clamp(26px,4vw,52px);left:0}.quote-stack footer{color:#081a2891;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;margin-top:28px;padding-left:54px;font-size:.63rem;font-weight:900;display:flex}.quote-stack footer span:last-child{color:var(--red)}.visit-section{background:var(--ink);min-height:790px;color:var(--white);grid-template-columns:1.08fr .92fr;display:grid}.visit-map{background:var(--harbor-dark);min-height:620px;padding:clamp(10px,1.3vw,18px);display:grid;position:relative;overflow:hidden}.visit-map:after{z-index:2;content:"";pointer-events:none;border:1px solid #ffffff3d;position:absolute;inset:clamp(10px,1.3vw,18px);box-shadow:inset 0 0 0 5px #06283b14}.map-embed{width:100%;min-height:inherit;filter:saturate(.82)contrast(.96);border:0;display:block}.visit-content{align-self:center;padding:clamp(70px,9vw,125px) clamp(24px,7vw,98px)}.visit-content h2{max-width:660px;margin-top:24px;font-size:clamp(3.8rem,6.8vw,7rem)}.visit-address{margin:34px 0 0;font-size:1.08rem;font-weight:750;display:grid}.visit-address span{color:#ffffff94;margin-top:4px;font-size:.88rem;font-weight:500}.visit-status{color:var(--gold);letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #ffffff29;border-bottom:1px solid #ffffff29;margin-top:26px;padding:17px 0;font-size:.7rem;font-weight:900}.hours-list{margin:18px 0 0}.hours-list div{color:#ffffffa8;justify-content:space-between;gap:24px;padding:8px 0;font-size:.78rem;display:flex}.hours-list dt,.hours-list dd{margin:0}.hours-list dd{color:var(--white);font-weight:750}.visit-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.holiday-note{color:#ffffff6b;margin:20px 0 0;font-size:.67rem}.faq-section{background:var(--cream);padding:clamp(90px,11vw,155px) clamp(24px,6vw,96px)}.faq-section .section-heading{margin-bottom:52px;display:block}.faq-section .section-heading h2{margin-top:24px}.faq-list{border-top:2px solid var(--ink);margin-left:clamp(0px,17vw,250px)}.faq-list details{border-bottom:1px solid #081a2852}.faq-list summary{cursor:pointer;grid-template-columns:54px 1fr 30px;align-items:center;gap:18px;min-height:92px;padding:15px 0;list-style:none;display:grid}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:var(--red);font-family:var(--display)}.faq-list summary strong{font-size:clamp(1rem,1.5vw,1.25rem)}.faq-list summary i{justify-self:end;width:22px;height:22px;position:relative}.faq-list summary i:before,.faq-list summary i:after{background:var(--ink);content:"";width:18px;height:2px;transition:transform .16s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-list summary i:after{transform:translate(-50%,-50%)rotate(90deg)}.faq-list details[open] summary i:after{transform:translate(-50%,-50%)}.faq-list details>p{color:#081a28a6;max-width:760px;margin:-6px 48px 0 72px;padding:0 0 34px;font-size:.93rem;line-height:1.75}.final-cta{background:radial-gradient(circle at 88% 22%, var(--red) 0 5.5%, transparent 5.7%), radial-gradient(ellipse at 50% 100%, transparent 0 50%, #ffffff12 51% 53%, transparent 54%) 0 0 / 160px 74px, linear-gradient(130deg, var(--harbor-dark), var(--deep-water));color:var(--white);grid-template-columns:1fr auto;align-items:end;gap:40px;padding:clamp(80px,10vw,140px) clamp(24px,6vw,96px);display:grid;position:relative;overflow:hidden}.final-cta .eyebrow{color:var(--white)}.final-cta h2{margin-top:26px;font-size:clamp(4rem,8.2vw,8.2rem)}.final-cta h2 span{color:var(--gold)}.final-actions{justify-items:end;gap:18px;padding-bottom:8px;display:grid}.final-actions>a:last-child{letter-spacing:.06em;text-underline-offset:4px;text-transform:uppercase;min-height:44px;font-size:.72rem;font-weight:800;line-height:44px;text-decoration:underline}.site-footer{border-top:7px solid var(--harbor);color:#ffffff9e;background:#041720;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;padding:44px clamp(24px,6vw,96px);font-size:.7rem;line-height:1.7;display:grid}.footer-brand .brand-mark{border-color:var(--white);background:linear-gradient(135deg, transparent 43%, var(--red) 44% 56%, transparent 57%), var(--deep-water);color:var(--white);box-shadow:inset 0 0 0 4px #041720}.footer-brand .brand-type strong{color:var(--white)}.site-footer p{margin:0}.site-footer>div{text-align:center}.site-footer a:hover{color:var(--white);text-decoration:underline}.site-footer p a{align-items:center;min-height:40px;display:inline-flex}.footer-note{text-align:right;justify-items:end;display:grid}.footer-note span{color:var(--gold);font-family:Georgia,Times New Roman,serif;font-style:italic}.mobile-actions{display:none}@media (width<=1080px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{grid-template-columns:minmax(0,1fr) minmax(310px,.68fr);gap:38px}.hero h1{font-size:clamp(4.4rem,10.5vw,7.4rem)}.service-card{min-height:330px}.shop-section{grid-template-columns:1fr}.proof-section,.visit-section{grid-template-columns:.9fr 1.1fr}.site-footer{grid-template-columns:1fr 1fr}.site-footer>div{text-align:right}.footer-note{border-top:1px solid #ffffff1f;grid-column:1/-1;grid-template-columns:auto auto;justify-content:space-between;padding-top:20px}}@media (width<=820px){html{scroll-padding-top:92px}.topline{grid-template-columns:1fr auto;padding-left:20px;padding-right:20px}.topline>.shop-status{display:none}.site-header{min-height:74px;padding:10px 20px}.site-header>.button{display:none}.brand-mark{width:44px;height:44px}.brand-type strong{font-size:1.05rem}.hero{grid-template-columns:1fr;gap:62px;min-height:auto;padding:70px 24px 94px}.hero:before{width:110%;top:38%;right:-52%}.hero h1{font-size:clamp(4.65rem,17vw,7.5rem)}.hero-board-wrap{justify-self:center;width:min(93%,500px)}.hero-scroll{display:none}.quick-strip{grid-template-columns:1fr}.quick-strip>div{min-height:94px}.quick-strip>div+div{border-top:1px solid var(--line);border-left:0}.section-heading{grid-template-columns:1fr;gap:26px}.section-heading h2{font-size:clamp(3.8rem,14vw,6.2rem)}.service-grid{grid-template-columns:repeat(2,1fr)}.more-services{grid-template-columns:1fr}.shop-statement h2{font-size:clamp(4rem,14vw,6.7rem)}.craft-grid article{grid-template-columns:58px 1fr}.craft-grid p{grid-column:2}.family-band{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);min-height:690px}.family-scene{padding-left:28px;padding-right:28px}.family-copy{padding-right:34px}.proof-section,.visit-section{grid-template-columns:1fr}.proof-intro{position:static}.visit-map{min-height:470px}.faq-list{margin-left:0}.final-cta{grid-template-columns:1fr}.final-actions{justify-items:start}.site-footer{padding-bottom:114px}.mobile-actions{z-index:90;padding-bottom:env(safe-area-inset-bottom,0);background:var(--ink);border:1px solid #ffffff24;grid-template-columns:1.15fr .85fr 1fr;display:grid;position:fixed;bottom:12px;left:12px;right:12px;overflow:hidden;box-shadow:0 16px 46px #081a2857}.mobile-actions a{min-height:62px;color:var(--white);letter-spacing:.1em;text-transform:uppercase;place-items:center;gap:2px;padding:8px;font-size:.59rem;font-weight:900;display:grid}.mobile-actions a:first-child{background:var(--red)}.mobile-actions a+a{border-left:1px solid #ffffff26}}@media (width<=560px){.topline{letter-spacing:.09em;font-size:.6rem}.brand-type small{display:none}.hero{padding-top:56px}.hero h1{font-size:clamp(4.25rem,20.5vw,6.7rem)}.hero-lede{font-size:1rem}.hero-actions{flex-direction:column;align-items:stretch;gap:12px}.hero-actions .text-link{width:fit-content}.rating-proof{flex-wrap:wrap}.hero-board-wrap{width:calc(100% - 12px);transform:rotate(.8deg)}.board-shadow{inset:13px -13px -13px 13px}.hero-board{padding:30px 25px}.board-heading,.board-status{flex-direction:column;align-items:flex-start;gap:5px}.board-title strong{font-size:clamp(3.4rem,17vw,4.8rem)}.board-status .shop-status{text-align:left;justify-content:flex-start}.services-section,.shop-section,.proof-section,.faq-section{padding-left:20px;padding-right:20px}.section-heading h2,.shop-statement h2,.proof-intro h2,.faq-section .section-heading h2{font-size:clamp(3.6rem,17vw,5.3rem)}.service-grid{grid-template-columns:1fr}.service-card{min-height:320px}.craft-grid article{grid-template-columns:48px 1fr}.craft-grid p{grid-column:1/-1}.family-band{grid-template-columns:1fr;min-height:auto;padding:88px 20px}.family-scene{border-bottom:1px solid #ffffff2b;border-right:0;min-height:390px;padding:0 0 54px}.family-type{font-size:7.5rem;bottom:0;left:auto;right:-32px}.family-porthole{width:min(76vw,290px)}.family-copy{padding:62px 0 0}.family-copy h2{font-size:clamp(3.6rem,16vw,5.1rem)}.quote-stack p,.quote-stack footer{padding-left:36px}.quote-stack p{font-size:1.65rem}.quote-mark{font-size:4rem}.visit-map{min-height:360px}.visit-content{padding-left:20px;padding-right:20px}.visit-content h2,.final-cta h2{font-size:clamp(3.8rem,17vw,5.4rem)}.visit-actions{flex-direction:column;align-items:stretch}.faq-list summary{grid-template-columns:38px 1fr 26px;gap:10px}.faq-list details>p{margin-left:48px;margin-right:22px}.final-cta{padding-left:20px;padding-right:20px}.site-footer{grid-template-columns:1fr;padding-left:20px;padding-right:20px}.site-footer>div{text-align:left}.footer-note{grid-column:auto;grid-template-columns:1fr;justify-items:start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.brand-mark,.quick-number,.craft-icon,.button{border:2px solid buttontext}}@media print{.topline,.site-header,.mobile-actions,.hero-scroll,.final-cta{display:none!important}.site-shell{max-width:none;box-shadow:none}}
