:root{--bg:#ffffff;--ink:#0D131A;--ink-dim:#4a5058;--accent:#C8770C;--accent-dark:#8E5509;--accent-light:#E0A452;--line:rgba(13,19,26,.12);color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Nunito,system-ui,sans-serif;font-size:16px;line-height:1.6}img{display:block;width:100%;height:100%;object-fit:cover;border-radius:8px}a{color:inherit}h1,h2,h3{font-family:Nunito,system-ui,sans-serif;font-weight:800;margin:0;text-wrap:balance}.wrap{max-width:1224px;margin:0 auto;padding:0 24px}@media(max-width:640px){.wrap{padding:0 16px}}.center{max-width:700px;margin:0 auto;text-align:center}header{position:sticky;top:0;z-index:50;background:var(--accent);border-bottom:1px solid rgba(13,19,26,.15)}.headbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:1224px;margin:0 auto;gap:16px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:1.05rem;color:var(--ink);text-decoration:none}.brand-badge{width:116px;height:116px;flex:none;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:63% 37% 54% 46%/43% 37% 63% 57%;box-shadow:0 3px 10px #0d131a2e}.brand-badge img{width:86%;height:86%;object-fit:contain;border-radius:0}@media(max-width:640px){.brand-badge{width:72px;height:72px}}nav{display:flex;align-items:center;gap:20px}.nav-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.nav-menu a{font-size:.92rem;font-weight:700;text-decoration:none;color:var(--ink);white-space:nowrap}.nav-menu a:hover,.nav-menu a:focus-visible{opacity:.7}.nav-menu a.current{text-decoration:underline;text-underline-offset:4px}.nav-toggle-input{position:absolute;opacity:0;pointer-events:none}.nav-toggle-label{display:none}@media(max-width:900px){.nav-toggle-label{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:36px;cursor:pointer;flex:none}.nav-toggle-label span{display:block;width:100%;height:3px;background:var(--ink);border-radius:2px}.nav-toggle-input:focus+.nav-toggle-label{outline:2px solid var(--ink);outline-offset:3px}nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--accent);max-height:0;overflow:hidden;transition:max-height .25s ease}.nav-toggle-input:checked~nav{max-height:520px}.nav-menu{flex-direction:column;align-items:stretch;gap:0;width:100%}.nav-menu a{display:block;text-align:center;padding:16px 24px}nav .btn{margin:16px 24px;justify-content:center}}.btn{display:inline-flex;align-items:center;gap:9px;font-family:Nunito,sans-serif;font-weight:800;font-size:.98rem;background:var(--accent);color:var(--ink);padding:12px 26px;border-radius:8px;text-decoration:none;border:3px solid transparent;cursor:pointer}.btn:hover,.btn:focus-visible{background:var(--accent-light)}.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-outline:hover,.btn-outline:focus-visible{background:#ffffff26}.btn-icon{width:16px;height:16px;flex:none;fill:currentColor}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.phone-popover{position:absolute;z-index:100;background:#fff;color:var(--ink);border-radius:10px;box-shadow:0 8px 28px #00000038;padding:14px 16px;display:flex;align-items:center;gap:12px;font-family:Nunito,sans-serif;white-space:nowrap}.phone-popover strong{font-size:1.05rem;color:var(--accent-dark)}.phone-popover button{font-family:inherit;font-weight:800;font-size:.85rem;background:var(--accent);color:var(--ink);border:none;border-radius:6px;padding:7px 12px;cursor:pointer}.phone-popover button:hover{background:var(--accent-light)}.hero{position:relative;min-height:66vh;display:flex;align-items:flex-end;overflow:hidden}.hero img{position:absolute;inset:0;border-radius:0}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a0a080d,#0a0a081a 40%,#0a0a089e)}.hero-inner{position:relative;z-index:2;padding:56px 24px 48px;max-width:760px;margin:0 auto;text-align:center}.hero h1{font-size:clamp(2rem,4.6vw,3.2rem);color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.45)}.hero p{color:#f8f5ee;font-size:1.08rem;margin-top:18px;font-weight:600;text-shadow:0 1px 12px rgba(0,0,0,.45)}.hero .btn{margin-top:28px}section.block{padding:80px 0}@media(max-width:640px){section.block{padding:52px 0}}h2{font-size:clamp(1.6rem,3vw,2.15rem)}.center p{color:var(--ink-dim);font-size:1.05rem;font-weight:600;margin-top:14px}.banner-section{position:relative;min-height:64vh;display:flex;align-items:flex-start;overflow:hidden;padding:0}.banner-section img{position:absolute;inset:0;border-radius:0}.banner-section:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a0a0880,#0a0a0824 38%,#0a0a080f)}.banner-section .wrap{position:relative;z-index:2;padding-top:64px}@media(max-width:640px){.banner-section .wrap{padding-top:44px}}.banner-section h1,.banner-section h2{color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.45)}.banner-section .center p{color:#f8f5ee;text-shadow:0 1px 10px rgba(0,0,0,.45)}@media(max-width:640px){.banner-section{min-height:52vh}}.blob-frame{width:100%}.blob-photo{width:100%;height:100%;object-fit:cover;display:block;box-shadow:0 16px 30px -18px #0d131a59}.blob-a .blob-photo{border-radius:63% 37% 54% 46%/43% 37% 63% 57%}.blob-b .blob-photo{border-radius:42% 58% 66% 34%/56% 42% 58% 44%}.blob-c .blob-photo{border-radius:58% 42% 40% 60%/60% 55% 45% 40%}.reserve{background:var(--accent)}.reserve h2{color:var(--ink)}.reserve .center p{color:#0d131ad9}.services{background:#0f0a14;color:#fff}.services h2{color:#fff}.services .center p{color:#ffffffeb}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:44px;max-width:1400px}@media(max-width:760px){.services-grid{grid-template-columns:1fr;max-width:380px;margin:44px auto 0}}.service-item .blob-frame{aspect-ratio:1/1;width:100%;max-width:440px;margin:0 auto 20px}.service-tag{display:block;font-size:.85rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.service-item{text-align:center;display:block;text-decoration:none;color:inherit;transition:transform .15s ease}.service-item:hover,.service-item:focus-visible{transform:translateY(-4px)}.service-item:hover .blob-photo,.service-item:focus-visible .blob-photo{box-shadow:0 20px 34px -16px #c8770c8c}.service-item p{color:#fffffff2;font-size:1rem;font-weight:600;margin:0;text-align:center}.service-more{display:inline-block;margin-top:10px;font-size:.85rem;font-weight:800;color:var(--accent);text-underline-offset:3px}.detail-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin:40px 0 0}.detail-gallery .blob-frame{aspect-ratio:4/3}@media(max-width:640px){.detail-gallery{grid-template-columns:1fr}}.detail-body{max-width:760px;margin:0 auto}.detail-body p{font-size:1.05rem;color:var(--ink-dim);margin-top:18px}.detail-body p:first-child{margin-top:0}.cta-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:28px}.contact-section{background:#fbf6ec}.contact-line{font-size:1.08rem;font-weight:600;color:var(--ink-dim);margin-top:14px}.contact-line a{color:var(--accent-dark);font-weight:800;text-decoration:none}.contact-line a:hover,.contact-line a:focus-visible{text-decoration:underline}.map-block{margin:36px auto 0;max-width:640px}.map-block img{width:100%;height:auto;border-radius:12px;box-shadow:0 16px 30px -18px #0d131a59}.map-block .addr{margin-top:14px;font-weight:700;color:var(--ink-dim)}.map-block .btn{margin-top:16px}.avis{border-top:1px solid var(--line);background:#fff}.avis h3{font-size:1.2rem;margin-bottom:6px}.avis .sub{color:var(--ink-dim);font-weight:600;margin-bottom:22px}.ratings-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:24px}.rating-badge{display:inline-flex;align-items:center;gap:8px;background:#fbf6ec;border:1px solid var(--line);border-radius:999px;padding:10px 18px;font-weight:700;color:var(--ink);text-decoration:none;font-size:.95rem}.rating-badge strong{color:var(--accent-dark);font-weight:800}.rating-badge:hover,.rating-badge:focus-visible{border-color:var(--accent)}.brand-icon{width:18px;height:18px;flex:none;fill:currentColor}.brand-icon.google{color:#4285f4}.brand-icon.tripadvisor{color:#00af87}main.hours-main{padding:72px 0 96px}.hours-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:start}@media(max-width:860px){.hours-layout{grid-template-columns:1fr;gap:40px}}.lede{font-size:clamp(1.5rem,2.6vw,1.9rem);font-weight:800;margin-bottom:28px}.schedule{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}.schedule li{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);font-size:1.05rem}.schedule li span:first-child{font-weight:800}.schedule li span:last-child{color:var(--ink-dim);font-weight:600;text-align:right}.phone-line{font-size:1.15rem;font-weight:700;margin-bottom:22px}.phone-line a{color:var(--accent-dark);text-decoration:none}.phone-line a:hover,.phone-line a:focus-visible{text-decoration:underline}.note{color:var(--ink-dim);font-size:1.02rem;font-weight:600;margin-bottom:14px}.signoff{font-weight:800;margin:26px 0 30px;font-size:1.08rem}.hours-photo-frame{aspect-ratio:4/5}@media(max-width:860px){.hours-photo-frame{aspect-ratio:16/10}}main.contact-main{position:relative;padding:72px 0 96px;background-position:center;background-size:cover;background-repeat:no-repeat}main.contact-main:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a0a088c,#0a0a089e)}.contact-main .wrap{position:relative;z-index:2;max-width:640px}.contact-main h1{color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.45)}.contact-main .contact-line{color:#f8f5ee;text-shadow:0 1px 10px rgba(0,0,0,.4)}.contact-main .contact-line a{color:#fff;text-decoration:underline}.contact-card{background:#fbf6ecf0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;padding:32px;box-shadow:0 20px 50px -20px #00000073}@media(max-width:640px){.contact-card{padding:24px 20px}}.form-banner{border-radius:8px;padding:16px 20px;margin-bottom:28px;font-weight:700}.form-banner.success{background:#eaf6ef;color:#1f7a4c;border:1px solid #bfe6cf}.form-banner.error{background:#fbeaea;color:#b3261e;border:1px solid #f2c6c4}.field{margin-bottom:20px}.field label{display:block;font-weight:800;margin-bottom:6px;font-size:.95rem}.field .optional{font-weight:600;color:var(--ink-dim);text-transform:none}.field input,.field textarea{width:100%;font-family:Nunito,sans-serif;font-size:1rem;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:12px 14px;background:#fff}.field input:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.field textarea{min-height:140px;resize:vertical}.hp-field{position:absolute;left:-9999px;top:-9999px}main.legal-main{padding:72px 0 96px}main.legal-main .wrap{max-width:760px}main.legal-main h2{font-size:1.3rem;margin:36px 0 12px}main.legal-main h2:first-child{margin-top:0}main.legal-main p{color:var(--ink-dim);font-weight:600;margin:0 0 14px}main.legal-main a{color:var(--accent-dark);font-weight:700}main.notfound-main{padding:72px 0 96px}.notfound-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:start}@media(max-width:860px){.notfound-layout{grid-template-columns:1fr;gap:40px}}.notfound-404{display:block;font-weight:800;line-height:.9;font-size:clamp(4.5rem,10vw,7rem);color:var(--accent-dark);margin-bottom:4px}.notfound-lede{margin-bottom:24px}.notfound-links{list-style:none;margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 24px}.notfound-links a{font-weight:700;color:var(--accent-dark);text-decoration:none}.notfound-links a:hover,.notfound-links a:focus-visible{text-decoration:underline}.notfound-phone{margin-top:26px;margin-bottom:0}.notfound-phone a{display:inline-flex;align-items:center;gap:8px}.notfound-photo-frame{aspect-ratio:4/5}@media(max-width:860px){.notfound-photo-frame{aspect-ratio:16/10}}footer{background:#fff;color:var(--ink);padding:32px 0;border-top:1px solid var(--line)}.foot-row{display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap;font-size:.9rem;color:var(--ink-dim);text-align:center}.foot-row a{color:var(--ink);text-decoration:none;font-weight:700}.foot-row a:hover,.foot-row a:focus-visible{color:var(--accent)}.foot-brand{display:flex;align-items:center;gap:12px}.foot-badge{width:40px;height:40px;flex:none;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:63% 37% 54% 46%/43% 37% 63% 57%;box-shadow:0 2px 8px #0d131a26}.foot-badge img{width:86%;height:86%;object-fit:contain}
