:root{--ink:#0c3338;--accent:#006c70;--paper:#f6f9f9;--line:#d7e2e2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.65 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}a{text-decoration:none}a:hover{text-decoration:underline}.demo{background:#0c3338;color:white;padding:10px 5%;font-size:14px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.demo a{text-decoration:underline}nav{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 6%;border-bottom:1px solid var(--line)}.brand{font-size:24px;font-weight:700;letter-spacing:-1px}.brand span{color:var(--accent)}.links{display:flex;gap:28px;align-items:center;flex-wrap:wrap;font-size:15px}.btn,button{display:inline-block;border:0;border-radius:4px;background:var(--accent);color:white;padding:13px 24px;cursor:pointer;font-weight:700;text-align:center;min-height:48px}.btn:hover,button:hover{filter:brightness(.9);text-decoration:none}.outline{border:1px solid var(--accent);background:transparent;color:var(--accent)}main{overflow:hidden}.wrap{max-width:1240px;margin:auto;padding:76px 6%}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:13px;font-weight:700;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,6vw,76px);line-height:1.07;letter-spacing:-3px;margin:20px 0 26px;max-width:850px}h2{font-size:clamp(30px,4vw,48px);line-height:1.15;letter-spacing:-1.5px;margin-bottom:24px}h3{font-size:23px;line-height:1.3}.muted{color:#536c70}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px}.hero-copy{padding:80px 9% 65px 12%;align-self:center}.hero-copy h1{font-size:clamp(40px,5vw,70px)}.hero-copy p{max-width:460px}.hero-img{position:relative;min-height:480px;background:#c5d9d8}.hero-img img{width:100%;height:100%;position:absolute;object-fit:cover}.photo-note{position:absolute;bottom:24px;left:24px;background:var(--paper);padding:18px 24px;max-width:270px;font-size:15px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.strip{display:flex;justify-content:space-around;gap:24px;padding:28px 6%;background:#e3eeee;border-bottom:1px solid var(--line);flex-wrap:wrap;font-size:15px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{padding:30px;border:1px solid var(--line);background:white}.number{font-size:14px;display:block;margin-bottom:36px;color:var(--accent)}.card p{font-size:16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.dark{background:var(--ink);color:white}.dark .eyebrow{color:#82d8cf}.dark .muted{color:#c0d5d5}.steps{list-style:none;margin:0;padding:0}.steps li{border-top:1px solid #43666b;padding:22px 0;display:grid;grid-template-columns:50px 1fr;gap:15px}.steps h3{margin-bottom:5px}.steps p{margin:0;color:#c0d5d5;font-size:16px}.form{background:white;padding:32px;border:1px solid var(--line);color:#0c3338}.form label{display:block;font-size:15px;font-weight:700;margin-bottom:15px}.form input,.form select,.form textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #a9bfc1;border-radius:3px;background:white;color:#0c3338}.form textarea{min-height:90px}.small{font-size:14px}.form [role=status]{padding-top:15px;font-weight:700}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{margin:14px 0 0;color:#536c70}footer{padding:30px 6%;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);font-size:14px}.portfolio{background:#071c2e;color:#eff9ff;--ink:#eff9ff;--accent:#58d2e5;--line:#294657}.portfolio nav{border-color:#294657}.portfolio .wrap{padding-top:85px}.portfolio h1{max-width:850px}.portfolio .intro{max-width:650px;color:#b4cad7;font-size:19px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:55px}.project{display:block;background:#102b3e;border:1px solid #294657;overflow:hidden}.project:hover{text-decoration:none;border-color:#58d2e5}.project img{width:100%;height:280px;object-fit:cover;display:block;transition:transform .3s}.project:hover img{transform:scale(1.025)}.project-content{padding:30px}.project p{color:#b4cad7}.tag{display:inline-block;font-size:13px;border:1px solid #416577;padding:4px 10px;margin:0 5px 10px 0}.project h2{font-size:32px}.restaurant{--ink:#302923;--accent:#943c24;--paper:#fffaf1;--line:#ded2bf}.restaurant .brand,.restaurant h1,.restaurant h2,.restaurant h3{font-family:Georgia,serif;font-weight:400}.restaurant .brand{font-size:28px}.restaurant .demo{background:#302923}.restaurant .hero{background:#302923;color:#fffaf1;grid-template-columns:1fr 1.15fr}.restaurant .hero-copy{padding-top:65px}.restaurant .eyebrow{color:#e3b471}.restaurant .hero-copy h1{font-size:clamp(48px,6vw,84px);letter-spacing:-2px}.restaurant .photo-note{background:#943c24;color:white}.restaurant .btn{background:#943c24}.restaurant .strip{background:#eedfc9}.restaurant .card{background:transparent;border:0;border-bottom:1px solid var(--line);padding:24px 0}.restaurant .card h3{margin-bottom:9px}.filters{display:flex;gap:10px;margin:28px 0;flex-wrap:wrap}.filters button{border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:15px;padding:10px 20px}.filters button[aria-pressed=true]{background:var(--accent);color:white}.menu-item[hidden]{display:none}.price{float:right;font:17px Arial,sans-serif;color:var(--accent)}.restaurant .dark{background:#943c24}.restaurant .dark .eyebrow{color:#f3d5a3}.restaurant .dark .muted{color:#fae6dc}.hours{border-collapse:collapse;width:100%;max-width:350px;font-size:16px}.hours td{padding:9px 0;border-bottom:1px solid #c3826e}.hours td:last-child{text-align:right}.skip{position:absolute;left:10px;top:-100px;background:white;color:#0c3338;padding:12px;z-index:10}.skip:focus{top:10px}@media(max-width:800px){nav{padding:20px 5%;align-items:flex-start}.links{gap:14px;font-size:14px}.links .btn{padding:9px 14px}.hero,.restaurant .hero,.split{grid-template-columns:1fr}.hero-copy{padding:55px 6%}.hero-img{min-height:370px}.wrap{padding:55px 6%}.grid{grid-template-columns:1fr}.split{gap:36px}.projects{grid-template-columns:1fr}h1{letter-spacing:-2px}.photo-note{left:18px;bottom:18px}.form{padding:24px}.strip{justify-content:flex-start}.brand{white-space:nowrap}.portfolio .wrap{padding-top:55px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
