:root{
  --egg-cream:#eadfca;
  --egg-brown:#b87548;
  --egg-dark:#754b35;
  --egg-olive:#9c9b6b;
  --egg-blue:#9eb9ad;
  --egg-panel:#ece2d1;
}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.egg-hp{position:absolute!important;left:-10000px!important;opacity:0!important}
.egg-hero{background:#28352d;color:#f6f1e8}
.egg-hero-grid{width:min(var(--max),calc(100% - 56px));margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:660px}
.egg-hero-copy{padding:88px 58px 78px 0;display:flex;flex-direction:column;justify-content:center}
.egg-hero .eyebrow{color:#d8bd8d}
.egg-hero .display{font-size:clamp(2.65rem,5.4vw,5rem);max-width:11.5ch}
.egg-hero .lead{color:#d5d1c7;max-width:43ch;margin:28px 0 34px}
.egg-jump{display:inline-flex;align-items:center;gap:16px;width:max-content;color:#fff;text-decoration:none;border-bottom:1px solid #c5a36d;padding:0 0 7px;font-size:.8rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}
.egg-jump span{font-size:1.2rem;line-height:1}
.egg-hero-photo{position:relative;overflow:hidden;min-height:660px;background:#202b25}
.egg-hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.egg-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,53,45,.28),transparent 36%),linear-gradient(0deg,rgba(16,18,16,.16),transparent 50%)}
.egg-float{position:absolute;z-index:2;width:72px;height:94px;border-radius:50% 50% 46% 46% / 62% 62% 40% 40%;box-shadow:0 15px 28px rgba(0,0,0,.2),inset -10px -9px 18px rgba(89,57,34,.08),inset 8px 7px 14px rgba(255,255,255,.18)}
.egg-float-a{right:26px;bottom:34px;background:#e7d9bd;transform:rotate(8deg)}
.egg-float-b{right:89px;bottom:20px;background:#a7a474;transform:rotate(-10deg) scale(.8)}
.egg-float-c{right:140px;bottom:27px;background:#b7764f;transform:rotate(4deg) scale(.67)}
.egg-note-band{background:#ded3c2;border-bottom:1px solid rgba(60,50,39,.12)}
.egg-note-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:27px;padding-bottom:27px}
.egg-note-grid p{margin:0;font-family:var(--font-display);font-size:1.04rem;line-height:1.52;color:#544b40}
.egg-note-grid strong{font-family:var(--font-sans);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#29261f}
.egg-booking{padding:94px 0 110px;background:var(--paper)}
.egg-booking-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.72fr);gap:74px;align-items:start}
.egg-section-head{margin-bottom:42px}
.egg-section-head .section-title{max-width:14ch}
#egg-form{display:grid;gap:0}
.egg-step{margin:0;padding:36px 0;border:0;border-top:1px solid var(--line);min-width:0}
.egg-step legend{width:100%;padding:0;margin:0 0 25px;font-family:var(--font-display);font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.15;color:var(--ink)}
.egg-step legend span{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;margin-right:14px;border:1px solid #b7aa98;border-radius:50%;font-family:var(--font-sans);font-size:.62rem;font-weight:700;letter-spacing:.04em;vertical-align:4px}
.step-help{margin:-10px 0 22px;color:var(--ink-soft);font-size:.9rem}
.qty-row{display:flex;align-items:center;gap:12px;width:max-content}
.qty-change{width:52px;height:52px;border:1px solid #b9ae9c;background:transparent;color:var(--ink);font-size:1.65rem;line-height:1}
.qty-change:hover{background:#eee5d7}
.qty-input-wrap{height:74px;min-width:144px;padding:0 20px;display:flex;align-items:baseline;justify-content:center;gap:7px;background:#f7f2e9;border:1px solid #c9bcaa}
.qty-input-wrap input{width:78px;border:0;background:transparent;text-align:right;font-family:var(--font-display);font-size:2.7rem;line-height:1;color:var(--ink);appearance:textfield}
.qty-input-wrap input::-webkit-outer-spin-button,.qty-input-wrap input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty-input-wrap input:focus{outline:0}
.qty-input-wrap small{font-size:.72rem;font-weight:700;text-transform:uppercase}
.qty-presets{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.qty-presets button{min-width:50px;height:38px;padding:0 12px;border:1px solid #b9ae9c;background:transparent;color:#5f574c;font-size:.76rem;font-weight:700}
.qty-presets button.active,.qty-presets button:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.date-grid{display:grid;grid-template-columns:minmax(220px,.8fr) 1.2fr;gap:28px}
.egg-step label,.field-label{display:grid;gap:8px;font-size:.75rem;font-weight:700;letter-spacing:.045em;color:#5f574d}
.egg-step input[type="date"],.egg-step input[type="text"],.egg-step input[type="email"],.egg-step input[type="tel"],.egg-step textarea{width:100%;border:1px solid #bbb0a0;background:#fbf8f1;color:var(--ink);border-radius:0;padding:13px 14px;min-height:50px}
.egg-step textarea{resize:vertical;line-height:1.55}
.pickup-options{display:flex;gap:8px;flex-wrap:wrap}
.pickup-options label{display:block;cursor:pointer}
.pickup-options input{position:absolute;opacity:0;pointer-events:none}
.pickup-options span{display:flex;align-items:center;min-height:44px;padding:0 13px;border:1px solid #b9ae9c;font-size:.74rem;font-weight:650;color:#5f574d}
.pickup-options input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.pickup-options input:focus-visible+span{outline:3px solid var(--wax);outline-offset:3px}
.color-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.color-choice{position:relative;min-height:188px;padding:17px 14px 14px;border:1px solid #c7baa9;background:#f7f1e7;display:flex!important;align-items:center;justify-content:flex-end;flex-direction:column;gap:7px!important;text-align:center;cursor:pointer}
.color-choice:hover{border-color:#7e7262}
.color-choice input{position:absolute;opacity:0}
.color-choice:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.color-choice:has(input:checked):after{content:"✓";position:absolute;right:10px;top:9px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:.68rem}
.color-choice:has(input:focus-visible){outline:3px solid var(--wax);outline-offset:3px}
.color-choice strong{font-family:var(--font-display);font-size:1.2rem;font-weight:400;color:var(--ink);letter-spacing:-.01em}
.color-choice small{font-size:.71rem;font-weight:500;color:#7b7164;line-height:1.3}
.egg-swatch{position:relative;display:block;width:57px;height:75px;margin-bottom:3px;border-radius:50% 50% 46% 46% / 62% 62% 40% 40%;background:var(--egg-cream);box-shadow:inset -8px -8px 15px rgba(91,62,38,.1),inset 8px 6px 13px rgba(255,255,255,.35),0 6px 10px rgba(67,52,38,.08)}
.egg-cream{background:var(--egg-cream)}.egg-brown{background:var(--egg-brown)}.egg-dark{background:var(--egg-dark)}.egg-olive{background:var(--egg-olive)}.egg-blue{background:var(--egg-blue)}
.egg-mix{background:linear-gradient(140deg,#e7d9bd 0 32%,#b87548 33% 64%,#9c9b6b 65%)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-grid label:first-child{grid-column:1/-1}
.egg-contact-step>label:not(.consent){margin-top:16px}
.optional{font-weight:500;color:#8a8175}
.consent{display:flex!important;grid-template-columns:18px 1fr!important;align-items:start;gap:10px!important;margin-top:18px;font-size:.78rem!important;line-height:1.5;font-weight:500!important;letter-spacing:0!important}
.consent input{margin-top:3px;width:17px;height:17px;accent-color:#24221e}
.egg-message{margin:18px 0 0;padding:14px 16px;border:1px solid #a45949;background:#f5e8e2;color:#743b32;font-size:.86rem}
.egg-submit{min-height:62px;padding:0 20px;border:0;background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;font-weight:700;letter-spacing:.085em;text-transform:uppercase}
.egg-submit:hover{background:#3b352c}
.egg-submit[disabled]{opacity:.55;cursor:wait}
.egg-summary{position:sticky;top:108px;padding:28px 28px 30px;background:#e9dfcf;border:1px solid #cdbfac}
.egg-summary .eyebrow{margin-top:22px}
.egg-summary-visual{position:relative;height:150px;border-bottom:1px solid #cbbca8;overflow:hidden}
.basket-egg{position:absolute;bottom:22px;width:56px;height:74px;border-radius:50% 50% 46% 46% / 62% 62% 40% 40%;box-shadow:inset -8px -8px 12px rgba(85,53,31,.08),0 8px 12px rgba(68,48,29,.08)}
.basket-egg.e1{left:7%;background:#e4d4b9;transform:rotate(-12deg)}
.basket-egg.e2{left:26%;background:#a5a371;transform:rotate(7deg);height:70px}
.basket-egg.e3{left:46%;background:#b56f48;transform:rotate(-4deg);height:78px}
.basket-egg.e4{left:65%;background:#9eb9ad;transform:rotate(11deg);height:71px}
.basket-egg.e5{left:81%;background:#77503a;transform:rotate(-8deg);height:76px}
.egg-summary dl{margin:0}
.egg-summary dl div{display:flex;justify-content:space-between;gap:22px;padding:14px 0;border-bottom:1px solid #cbbca8}
.egg-summary dt{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#6a6053}
.egg-summary dd{margin:0;text-align:right;font-family:var(--font-display);font-size:1.03rem;color:#27241f}
.summary-small{font-size:.78rem;line-height:1.55;color:#6f6659;margin:18px 0 0}
.egg-success{padding:34px 0 10px;border-top:1px solid var(--line)}
.success-egg{width:78px;height:102px;display:grid;place-items:center;border-radius:50% 50% 46% 46% / 62% 62% 40% 40%;background:#a3a174;color:#fff;font-size:1.5rem;margin-bottom:24px}
.egg-success h2{font-size:clamp(2.4rem,5vw,4rem);margin:0 0 18px}
.egg-success>p:not(.eyebrow){color:var(--ink-soft);font-size:1.05rem}
.reservation-code{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.reservation-code strong{display:block;margin-top:4px;color:var(--ink);font-family:var(--font-display);font-size:1.35rem;font-weight:400}
.text-button{border:0;background:transparent;padding:10px 0;margin-top:12px;border-bottom:1px solid var(--ink);font-size:.78rem;font-weight:700;color:var(--ink)}

@media(max-width:980px){
  .egg-hero-grid{grid-template-columns:1fr;min-height:0}
  .egg-hero-copy{padding:68px 0 52px}
  .egg-hero-photo{min-height:0;height:min(80vw,520px)}
  .egg-booking-grid{grid-template-columns:1fr;gap:44px}
  .egg-summary{position:static;order:-1}
  .egg-summary-visual{display:none}
  .egg-summary .eyebrow{margin-top:0}
  .color-choice-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
  .egg-hero-grid{width:100%}
  .egg-hero-copy{padding:52px 16px 40px}
  .egg-hero .display{font-size:clamp(2.45rem,12.2vw,4rem);max-width:100%}
  .egg-hero .lead{margin:22px 0 26px}
  .egg-hero-photo{height:min(96vw,390px)}
  .egg-float{width:54px;height:71px}
  .egg-float-a{right:18px;bottom:20px}.egg-float-b{right:63px;bottom:12px}.egg-float-c{right:98px;bottom:17px}
  .egg-note-grid{grid-template-columns:1fr;gap:10px;padding-top:22px;padding-bottom:22px}
  .egg-note-grid p{font-size:.94rem}
  .egg-booking{padding:58px 0 70px}
  .egg-booking-grid{gap:28px}
  .egg-section-head{margin-bottom:26px}
  .egg-summary{padding:22px 20px}
  .egg-summary dl{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}
  .egg-summary dl div{display:block;padding:12px 0}
  .egg-summary dd{text-align:left;margin-top:3px}
  .egg-step{padding:30px 0}
  .egg-step legend{font-size:1.55rem}
  .date-grid,.contact-grid{grid-template-columns:1fr}
  .contact-grid label:first-child{grid-column:auto}
  .color-choice-grid{grid-template-columns:repeat(2,1fr)}
  .color-choice{min-height:174px;padding:14px 10px}
}
@media(max-width:420px){
  .qty-input-wrap{min-width:126px;padding:0 12px}.qty-input-wrap input{width:66px}
  .qty-change{width:46px}
  .color-choice-grid{grid-template-columns:1fr 1fr;gap:9px}
  .color-choice{min-height:162px}
  .egg-swatch{width:50px;height:66px}
}
