:root{--green:#193c34;--deep:#112e27;--cream:#f6f2e8;--paper:#eee8da;--ink:#23372f;--muted:#5d685e;--gold:#cfb97b;--line:#d5d5c4;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.65 var(--sans)}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:3px solid #a15b26;outline-offset:6px}button,a{-webkit-tap-highlight-color:transparent}.wrap{max-width:1280px;width:calc(100% - 104px);margin-inline:auto}.skip{position:absolute;top:-100px;left:1rem;z-index:10;background:white;padding:1rem}.skip:focus{top:1rem}.preview{background:var(--green);color:#f7efd9;text-align:center;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;padding:7px 20px}.preview span{margin:0 10px;color:var(--gold)}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:120px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:15px;text-decoration:none;font:25px/1.25 var(--serif)}.brand-mark{width:63px;height:63px;border:1px solid var(--green);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:33px;line-height:.95;outline:1px solid var(--green);outline-offset:-5px}.brand-mark>span{font:9px var(--sans);letter-spacing:2px;margin:4px 0 0 2px}.brand-sub{display:block;font:10px var(--sans);letter-spacing:2.5px;text-transform:uppercase;margin-top:7px}.header nav{display:flex;gap:32px;font-size:13px}.header nav a{text-decoration:none;padding:10px 0}.header nav a:hover,.header nav a[aria-current]{border-bottom:1px solid var(--green)}.hero{display:grid;grid-template-columns:1.14fr 1fr;gap:70px;align-items:center;padding-block:70px 80px}.eyebrow{font:11px/1.6 var(--sans);letter-spacing:2px;text-transform:uppercase;margin:0 0 24px;font-weight:600}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(49px,5.1vw,74px);line-height:1.04;letter-spacing:-2.7px;margin-bottom:27px}h1 em,h2 em{font-weight:400;color:#58705a}h2{font-size:clamp(34px,3.4vw,48px);line-height:1.15;letter-spacing:-1.2px;margin-bottom:28px}h3{font-size:27px;line-height:1.3;margin-bottom:13px}.lead{font-size:17px;line-height:1.85;max-width:510px;color:var(--muted)}.hero .lead{max-width:440px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}.button{display:inline-flex;align-items:center;gap:28px;background:var(--green);color:var(--cream);padding:15px 23px;text-decoration:none;font-size:12px;font-weight:600;border:1px solid var(--green);transition:background .2s}.button:hover{background:#2b5146}.button span{font-size:18px;line-height:1}.text-link{font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.text-link span{margin-left:12px}.text-link:hover{text-decoration:underline}.heritage-art{position:relative;min-height:565px;padding:44px 25px 32px;text-align:center;background:var(--green);color:var(--cream);box-shadow:12px 12px 0 var(--paper);overflow:hidden}.heritage-art:before{content:'';position:absolute;inset:17px;border:1px solid #c7b57a66;pointer-events:none}.art-corner{position:absolute;width:22px;height:22px;border:1px solid var(--gold);z-index:1}.tl{top:12px;left:12px}.tr{top:12px;right:12px}.bl{bottom:12px;left:12px}.br{bottom:12px;right:12px}.art-top{font-size:9px;letter-spacing:3px;text-transform:uppercase;margin:0 0 18px}.art-star{display:block;font-size:34px;color:var(--gold);line-height:1;margin:0 0 20px}.art-galway{font:24px var(--serif);letter-spacing:9px;margin:0 0 8px;padding-left:9px}.art-mechanics{font:clamp(27px,3.2vw,44px) var(--serif);letter-spacing:2px;margin:0}.art-institute{font:17px var(--serif);letter-spacing:8px;margin:6px 0 0;padding-left:8px}.art-rule{width:65%;height:1px;background:var(--gold);opacity:.6;margin:26px auto 22px}.art-since{font:italic 17px var(--serif);margin:0;color:#e0d4b4}.art-year{font:clamp(84px,9vw,128px)/1.05 var(--serif);letter-spacing:-5px;margin:3px 0 18px;color:var(--gold)}.art-bottom{font:14px var(--serif);letter-spacing:2px;margin:0 0 28px}.art-note{font-size:8px;letter-spacing:2px;text-transform:uppercase;color:#e0d4b4}.ribbon{background:var(--paper);border-block:1px solid var(--line);padding:20px 0}.ribbon>div{display:flex;justify-content:center;align-items:center;gap:65px;font:italic 20px var(--serif)}.ribbon span:nth-child(even){font-size:18px;color:#87927b}.section{padding-block:90px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:100px}.intro-text{padding-top:12px;color:var(--muted);max-width:530px}.intro-text p:first-child{font:25px/1.55 var(--serif);color:var(--ink)}.intro-text .text-link{margin-top:8px;color:var(--green)}.club-section{border-top:1px solid var(--line)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>.text-link{margin-bottom:8px}.club-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.club-feature>p:last-child{max-width:470px;font-size:15px;color:var(--muted)}.club-feature>.eyebrow{margin-bottom:12px}.billiards,.conversation{height:280px;margin-bottom:27px;position:relative;overflow:hidden}.billiards{background:#274d40;border:14px solid #674c34;box-shadow:inset 0 0 0 4px #b8a075}.billiards:before,.billiards:after{content:'';position:absolute;border-radius:50%;width:30px;height:30px;background:#11271f;top:-15px}.billiards:before{left:-15px}.billiards:after{right:-15px}.cue{position:absolute;top:35%;left:-5%;height:5px;background:#d1b17a;width:100%;transform:rotate(26deg)}.ball{position:absolute;width:37px;height:37px;border-radius:50%;box-shadow:3px 8px 10px #102b2960}.ball-one{background:#eddbaf;top:48%;left:40%;text-align:center;font:bold 17px/37px var(--serif);color:#252f24}.ball-two{background:#b45541;top:28%;left:69%}.ball-three{background:#f6f0dd;top:65%;left:59%}.conversation{background:#e8e0cd;display:flex;align-items:center;justify-content:center;gap:15px}.conversation>span{font:190px/1 var(--serif);color:#a89972;align-self:center;padding-top:35px}.conversation>p{font:italic 33px/1.3 var(--serif);margin:0}.history-band{background:var(--green);color:var(--cream)}.history-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:120px}.history-layout .eyebrow{color:var(--gold)}.history-layout h2 em{color:#d6c796}.history-layout>div>p:not(.eyebrow){max-width:520px;color:#d1d9cd;font-size:16px}.button-light{background:var(--cream);color:var(--green);margin-top:15px}.button-light:hover{background:#e8dfc8}.home-timeline{list-style:none;padding:0;margin:0;align-self:center;border-left:1px solid #cfb97b66}.home-timeline li{padding:0 0 25px 33px;position:relative}.home-timeline li:last-child{padding-bottom:0}.home-timeline li:before{content:'';width:7px;height:7px;background:var(--gold);border-radius:50%;position:absolute;left:-4px;top:10px}.home-timeline span{font:28px var(--serif);color:var(--gold)}.home-timeline p{font-size:13px;color:#d1d9cd;margin:6px 0 0}.membership-callout{text-align:center;max-width:710px;padding-block:95px}.membership-callout h2{font-size:58px;margin-bottom:23px}.membership-callout>p:not(.eyebrow){color:var(--muted);max-width:470px;margin:0 auto 28px}.visit-strip{background:var(--paper);border-block:1px solid var(--line);padding-block:55px}.visit-strip>.wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:80px}.visit-strip h2{font-size:36px;margin:0}.visit-strip .eyebrow{margin-bottom:16px}.visit-strip p:not(.eyebrow){font-size:15px}.footer{background:var(--deep);color:#f0eddf;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-name{font:39px var(--serif);text-decoration:none}.footer p{font-size:13px;color:#c7d1c5;margin-top:12px}.footer .eyebrow{margin-top:0;color:var(--gold);font-size:10px}.footer-grid>div:last-child>a{display:block;width:fit-content;font-size:13px;margin:7px 0;text-decoration:none}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #ffffff26;margin-top:37px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#aebaad}.page-heading{padding-block:55px 48px;border-bottom:1px solid var(--line)}.breadcrumb{display:inline-block;font-size:12px;margin-bottom:37px;color:var(--muted)}.page-heading h1{font-size:clamp(48px,6vw,78px);margin-bottom:20px}.page-heading .eyebrow{margin-bottom:18px}.page-heading .lead{max-width:720px;font-size:20px;margin-bottom:0}.page-grid{display:grid;grid-template-columns:minmax(0,750px) 240px;justify-content:space-between;gap:80px;padding-block:65px 100px}.prose{min-width:0}.prose h2{font-size:33px;margin:43px 0 20px}.prose h2:first-child{margin-top:0}.prose p{color:#4e5e53;line-height:1.9}.prose strong{color:var(--green)}.prose a{color:var(--green)}.prose table{width:100%;border-collapse:collapse;margin-block:30px;font-size:15px}.prose th,.prose td{padding:17px 10px;border-bottom:1px solid var(--line)}.prose th{background:var(--paper);font-size:12px}.prose th:first-child,.prose td:first-child{text-align:left}.prose th:last-child,.prose td:last-child{text-align:right;white-space:nowrap}.prose hr{border:0;border-top:1px solid var(--line);margin-top:45px}.prose em{font-size:13px}.page-aside{align-self:start;background:var(--paper);padding:30px;font-size:14px}.aside-year{font:64px var(--serif);color:var(--green)}.page-aside .eyebrow{margin:10px 0 18px}.page-aside hr{border:0;border-top:1px solid #c9cdbd;margin:30px 0}.page-aside>p:last-child{font:italic 21px/1.5 var(--serif)}
@media(min-width:1500px){.hero{padding-block:85px 95px}.heritage-art{min-height:595px}.art-top{margin-bottom:25px}.art-rule{margin-block:30px}.art-year{margin-bottom:22px}}
@media(max-width:1000px){.wrap{width:calc(100% - 60px)}.header nav{gap:19px}.brand{font-size:21px}.brand-mark{width:53px;height:53px}.hero{gap:35px;padding-block:50px 60px}h1{font-size:55px}.heritage-art{min-height:520px}.art-mechanics{font-size:30px}.art-year{font-size:105px}.ribbon>div{gap:30px;font-size:17px}.intro{gap:50px}.history-layout{gap:60px}.page-grid{gap:40px;grid-template-columns:minmax(0,1fr) 210px}.page-aside{padding:24px}.actions{gap:20px}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.preview{font-size:9px;letter-spacing:1px}.header{min-height:135px;padding-block:22px 15px;flex-direction:column;align-items:flex-start;gap:22px}.brand{font-size:23px}.brand-mark{width:52px;height:52px}.brand-sub{font-size:9px}.header nav{width:100%;justify-content:space-between;gap:10px;font-size:12px}.header nav a{padding-block:0 5px}.hero{grid-template-columns:1fr;gap:40px;padding-block:40px 50px}.hero .eyebrow{font-size:9px;letter-spacing:1.4px}h1{font-size:57px;letter-spacing:-2px}.hero .lead{font-size:16px;max-width:100%}.heritage-art{min-height:520px;max-width:480px;width:calc(100% - 10px);margin:0 auto}.art-galway{font-size:26px}.art-mechanics{font-size:35px}.art-year{font-size:115px}.ribbon{padding-block:17px}.ribbon>div{gap:14px;justify-content:space-between;font-size:13px}.ribbon span:nth-child(even){font-size:12px}.section{padding-block:55px}.intro,.club-grid,.history-layout,.visit-strip>.wrap{grid-template-columns:1fr;gap:30px}h2{font-size:37px}.intro h2{margin-bottom:0}.intro-text{padding:0}.intro-text p:first-child{font-size:23px}.section-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:26px}.club-grid{gap:25px}.billiards,.conversation{height:240px}.conversation>p{font-size:29px}.home-timeline{margin-top:5px;margin-left:4px}.history-layout h2{font-size:36px}.membership-callout h2{font-size:49px}.visit-strip{padding-block:45px}.visit-strip h2{font-size:33px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}.footer-name{font-size:36px}.footer-bottom{flex-direction:column;gap:8px}.page-heading{padding-block:35px}.page-heading h1{font-size:51px}.page-heading .lead{font-size:18px}.breadcrumb{margin-bottom:28px}.page-grid{grid-template-columns:1fr;padding-block:40px 60px}.page-aside{max-width:100%}.prose h2{font-size:30px}.prose{font-size:16px}.prose table{font-size:13px}.prose th,.prose td{padding:14px 6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.preview,.header nav,.page-aside,.footer{display:none}.wrap{width:100%}.page-grid{display:block}.heritage-art{box-shadow:none}body{font-size:12pt}}

/* Membership registration */
.registration-form{margin-top:30px}.registration-form fieldset{border:0;border-top:1px solid var(--line);padding:27px 0 12px;margin:0 0 22px;min-width:0}.registration-form legend{font:27px var(--serif);padding:0 14px 0 0;color:var(--green)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px 24px}.form-wide{grid-column:1/-1}.registration-form label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.registration-form label span{font-weight:400;color:var(--muted)}.registration-form input:not([type=checkbox]),.registration-form textarea{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink);background:#fffdf8;border:1px solid #8a9688;border-radius:2px;padding:12px 14px;line-height:1.5;margin:0 0 8px;max-width:100%}.registration-form textarea{resize:vertical}.registration-form :is(input,textarea,button):focus-visible{outline:3px solid #a15b26;outline-offset:3px}.registration-form .form-hint{font-size:13px;line-height:1.6;margin:5px 0 22px;color:var(--muted)}.registration-form .check-label{display:flex;align-items:flex-start;gap:12px;font-weight:400;margin:5px 0 20px;line-height:1.6}.check-label input{width:19px;height:19px;flex:0 0 19px;margin:3px 0 0;accent-color:var(--green)}.registration-form .check-label>span{color:var(--ink)}.email-explanation{background:var(--paper);padding:23px 25px;margin:5px 0 25px}.prose .email-explanation h2{font-size:25px;margin:0 0 12px}.prose .email-explanation p{font-size:14px;line-height:1.7;margin:0}.registration-form button{font-family:var(--sans);cursor:pointer}.registration-form button:disabled{opacity:.55;cursor:not-allowed}.registration-form .form-status{font-size:14px;line-height:1.7;margin:18px 0 25px}.registration-form [hidden]{display:none!important}#email-fallback{border-top:1px solid var(--line);padding-top:28px}#email-fallback h2{font-size:27px;margin:0 0 14px}#email-fallback p{font-size:14px;overflow-wrap:anywhere}#email-copy{font-size:13px;margin-bottom:16px}.header nav{flex-wrap:wrap}
@media(max-width:720px){.form-grid{grid-template-columns:1fr;gap:17px}.form-wide{grid-column:auto}.email-explanation{padding:20px}.header nav{justify-content:flex-start;gap:12px 20px}}
