:root{
  --green-950:#032b21;--green-900:#04382a;--green-800:#07503b;
  --cream:#f6f0e4;--cream-2:#eee3d3;--paper:#fbf7ef;
  --gold:#c7a24e;--gold-2:#e1c679;--ink:#18392f;--muted:#67756f;
  --shadow:0 18px 42px rgba(3,43,33,.14)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
a{text-decoration:none;color:inherit}button{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}
.hero{
  position:relative;min-height:730px;overflow:hidden;color:#fff;
  background-image:linear-gradient(90deg,rgba(2,31,24,.38) 0%,rgba(2,31,24,.12) 48%,rgba(2,20,16,.06) 100%),url("assets/images/us-open-2026-stadium-hero-background.png");
  background-position:center center;background-size:cover;background-repeat:no-repeat
}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(2,31,24,.22) 0%,transparent 58%),linear-gradient(180deg,rgba(2,20,16,.25) 0%,transparent 24%,rgba(2,20,16,.12) 100%)
}
.nav{height:92px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:50px;height:50px;border:1px solid rgba(255,255,255,.75);transform:rotate(45deg);display:grid;place-items:center}
.brand-mark span{transform:rotate(-45deg);font-family:"Cormorant Garamond",serif;font-weight:700}.brand-copy{display:flex;flex-direction:column;line-height:.85;font-family:"Cormorant Garamond",serif}
.brand-copy em{font-size:16px}.brand-copy strong{font-size:22px;letter-spacing:.04em}.brand-copy small{text-align:right;font-style:italic}
.nav-links{display:flex;gap:34px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.nav-links a:hover{color:var(--gold-2)}
.menu-toggle{display:none;border:0;background:none;color:#fff;cursor:pointer;padding:8px}.menu-toggle svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.8}.menu-toggle .icon-close{display:none}.menu-toggle[aria-expanded="true"] .icon-menu{display:none}.menu-toggle[aria-expanded="true"] .icon-close{display:block}
.hero-grid{min-height:638px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;position:relative;z-index:2}
.eyebrow{display:inline-block;color:var(--gold-2);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.hero h1,.section-head h2,.meet-copy h2,.conditions h2{font-family:"Cormorant Garamond",serif}
.hero h1{font-size:clamp(64px,8vw,112px);line-height:.85;margin:18px 0;letter-spacing:-.04em}
.hero-date{font-family:"Cormorant Garamond",serif;color:var(--gold-2);font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.hero-desc{max-width:580px;color:rgba(255,255,255,.82);font-size:17px}
.hero-benefits{width:min(520px,100%);display:grid;grid-template-columns:repeat(3,1fr);align-items:start;margin-top:34px}
.hero-benefit{min-height:102px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2px 18px 0;text-align:center;border-right:1px solid rgba(255,255,255,.22)}
.hero-benefit:first-child{padding-left:0}.hero-benefit:last-child{border-right:0;padding-right:0}
.hero-benefit svg{width:36px;height:36px;stroke:var(--gold-2);fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;margin-bottom:10px}
.hero-benefit strong{font-size:11px;text-transform:uppercase;letter-spacing:.05em}.hero-benefit small{font-size:11px;color:rgba(255,255,255,.68);margin-top:3px}
.cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 23px;border:1px solid transparent;border-radius:4px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.cta-gold{background:var(--gold);color:var(--green-950);margin-top:27px}.cta-gold:hover{background:var(--gold-2)}
.packs{padding:88px 0 76px;background:radial-gradient(circle at 50% 0,rgba(199,162,78,.10),transparent 31%),var(--cream)}
.section-head{text-align:center;margin-bottom:50px}.section-head h2{font-size:clamp(42px,5vw,68px);line-height:1;margin:7px 0;color:var(--green-950)}.section-head p{color:var(--muted);margin:0}
.packs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}
.pack-ticket{filter:drop-shadow(0 16px 22px rgba(2,45,34,.085)) drop-shadow(0 3px 5px rgba(2,45,34,.065))}
.pack-ticket__surface{--ticket-identity-width:92px;--ticket-stub-width:134px;--ticket-notch-radius:12px;position:relative;display:grid;grid-template-columns:var(--ticket-identity-width) minmax(0,1fr) var(--ticket-stub-width);min-height:408px;overflow:hidden;border-radius:3px;background:var(--paper)}
@supports ((mask:radial-gradient(circle,transparent 10px,#000 11px)) or (-webkit-mask:radial-gradient(circle,transparent 10px,#000 11px))){
  .pack-ticket__surface{
    --ticket-mask:radial-gradient(circle var(--ticket-notch-radius) at var(--ticket-identity-width) 0,transparent 11px,#000 12px),radial-gradient(circle var(--ticket-notch-radius) at var(--ticket-identity-width) 100%,transparent 11px,#000 12px),radial-gradient(circle var(--ticket-notch-radius) at calc(100% - var(--ticket-stub-width)) 0,transparent 11px,#000 12px),radial-gradient(circle var(--ticket-notch-radius) at calc(100% - var(--ticket-stub-width)) 100%,transparent 11px,#000 12px),radial-gradient(circle 7px at 0 50%,transparent 6px,#000 7px),radial-gradient(circle 7px at 100% 50%,transparent 6px,#000 7px);
    border-radius:0;-webkit-mask-image:var(--ticket-mask);-webkit-mask-composite:source-in;mask-image:var(--ticket-mask);mask-composite:intersect
  }
}
.pack-ticket__surface::after{content:"";position:absolute;inset:1px;z-index:4;pointer-events:none;border:1px solid rgba(148,111,38,.14)}
.pack-ticket__identity{position:relative;background:linear-gradient(160deg,#064936 0%,#033426 62%,#022a20 100%);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 8px}
.pack-ticket__identity::after{content:"";position:absolute;right:0;top:22px;bottom:22px;border-right:1px solid rgba(225,198,121,.34)}
.pack-ticket__identity small{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.74)}.pack-ticket__identity strong{font-family:"Cormorant Garamond",serif;font-size:72px;line-height:.82;font-weight:500;color:#fffaf0;margin:11px 0 18px}
.pack-ticket__identity svg{width:29px;height:29px;stroke:var(--gold-2);fill:none;stroke-width:1.45;opacity:.92}
.pack-ticket__content{padding:29px 22px 25px;background:radial-gradient(circle at 18% 8%,rgba(255,255,255,.78),transparent 34%),repeating-linear-gradient(105deg,rgba(117,86,34,.018) 0 1px,transparent 1px 7px),linear-gradient(125deg,#fffdf8 0%,#faf3e7 65%,#f3e7d5 100%)}.pack-header{display:flex;justify-content:space-between;gap:11px;align-items:flex-start}
.pack-header h3{font-family:"Cormorant Garamond",serif;text-transform:uppercase;color:var(--green-950);font-size:31px;line-height:.88;letter-spacing:.018em;margin:0}
.pack-dates{color:#94701e;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.11em;margin:9px 0 0}
.nights{white-space:nowrap;background:rgba(231,215,182,.3);border:1px solid rgba(152,115,42,.24);padding:4px 8px 3px;font-family:"Cormorant Garamond",serif;font-size:9px;line-height:1.1;letter-spacing:.08em;text-transform:uppercase;font-weight:700;height:max-content;color:#705720}
.included{font-size:10px;font-weight:700;margin:21px 0 7px;color:var(--green-950)}.ticket-list{margin:0;padding-left:15px;font-size:10px;line-height:1.6}
.hotels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:19px}.hotel{border-top:1px solid rgba(152,115,42,.2);padding-top:12px;min-width:0}
.hotel h4{font-size:11px;line-height:1.2;margin:0 0 7px}.price{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:5px;font-size:9px;line-height:1.45}.price strong{text-align:right;white-space:nowrap}.destination{font-size:8px;line-height:1.35;color:var(--muted);margin-top:6px}
.hotel h4{min-height:28px}.variant-options{display:grid;gap:4px}.variant-option{position:relative;display:grid;grid-template-columns:13px minmax(0,1fr) auto;align-items:center;gap:5px;padding:3px 2px;cursor:pointer;font-size:9px}.variant-option input{position:absolute;opacity:0}.variant-option__mark{width:11px;height:11px;border:1px solid rgba(4,56,42,.48);border-radius:50%;display:grid;place-items:center}.variant-option input:checked+.variant-option__mark::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}.variant-option input:focus-visible+.variant-option__mark{outline:2px solid var(--gold);outline-offset:2px}.variant-option strong{white-space:nowrap}
.pack-ticket__stub{position:relative;display:flex;min-width:0;background:radial-gradient(circle at 50% 44%,rgba(13,92,67,.5),transparent 55%),linear-gradient(160deg,#064936,#022d22);color:#fff;box-shadow:inset 8px 0 18px rgba(0,0,0,.06)}
.pack-ticket__stub::before{content:"";position:absolute;z-index:3;top:15px;bottom:15px;left:0;width:1px;background:repeating-linear-gradient(to bottom,rgba(171,147,91,.4) 0 3px,transparent 3px 8px)}
.pack-ticket__stub::after{content:"";position:absolute;z-index:1;inset:9px;border:1px solid rgba(225,198,121,.58);box-shadow:inset 0 0 0 2px rgba(2,42,32,.7),inset 0 0 0 3px rgba(225,198,121,.14);pointer-events:none}
.pack-ticket__checkout{position:relative;z-index:2;width:100%;min-height:100%;border:0;background:transparent;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px 13px;cursor:pointer;transition:background-color .16s ease,color .16s ease}
.pack-ticket__checkout:hover{background:rgba(255,255,255,.035)}.pack-ticket__checkout:focus-visible{outline:2px solid #fff2c8;outline-offset:-6px}.pack-ticket__checkout svg{width:21px;height:21px;stroke:var(--gold-2);fill:none;stroke-width:1.35;margin-bottom:15px;opacity:.86}.pack-ticket__checkout-title,.pack-ticket__checkout strong{font-family:"Cormorant Garamond",serif;font-size:19px;line-height:.82;text-transform:uppercase;letter-spacing:.045em}.pack-ticket__checkout strong{font-weight:600;margin-top:6px}.pack-ticket__checkout small{position:relative;color:var(--gold-2);font-size:8px;line-height:1.35;letter-spacing:.095em;text-transform:uppercase;font-weight:700;margin-top:16px}.pack-ticket__checkout small::before{content:"";position:absolute;left:50%;top:-8px;width:22px;height:1px;transform:translateX(-50%);background:rgba(225,198,121,.42)}
.checkout-selection{max-width:100%;margin-top:13px;color:rgba(255,255,255,.78);font-size:8px;line-height:1.45;overflow-wrap:anywhere}.pack-ticket__checkout:disabled{cursor:not-allowed;opacity:.88;padding-inline:16px}.pack-ticket__checkout:disabled .pack-ticket__checkout-title{display:grid;justify-items:center;gap:1px;width:100%;max-width:88px;margin-inline:auto;font-size:16px;line-height:.92;letter-spacing:.018em;transform:translateX(-3px)}.pack-ticket__checkout:disabled .checkout-prompt-line{display:block;white-space:normal}
.upgrade{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;color:#776642;font-size:13px;margin-top:32px}.upgrade svg{width:15px;height:15px;stroke:#a47d28;fill:none;stroke-width:1.7}
.meet{padding:70px 0}.meet-card{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;overflow:hidden;border-radius:20px;color:#fff;background-image:linear-gradient(90deg,rgba(2,31,24,.08) 0%,rgba(2,31,24,.18) 42%,rgba(2,31,24,.9) 72%,rgba(2,31,24,.96) 100%),url("assets/images/us-open-2026-meet-and-greet-racket-background.png");background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:var(--shadow)}
.meet-art{min-height:320px;position:relative}
.meet-copy{padding:52px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.meet-copy h2{font-size:48px;line-height:1;margin:9px 0}.meet-copy p{color:rgba(255,255,255,.78)}
.cta-outline{border-color:var(--gold);color:var(--gold-2);margin-top:12px}.cta-outline:hover{background:var(--gold);color:var(--green-950)}
.benefits{padding:12px 0 78px}.benefits h2{font-family:"Cormorant Garamond",serif;text-align:center;font-size:40px}.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.benefit{text-align:center;padding:20px 22px;border-right:1px solid #e4dccd}.benefit:last-child{border-right:0}.benefit svg{width:34px;height:34px;stroke:var(--gold);fill:none;stroke-width:1.7}.benefit h3{font-size:13px;text-transform:uppercase;letter-spacing:.05em}.benefit p{font-size:12px;color:var(--muted)}
.conditions{padding:55px 0;background:var(--cream)}.conditions-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:45px}.conditions h2{font-size:38px;margin:0 0 12px}.conditions h3{margin-top:0}.conditions p{font-size:14px;color:var(--muted)}
footer{padding-top:55px;background:var(--green-950);color:#fff}.footer-grid{display:grid;grid-template-columns:1.1fr .8fr 1.1fr;gap:50px}
footer p,footer a{color:rgba(255,255,255,.68)}.footer-links{display:flex;flex-direction:column;align-items:flex-start}.footer-links a{margin:4px 0}
.copyright{border-top:1px solid rgba(255,255,255,.1);text-align:center;padding:18px;margin-top:42px;color:rgba(255,255,255,.48);font-size:12px}
.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}.modal-bg{position:absolute;inset:0;background:rgba(0,0,0,.72)}.modal-box{position:relative;z-index:1;background:var(--paper);padding:38px;width:min(620px,100%);max-height:90vh;overflow:auto;border:1px solid rgba(199,162,78,.5);box-shadow:0 25px 70px rgba(0,0,0,.3)}.modal-box h2{font-family:"Cormorant Garamond",serif;font-size:38px;margin:0 0 6px}.modal-close{position:absolute;top:10px;right:12px;border:0;background:none;cursor:pointer}.checkout-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.field{display:grid;gap:5px;font-size:12px;font-weight:600}.field input,.field select{width:100%;min-height:44px;border:1px solid #d7c9ab;background:#fffdf8;padding:10px;color:var(--ink);font:inherit}.field-wide{grid-column:1/-1}.terms{display:flex;align-items:flex-start;gap:9px;font-size:12px}.form-error{grid-column:1/-1;color:#9a3029;font-size:13px;min-height:20px}.checkout-submit{grid-column:1/-1;min-height:50px;border:1px solid var(--gold);background:var(--green-900);color:#fff;text-transform:uppercase;letter-spacing:.08em;font-weight:700;cursor:pointer}.checkout-submit:disabled{opacity:.6;cursor:wait}
@media(max-width:1080px){
  .hero-grid{grid-template-columns:1fr;padding:65px 0 85px;min-height:auto}.packs-grid{grid-template-columns:1fr;gap:36px}.pack-ticket__surface{min-height:286px}
}
@media(max-width:780px){
  .container{width:min(100% - 28px,680px)}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:74px;left:0;right:0;background:rgba(3,43,33,.98);padding:18px;border-radius:12px;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}
  .hero h1{font-size:66px}.hero-benefits{width:100%}.hero-benefit{padding-inline:10px;min-height:96px}.hero-benefit svg{width:31px;height:31px}.hero-benefit strong,.hero-benefit small{font-size:9px}
  .pack-ticket__surface{--ticket-identity-width:74px;--ticket-mobile-stub-height:128px;grid-template-columns:var(--ticket-identity-width) minmax(0,1fr);grid-template-rows:auto minmax(var(--ticket-mobile-stub-height),auto);grid-template-areas:"identity content" "identity stub";min-height:auto}
  @supports ((mask:radial-gradient(circle,transparent 10px,#000 11px)) or (-webkit-mask:radial-gradient(circle,transparent 10px,#000 11px))){.pack-ticket__surface{--ticket-mask:radial-gradient(circle 11px at var(--ticket-identity-width) 0,transparent 10px,#000 11px),radial-gradient(circle 11px at var(--ticket-identity-width) 100%,transparent 10px,#000 11px);-webkit-mask-image:var(--ticket-mask);mask-image:var(--ticket-mask)}}
  .pack-ticket__identity{grid-area:identity}.pack-ticket__identity strong{font-size:60px}.pack-ticket__content{grid-area:content;padding:32px 24px 28px}.pack-header{display:block}.nights{display:inline-block;margin-top:13px}.hotels{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pack-ticket__stub{grid-area:stub;min-width:100%;min-height:var(--ticket-mobile-stub-height);box-shadow:inset 0 8px 18px rgba(0,0,0,.06)}.pack-ticket__stub::before{top:0;bottom:auto;left:18px;right:18px;width:auto;height:1px;background:repeating-linear-gradient(to right,rgba(171,147,91,.4) 0 3px,transparent 3px 8px)}.pack-ticket__stub::after{inset:11px 9px 9px}.pack-ticket__checkout{min-height:var(--ticket-mobile-stub-height);padding:20px 24px 18px}.pack-ticket__checkout:disabled{padding-inline:28px}.pack-ticket__checkout:disabled .pack-ticket__checkout-title{max-width:150px;font-size:17px;line-height:.92;letter-spacing:.02em;transform:none}
  .meet-card{grid-template-columns:1fr;background-position:32% center;background-image:linear-gradient(180deg,rgba(2,31,24,.06) 0%,rgba(2,31,24,.4) 46%,rgba(2,31,24,.96) 70%,rgba(2,31,24,.98) 100%),url("assets/images/us-open-2026-meet-and-greet-racket-background.png")}.meet-art{min-height:220px}.meet-copy{padding:34px 26px}.meet-copy h2{font-size:40px}
  .benefits-grid{grid-template-columns:1fr 1fr}.benefit:nth-child(2){border-right:0}.footer-grid{grid-template-columns:1fr}.conditions-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .brand-mark{width:43px;height:43px}.brand-copy strong{font-size:18px}.hero{background-position:64% center}.hero h1{font-size:55px}
  .packs{padding-top:70px}.pack-ticket__surface{--ticket-identity-width:62px;--ticket-mobile-stub-height:124px}@supports ((mask:radial-gradient(circle,transparent 10px,#000 11px)) or (-webkit-mask:radial-gradient(circle,transparent 10px,#000 11px))){.pack-ticket__surface{--ticket-mask:radial-gradient(circle 10px at var(--ticket-identity-width) 0,transparent 9px,#000 10px),radial-gradient(circle 10px at var(--ticket-identity-width) 100%,transparent 9px,#000 10px)}}.pack-ticket__content{padding:28px 18px 24px}.pack-header h3{font-size:28px}.pack-ticket__identity strong{font-size:50px}.hotels{grid-template-columns:1fr;gap:14px}
  .benefits-grid{grid-template-columns:1fr}.benefit{border-right:0;border-bottom:1px solid #e4dccd}
  .checkout-form{grid-template-columns:1fr}.field-wide,.form-error,.checkout-submit{grid-column:1}.modal-box{padding:32px 22px}
}

/* Canonical Product Store catalogue */
.store-products{padding:80px 0;background:#f5f1e8}.store-products__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}.store-product{padding:26px;background:#fff;border:1px solid #d8cfbd;border-radius:12px;display:flex;flex-direction:column;gap:14px}.store-product h3,.store-product p{margin:0}.store-product__list{text-decoration:line-through;color:#6a6a63}.store-product__final{font-size:1.5rem;color:#04382a}.store-product__discount{font-weight:700;color:#765b16}.store-product .cta{margin-top:auto}.store-products__status:empty{display:none}
