:root{--navy:#06294a;--navy-deep:#041e35;--cyan:#35bff0;--gold:#d6b66b;--ink:#183346;--muted:#536874;--line:#cddae2;--pale:#f0f6f8;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;margin:0;line-height:1.14}h2{font-size:clamp(2.25rem,4.2vw,3.6rem);letter-spacing:-.025em}h3{font-size:1.65rem}p{margin:12px 0}a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}a:hover{text-decoration-color:var(--cyan)}.wrap{max-width:1240px;margin-inline:auto;padding-inline:32px}.eyebrow{font-size:.875rem;letter-spacing:.1em;font-weight:700;color:#08799e;margin:0 0 14px}.nav-wrap{position:sticky;top:0;z-index:30;background:var(--navy-deep);color:#fff;border-bottom:1px solid #ffffff20}.nav{max-width:1240px;margin:auto;padding:8px 32px;min-height:88px;display:flex;gap:22px;align-items:center}.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand img{width:70px;height:70px;object-fit:contain;flex-shrink:0}.brand>span{font-family:'Playfair Display',Georgia,serif;font-size:1.3rem;font-weight:700;letter-spacing:.04em;line-height:1.25}.brand small{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:.875rem;font-weight:400;letter-spacing:0;margin-top:4px}.nav-links{display:flex;gap:20px;margin-left:auto;font-size:.9375rem}.nav-links a:hover{color:var(--cyan)}.nav-cta{margin-left:auto;border:1px solid #ffffff70;padding:10px 14px;border-radius:8px;font-size:.9375rem;font-weight:700;white-space:nowrap}.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;min-height:650px;display:grid;align-items:center}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#031e37f8 0%,#031e37dc 43%,#031e3755 84%)}.hero-copy{position:relative;max-width:1240px;width:100%;margin:auto;padding:45px 32px 55px}.hero-logo{width:110px;height:110px;object-fit:contain;margin-bottom:21px}.hero h1{font-size:clamp(2.6rem,5.6vw,5rem);letter-spacing:.015em;max-width:840px}.hero h1 span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:clamp(1.25rem,2.7vw,2rem);line-height:1.3;letter-spacing:.06em;margin-top:12px}.hero .lead{font-size:1.25rem;max-width:650px;margin:20px 0 6px}.hero-service{color:#d6e9f0;margin:0 0 24px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}.button{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:1rem;font-weight:700;text-align:center;min-height:50px;padding:13px 21px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);line-height:1.4;transition:background .15s,border-color .15s}.button:hover{background:#e2f3f9;border-color:#08799e}.button.primary{background:var(--cyan);border-color:var(--cyan);color:#052d4b}.button.primary:hover{background:#72d5f4}.button small{font-size:.875rem;font-weight:400}.button.ghost{border-color:#ffffffb0;background:#06294aaa;color:#fff;min-height:66px}.button.ghost:hover{background:#06294ae8}.hero-contact{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:26px;font-size:1rem;max-width:750px}.hero-contact span{width:100%}.hero-contact a{text-decoration:underline;text-underline-offset:4px}.menu-start{padding-block:52px}.menu-start h2{font-size:clamp(2rem,3vw,2.75rem);max-width:900px}.menu-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.menu-options>a{display:flex;flex-direction:column;padding:27px;border:1px solid var(--line);border-top:4px solid #08799e;border-radius:10px;background:#fff;transition:box-shadow .2s}.menu-options>a:hover{box-shadow:0 8px 25px #06294a15;border-color:#08799e}.menu-options span{font-size:.875rem;font-weight:700;color:#08799e;margin-bottom:16px}.menu-options h3{font-size:1.6rem}.menu-options p{color:var(--muted);margin:12px 0 24px}.menu-options b{font-size:.9375rem;margin-top:auto;color:var(--navy)}.category{padding-block:64px;border-top:1px solid var(--line)}.category.navy{background:var(--navy);color:#fff;border-color:var(--navy)}.category.pale{background:var(--pale)}.category.white{background:#fff}.category-heading{max-width:960px;margin-bottom:28px}.category-heading .eyebrow{margin-bottom:15px}.navy .eyebrow{color:var(--cyan)}.category-subtitle{font-size:1.125rem;max-width:850px;line-height:1.65}.category-heading>p:last-child{max-width:850px;color:var(--muted)}.navy .category-heading>p{color:#d3e4eb}.navy .category-heading>.eyebrow{color:var(--cyan)}.service-badge{display:inline-block;background:#e0f3fa;border:1px solid #96cfe2;color:#075277;padding:10px 17px;font-weight:700;font-size:1.0625rem;border-radius:8px;margin:10px 0}.navy .service-badge{background:var(--cyan);color:#052d4b;border-color:var(--cyan)}.fulfillment{margin:24px 0 30px}.timing-note{padding:22px 25px;background:#e7f1f6;border-left:4px solid #08799e;border-radius:0 8px 8px 0;color:var(--ink)}.timing-note>strong{font-size:1.125rem}.timing-note p{margin-bottom:0;max-width:1000px}.navy .timing-note{background:#0b3a5d;border-color:var(--cyan);color:#e3f0f6}.fulfillment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.fulfillment-grid>article{border:1px solid var(--line);background:#fff;border-radius:12px;padding:25px;color:var(--ink)}.fulfillment-grid article>span{font-size:.875rem;font-weight:700;color:#075a80;letter-spacing:.04em}.fulfillment-grid h3{margin-top:12px;font-size:1.6rem}.fulfillment-grid p{color:var(--muted)}.text-link{display:inline-block;font-weight:700;color:#075a80;text-decoration:underline;text-underline-offset:4px;padding:5px 0}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:30px 0}.gallery:has(figure:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}.gallery figure{margin:0;overflow:hidden;border-radius:11px;background:#fff;border:1px solid var(--line)}.gallery img{width:100%;height:220px;object-fit:cover}.gallery figcaption{font-size:.9375rem;padding:11px 17px;color:var(--ink)}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;margin-top:32px}.package{display:flex;flex-direction:column;border:1px solid #62829c;border-radius:14px;background:#0b3455;overflow:hidden;padding:25px;min-width:0}.package-title{display:block}.package-title:hover h3{color:var(--cyan)}.package-title .eyebrow{display:block}.package-title h3{font-size:1.65rem}.per-guest{display:flex;align-items:center;gap:15px;margin:18px 0}.per-guest>b{font-family:'Playfair Display',Georgia,serif;font-size:2.75rem;line-height:1}.per-guest>span{font-size:.875rem;line-height:1.4}.size-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;background:#06294a;border:1px solid #65829b;border-radius:10px;padding:4px}.size-prices>div{padding:9px 3px;display:flex;flex-direction:column;text-align:center;gap:3px;min-width:0}.size-prices span{font-size:.875rem}.size-prices b{font-size:1.375rem}.size-prices small{font-size:.875rem;line-height:1.4;color:#d4e5ed}.size-prices em{font-size:.875rem;font-style:normal;color:var(--cyan);margin-top:3px}.portion-note{font-size:.875rem;color:#d4e5ed;margin:13px 0 16px;line-height:1.5}.dish{padding:13px 0;border-bottom:1px solid var(--line)}.dish strong{display:block;font-size:1rem}.dish p{font-size:.9375rem;color:var(--muted);line-height:1.55;margin:4px 0 0}.package .dish{border-color:#64839b50}.package .dish p{color:#d4e5ed}.included{padding:16px 0;margin-top:auto}.included strong,.included span{display:block}.included strong{font-size:.875rem;color:var(--gold);margin-bottom:4px}.included span{font-size:1rem;color:#fff;font-weight:700}.package-order{margin-top:5px;background:var(--cyan);border-color:var(--cyan);color:#052d4b}.category-footnote{margin:22px 0 0;font-size:.9375rem;color:var(--muted)}.navy .category-footnote{color:#d4e5ed}.help-box{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:32px;margin:35px 0 0;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:12px;color:var(--ink)}.help-box h3{font-size:1.75rem}.help-box p{color:var(--muted)}.help-box .eyebrow,.navy .help-box .eyebrow{color:#075a80}.phone-line a{text-decoration:underline;text-underline-offset:3px;font-weight:700;color:#075a80}.help-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.help-actions .primary{grid-column:1/-1}.build-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin-top:32px}.build-package{background:#fff;border:1px solid #b7ccd8;border-top:4px solid #08799e;border-radius:12px;padding:30px}.build-package .package-title .eyebrow{color:#08799e}.build-package h3{font-size:2rem}.build-package .per-guest>b{color:var(--navy)}.build-included{background:#e9f4f8;padding:18px;border-radius:8px;margin-bottom:24px}.build-included p{margin:6px 0 0;font-size:1rem}.choice-block{margin-bottom:24px}.choice-block h4{font-size:1.125rem;line-height:1.4;background:var(--navy);color:#fff;padding:12px 16px;border-radius:6px;margin:0 0 3px}.choice-block .dish{padding:13px 3px}.upgrade{font-size:.9375rem;line-height:1.5;background:#edf5f8;padding:12px;border-radius:6px}.build-package>.button{width:100%}.tray-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:9px;overflow:hidden;margin:28px 0}.tray-guide>div{padding:18px 22px;background:#edf5f8}.tray-guide b,.tray-guide span{display:block}.tray-guide b{font-size:.9375rem;color:#075a80}.tray-guide span{font-size:.9375rem;margin-top:5px}.menu-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.menu-card{border:1px solid var(--line);border-top:3px solid #08799e;background:#fff;border-radius:11px;padding:26px;min-width:0}.menu-card h3{font-size:1.75rem}.menu-size-note{font-size:.9375rem;color:var(--muted);margin:9px 0 16px}.item-row{display:flex;gap:18px;justify-content:space-between;align-items:flex-start;padding:17px 0;border-top:1px solid var(--line)}.item-row>div{min-width:0}.item-row strong{display:block;font-size:1rem;line-height:1.45}.item-row small{display:block;font-size:.9375rem;line-height:1.55;color:var(--muted);margin-top:5px}.item-row>b{min-width:100px;flex-shrink:0;text-align:right;font-size:1rem;line-height:1.55;color:#075a80}.footer{background:var(--navy-deep);color:#e0edf3;padding:48px 0 145px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}.footer h3{font-size:1.4rem;margin-bottom:15px}.footer a{display:block;padding:5px 0;font-size:1rem;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.footer-brand img{width:105px;height:105px;object-fit:contain;margin-bottom:17px}.footer p{margin:8px 0}.copyright{grid-column:1/-1;border-top:1px solid #ffffff30;padding-top:22px;font-size:.875rem;color:#b7cdd8}.fixed-actions{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:1000px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;background:var(--navy-deep);border:1px solid #65829b;border-radius:13px;padding:7px;z-index:50;box-shadow:0 8px 30px #0005}.fixed-actions>a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:56px;padding:9px 7px;font-size:1rem;font-weight:700;text-align:center;line-height:1.3;border-radius:8px;color:#fff;white-space:normal;overflow-wrap:anywhere}.fixed-actions>a:first-child{background:var(--cyan);color:#052d4b}.fixed-actions>a:nth-child(2){background:#fff;color:var(--navy)}.fixed-actions>a:nth-child(3){background:#f1d494;color:var(--navy)}.fixed-actions>a:nth-child(4){background:#174968}.fixed-actions small{display:block;font-size:.875rem;font-weight:400;margin-top:3px}.fixed-actions>a:hover{filter:brightness(1.1)}
@media(max-width:1150px){.nav-links{display:none}.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-options>a{padding:22px}.nav-cta{margin-left:auto}}
@media(max-width:800px){.wrap{padding-inline:22px}.category{padding-block:45px}.menu-options,.fulfillment-grid,.help-box{grid-template-columns:1fr}.help-box{gap:22px;padding:25px}.menu-options{gap:12px}.menu-options>a{padding:22px}.menu-options p{margin-bottom:15px}.build-package{padding:22px}.gallery img{height:195px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.nav{padding-inline:22px}.hero-copy{padding-inline:22px}.hero h1{font-size:3.5rem}.hero h1 span{font-size:1.6rem}.hero-overlay{background:linear-gradient(90deg,#031e37ee,#031e37b8)}.size-prices b{font-size:1.25rem}.package{padding:21px}}
@media(max-width:620px){html{scroll-padding-top:90px}.wrap{padding-inline:18px}.nav{padding:8px 16px;gap:10px;min-height:72px}.brand{gap:8px}.brand img{width:52px;height:52px}.brand>span{font-size:1rem}.brand small{font-size:.875rem;max-width:145px;line-height:1.3}.nav-cta{display:none}.hero{min-height:0}.hero-copy{padding:32px 20px 40px}.hero-logo{width:88px;height:88px;margin-bottom:18px}.hero h1{font-size:2.5rem;line-height:1.12}.hero h1 span{font-size:1.3rem;letter-spacing:.03em;line-height:1.4}.hero .lead{font-size:1.125rem}.hero-actions{display:grid;grid-template-columns:1fr;max-width:430px}.hero-contact{gap:10px}.hero-contact a,.hero-contact span{width:100%}.hero-overlay{background:linear-gradient(90deg,#031e37ed,#031e37c9)}.menu-start{padding-block:35px}.menu-start h2{font-size:2rem}.category-heading h2{font-size:2.35rem}.category-subtitle{font-size:1.0625rem}.service-badge{font-size:1rem;line-height:1.4;max-width:100%}.fulfillment-grid>article{padding:22px}.timing-note{padding:20px}.package-grid,.build-grid,.menu-detail-grid,.footer-grid{grid-template-columns:1fr}.package{padding:24px 20px}.package-title h3{font-size:1.75rem}.size-prices{gap:2px}.size-prices b{font-size:1.4rem}.build-package{padding:23px 20px}.build-package h3{font-size:1.8rem}.gallery,.gallery:has(figure:nth-child(3)){grid-template-columns:1fr 1fr;gap:10px}.gallery:has(figure:nth-child(3)) figure:last-child{grid-column:1/-1}.gallery img{height:170px}.gallery figcaption{padding:10px 12px;font-size:.875rem;line-height:1.4}.tray-guide{grid-template-columns:1fr}.tray-guide>div{padding:15px 19px}.help-actions{grid-template-columns:1fr}.help-actions .primary{grid-column:auto}.menu-card{padding:23px 18px}.item-row{gap:12px}.item-row>b{min-width:85px;font-size:.9375rem}.footer{padding-bottom:155px}.footer-grid{gap:27px}.fixed-actions{width:calc(100% - 16px);gap:4px;padding:5px;border-radius:12px;bottom:max(8px,env(safe-area-inset-bottom))}.fixed-actions>a{font-size:.875rem;min-height:66px;padding:8px 3px;line-height:1.35}.fixed-actions small{font-size:.875rem}.footer-brand{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

@media(max-width:360px){.fixed-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.fixed-actions>a{min-height:50px}.footer{padding-bottom:210px}}

/* Let ordering cards fit their content instead of stretching to the tallest card. */
.fulfillment-grid{align-items:start}
.order-visual-column{display:grid;gap:18px;min-width:0}
.order-visual-column>article{border:1px solid var(--line);background:#fff;border-radius:12px;padding:25px;color:var(--ink)}
.order-visual-column>article>span{display:block;font-size:.875rem;font-weight:700;letter-spacing:.08em;color:#08799e;margin-bottom:10px}
.restaurant-feature{margin:0;border:1px solid #ffffff30;border-radius:12px;overflow:hidden;background:var(--navy-deep)}
.restaurant-feature img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.restaurant-feature figcaption{padding:20px 24px;color:#fff}
.restaurant-feature figcaption>span{display:block;color:var(--gold);font-size:.75rem;font-weight:700;letter-spacing:.08em;margin-bottom:8px}
.restaurant-feature figcaption>strong{display:block;font-family:'Playfair Display',Georgia,serif;font-size:1.6rem;line-height:1.2}
.restaurant-feature figcaption>p{font-size:.9375rem;line-height:1.5;color:#d6e9f0;margin:10px 0 0}
@media(max-width:620px){.order-visual-column>article{padding:22px}.restaurant-feature figcaption{padding:18px 20px}}
