/* Homer Hill: restrained farmhouse theme for café and menu pages */
:root{--forest:#163d2e;--dark:#0f2c23;--gold:#b18d4a;--cream:#fbf7ed;--paper:#fffefa;--line:#e4d8c3;--text:#294237}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.hm-page{margin:0;background:var(--cream);color:var(--text);font-family:Georgia,"Times New Roman",serif;-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit}
.hm-top{background:var(--forest);color:#fff9ed;text-align:center;padding:10px 14px;font:11px/1.25 Arial,sans-serif;letter-spacing:1.55px}
.hm-header{background:#fffaf1;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.hm-header-inner{max-width:1220px;margin:auto;padding:8px 22px;display:flex;justify-content:space-between;align-items:center;gap:22px}
.hm-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--forest)}.hm-brand img{width:100px;height:70px;object-fit:contain}.hm-brand span{font-size:19px;font-weight:bold;white-space:nowrap}
.hm-nav{display:flex;align-items:center;gap:23px}.hm-nav a{font:13px Arial,sans-serif;text-decoration:none;white-space:nowrap}.hm-nav a:not(.hm-call):hover,.hm-nav a.active{color:#a57a36;text-decoration:underline;text-underline-offset:7px}.hm-nav .hm-call{background:var(--forest);color:#fff9ed;padding:14px 18px;display:inline-block}.hm-nav .hm-call:hover{background:#275b43}
.hm-menu-toggle{display:none;background:none;border:0;color:var(--forest);font-size:29px;min-width:46px;min-height:46px;cursor:pointer}
.hm-container{width:min(100% - 40px,1160px);margin-inline:auto}.hm-overline{color:#986f31;font:600 12px Arial,sans-serif;letter-spacing:2.1px;text-transform:uppercase}.hm-title{font-size:clamp(39px,5.5vw,65px);font-weight:normal;color:var(--dark);line-height:1.1;letter-spacing:-1px;margin:13px 0 20px}.hm-lead{font:18px/1.6 Georgia,serif;color:#43564b}.hm-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--forest);color:#fffaf1!important;border:1px solid var(--forest);min-height:47px;padding:12px 20px;text-decoration:none;font:600 14px Arial,sans-serif;cursor:pointer}.hm-action:hover{background:#285c43}.hm-action.secondary{background:transparent;color:var(--forest)!important;border-color:#b8a278}.hm-action.secondary:hover{background:#eee5d4}
.hm-intro{padding:50px 0 38px;background:#fbf7ed;overflow:hidden}.hm-intro-grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:28px;align-items:center}.hm-intro-copy{padding:8px 0}.hm-intro .hm-lead{max-width:510px;margin:0 0 24px}.hm-intro .hm-button-row{display:flex;gap:12px;flex-wrap:wrap}.hm-intro-photo{margin-right:calc((min(100vw - 40px, 1160px) - 100vw)/2);min-width:0;overflow:hidden}.hm-breakfast{width:100%;aspect-ratio:2.25/1;display:block;object-fit:cover;object-position:center;border:0;box-shadow:none;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.55) 9%,#000 19%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.55) 9%,#000 19%)}.hm-caption{display:none}
.hm-card-section{padding:66px 0 82px}.hm-section-heading{text-align:center;max-width:670px;margin:0 auto 30px}.hm-section-heading h2{font-weight:normal;font-size:clamp(31px,4vw,45px);color:var(--forest);margin:12px 0}.hm-section-heading p{line-height:1.6;margin:0;font-size:16px}
.hm-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.hm-card{min-width:0;border:1px solid var(--line);background:#fffefa;box-shadow:0 3px 15px #163d2e08;display:flex;flex-direction:column;overflow:hidden}.hm-card-preview{background:#f5f1e9;height:215px;display:flex;justify-content:center;align-items:center;border-bottom:1px solid var(--line);padding:12px}.hm-card-preview img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 4px 5px #0001)}.hm-card-preview.simple{background:#f3ecde;color:var(--forest);font:58px/1 Georgia,serif}.hm-card-body{padding:25px 24px;display:flex;flex:1;flex-direction:column}.hm-card h3{font-size:27px;font-weight:normal;color:var(--forest);margin:0 0 8px}.hm-card p{font-size:15px;line-height:1.6;margin:0 0 23px;flex:1}.hm-card .hm-action{width:100%}
.hm-feature-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.hm-feature{border:1px solid var(--line);background:#f3ecdf;padding:24px 27px;display:flex;align-items:center;justify-content:space-between;gap:14px}.hm-feature h3{font-weight:normal;color:var(--forest);font-size:22px;margin:0 0 5px}.hm-feature p{font-size:14px;line-height:1.5;margin:0}.hm-feature a{font:600 13px Arial,sans-serif;white-space:nowrap;text-underline-offset:4px}
.hm-banner{padding:32px 20px;background:var(--forest);color:#fffaf1;text-align:center}.hm-banner p{font-size:19px;margin:0 0 16px}.hm-banner .hm-action{background:#fffaf1;color:var(--forest)!important;border-color:#fffaf1}
.hm-page-intro{text-align:center;max-width:790px;margin:0 auto;padding:65px 20px 27px}.hm-page-intro .hm-title{margin:14px 0}.hm-page-intro p{margin:0 auto;max-width:590px}
.hm-breadcrumb{font:13px Arial,sans-serif;display:flex;justify-content:center;gap:12px;align-items:center;padding-top:26px;color:#596c60}.hm-breadcrumb a{text-underline-offset:3px}.hm-breadcrumb span{color:#a78550}
.hm-menu-sheet{max-width:1080px;margin:0 auto;padding:20px 22px 67px}.hm-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.hm-pages.one{grid-template-columns:minmax(0,1fr);max-width:640px;margin-inline:auto}.hm-page-card{background:#fff;border:1px solid var(--line);padding:10px;box-shadow:0 8px 25px #1b392511}.hm-page-card img{display:block;width:100%;height:auto;cursor:zoom-in}.hm-page-label{display:flex;align-items:center;justify-content:space-between;padding:14px 6px 3px;gap:12px}.hm-page-label strong{font:600 13px Arial,sans-serif;color:var(--forest)}.hm-page-label a{font:13px Arial,sans-serif;text-underline-offset:4px}
.hm-menu-actions{display:flex;justify-content:center;gap:13px;flex-wrap:wrap;margin:35px auto 0}.hm-menu-actions a{min-width:175px}.hm-note{text-align:center;font:13px/1.65 Arial,sans-serif;max-width:760px;margin:25px auto 0;color:#5b6a5f}
.hm-pending{max-width:710px;margin:18px auto 70px;padding:60px 30px;border:1px solid var(--line);background:var(--paper);text-align:center}.hm-pending .big{font-size:52px;color:var(--gold)}.hm-pending h2{font-size:31px;font-weight:normal;color:var(--forest)}.hm-pending p{line-height:1.7;max-width:490px;margin:0 auto 25px}
.hm-editorial{max-width:850px;margin:0 auto;padding:35px 26px 75px}.hm-editorial h2{color:var(--forest);font-weight:normal;font-size:32px}.hm-editorial p{line-height:1.75}.hm-editorial .hm-action{margin-top:14px}
.hm-footer{background:var(--dark);color:#fffaf1;text-align:center;padding:40px 18px}.hm-footer strong{font-size:18px}.hm-footer p{font:13px/1.8 Arial,sans-serif}.hm-footer a{color:#fffaf1}
.hm-modal{border:0;padding:10px 10px 14px;max-width:min(1100px,96vw);max-height:95vh;background:var(--paper);box-shadow:0 20px 80px #0008}.hm-modal::backdrop{background:#091d16d9}.hm-modal .hm-close{display:block;margin-left:auto;margin-bottom:8px;border:1px solid var(--forest);background:var(--forest);color:#fff;padding:10px 14px;cursor:pointer;font:14px Arial,sans-serif}.hm-modal img{display:block;max-width:100%;max-height:79vh;margin:auto;object-fit:contain}.hm-modal .hm-full-link{display:block;text-align:center;margin:9px auto 0;font:13px Arial,sans-serif}
.hm-accessible{max-width:780px;margin:30px auto 0;border-top:1px solid var(--line);font:14px/1.6 Arial,sans-serif}.hm-accessible summary{cursor:pointer;color:#4d6658;padding:16px 5px}.hm-accessible p{padding:0 5px}
@media(max-width:990px){.hm-header-inner{padding:7px 16px}.hm-brand img{width:88px;height:62px}.hm-brand span{font-size:16px}.hm-menu-toggle{display:inline-block}.hm-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffaf1;border-bottom:1px solid var(--line);box-shadow:0 12px 19px #0002;padding:8px 20px 20px;flex-direction:column;align-items:stretch;gap:0}.hm-nav.open{display:flex}.hm-nav a{padding:14px 8px;border-bottom:1px solid #e7dcca;font-size:15px}.hm-nav .hm-call{text-align:center;margin:12px 0 0}.hm-intro-grid{gap:18px;grid-template-columns:1fr 1fr}.hm-intro-photo{margin-right:-16px}.hm-card-preview{height:170px}}
@media(max-width:720px){.hm-top{font-size:9px;letter-spacing:1px}.hm-container{width:min(100% - 32px,1160px)}.hm-intro{padding:36px 0 38px}.hm-intro-grid{display:flex;flex-direction:column;gap:18px}.hm-intro-copy{width:100%}.hm-title{font-size:clamp(37px,10vw,49px)}.hm-lead{font-size:16px;line-height:1.55}.hm-intro-photo{width:calc(100% + 32px);margin:0 -16px -18px;overflow:hidden}.hm-breakfast{aspect-ratio:2.08/1;border:0;object-position:center;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 89%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 89%,transparent 100%)}.hm-card-section{padding:43px 0 54px}.hm-card-grid{grid-template-columns:1fr;gap:17px}.hm-card{flex-direction:row;align-items:center}.hm-card-preview{width:32%;height:176px;padding:12px;border-bottom:0;border-right:1px solid var(--line);flex-shrink:0}.hm-card-body{padding:19px 15px}.hm-card h3{font-size:22px}.hm-card p{font-size:13px;margin:0 0 15px}.hm-card .hm-action{padding:11px;font-size:12px;min-height:44px}.hm-feature-row{grid-template-columns:1fr}.hm-feature{padding:18px}.hm-page-intro{padding:40px 18px 20px}.hm-menu-sheet{padding:14px 16px 45px}.hm-pages{grid-template-columns:1fr;gap:20px;max-width:520px;margin:auto}.hm-menu-actions{margin-top:25px}.hm-action{font-size:13px}.hm-breadcrumb{padding-top:19px}.hm-note{font-size:12px}}
@media(max-width:400px){.hm-brand span{display:none}.hm-card-preview{width:31%;height:166px}.hm-card-body{padding:17px 12px}.hm-feature{display:block}.hm-feature a{display:inline-block;margin-top:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Past Sunday menu is explicitly labelled as a sample, never the current offer. */
.hm-sunday-previous{max-width:710px;margin:29px auto 0;border-top:1px solid var(--line);padding:25px 18px 7px;text-align:center}.hm-sunday-previous h3{margin:7px 0 8px;color:var(--forest);font-size:24px;font-weight:normal}.hm-sunday-previous p{max-width:520px;margin:8px auto 18px;font:14px/1.6 Arial,sans-serif;color:#516357}.hm-sunday-previous a.hm-prev-image{display:block;max-width:450px;margin:0 auto;padding:7px;background:#fff;border:1px solid var(--line)}.hm-sunday-previous img{width:100%;height:auto;display:block}.hm-sunday-notice{font:700 12px/1.6 Arial,sans-serif;letter-spacing:.8px;text-transform:uppercase;color:#8d5e20;background:#fbf0d8;display:inline-block;padding:7px 12px}.hm-pending .hm-action{margin:10px 4px}.hm-sunday-previous .hm-action{margin-top:18px}

/* Afternoon Tea: four matching menu choices; two columns on tablet, one on mobile. */
.hm-card-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.hm-card-preview--afternoon-tea{padding:0;overflow:hidden;background:#e9e1d1}
.hm-card-preview--afternoon-tea img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center center;filter:none}
@media(max-width:1100px){.hm-card-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.hm-card-grid--four{grid-template-columns:1fr}}
