/* Scoped public campaign styles. Versioned independently of existing site assets. */
.ag-opening-hero,.ag-opening-recruit,.ag-recruit-page-hero,.ag-opening-dock{--opening-gold:#dcc69e;--opening-red:#942f40;--opening-paper:#f4eee4;box-sizing:border-box}
.ag-opening-hero *,.ag-opening-recruit *,.ag-recruit-page-hero *,.ag-opening-dock *{box-sizing:border-box}
.ag-opening-eyebrow{margin:0;font:600 11px/1.7 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;letter-spacing:.2em}
.ag-opening-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.75fr);align-items:center;gap:clamp(36px,6vw,110px);min-height:740px;padding:64px clamp(28px,6vw,100px) 70px;color:#fff9ef;background:#211b17}
.ag-opening-hero::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(23,17,13,.8),rgba(23,17,13,.45)),linear-gradient(0deg,rgba(23,17,13,.7),transparent 65%),url('/images/hospitality/amazake-opening-room-v1.webp') center/cover;opacity:.95}
.ag-opening-hero .ag-opening-eyebrow{color:var(--opening-gold)}
.ag-opening-hero__main{min-width:0}
.ag-opening-date{margin:22px 0 0;font-weight:400;line-height:1}
.ag-opening-date time{display:block;white-space:nowrap;font-family:Georgia,"Times New Roman",serif;font-size:clamp(96px,12.5vw,192px);font-weight:400;letter-spacing:-.065em;font-variant-numeric:lining-nums}
.ag-opening-date time>span{display:inline-block;margin:0 .06em 0 .14em;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:.27em;letter-spacing:0}
.ag-opening-date__english{display:block;margin:18px 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,4vw,60px);letter-spacing:.1em}
.ag-opening-date__japanese{display:block;margin:16px 0 0;color:var(--opening-gold);font-size:16px;letter-spacing:.25em}
.ag-opening-hero__tagline{margin:34px 0 0;font-size:clamp(22px,2.3vw,32px);line-height:1.65;letter-spacing:.06em}
.ag-opening-hero__tagline br{display:none}
.ag-opening-hero__lead{max-width:650px;margin:15px 0 0;color:#e0d7ca;font-size:12px;line-height:2}
.ag-opening-customer-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:24px}
.ag-opening-customer-links a{min-height:44px;display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid #a49275;font-size:12px}
.ag-opening-hero__recruit{position:relative;min-width:0;padding:36px 30px;border:1px solid rgba(220,198,158,.65);background:linear-gradient(145deg,rgba(53,40,29,.94),rgba(30,24,19,.95));box-shadow:0 20px 70px #100c0840}
.ag-opening-hero__recruit::before{content:"";position:absolute;inset:7px;border:1px solid rgba(220,198,158,.14);pointer-events:none}
.ag-opening-hero__recruit h2{margin:22px 0 0;font-size:clamp(23px,2.25vw,36px);font-weight:400;line-height:1.6;letter-spacing:.025em}
.ag-opening-hero__recruit h2>span{display:block;white-space:nowrap}
.ag-opening-hero__invitation{margin:20px 0;font-size:17px;line-height:1.9}
.ag-opening-hero__locations{margin:0;font-size:13px;letter-spacing:.1em;color:var(--opening-gold)}
.ag-opening-hero__conditions{margin:12px 0 22px;font-size:11px;color:#e0d7ca;line-height:1.8}
a.ag-opening-line{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;padding:16px 22px;border:1px solid #cdecd150;background:#146943;color:#fff;font:600 13px/1.6 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;letter-spacing:.015em;text-decoration:none;box-shadow:0 8px 22px #091b1420;transition:background .2s,translate .2s}
a.ag-opening-line:hover{background:#0d5736;translate:0 -2px}
a.ag-opening-line:focus-visible,.ag-opening-detail-link:focus-visible{outline:3px solid #deb969;outline-offset:5px}
.ag-opening-hero__recruit .ag-opening-line{width:100%}
.ag-opening-detail-link{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;margin-top:13px;border-bottom:1px solid currentColor;font:12px/1.7 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;text-decoration:none}
.ag-opening-small{margin:15px 0 0;font:10px/1.9 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;letter-spacing:.015em}
.ag-opening-hero__recruit .ag-opening-small{color:#cabcaa}
.ag-opening-recruit{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,7vw,112px);padding:100px clamp(28px,7vw,110px);color:#33251f;background:radial-gradient(ellipse at 8% 100%,#dbc2b559,transparent 56%),#f0e7dc;border-bottom:1px solid #a18a6a40}
.ag-opening-recruit .ag-opening-eyebrow{color:#8d3543}
.ag-opening-recruit__date{display:inline-block;margin:24px 0 0;padding:9px 14px;border:1px solid #9a7f654d;font:11px/1.5 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;letter-spacing:.12em}
.ag-opening-recruit h2{margin:20px 0 0;font-size:clamp(30px,3.3vw,52px);font-weight:400;line-height:1.55;letter-spacing:.02em}
.ag-opening-recruit h2 span{color:#8b2e40}
.ag-opening-recruit__lead{margin:22px 0 0;font-size:20px}
.ag-opening-recruit__intro>p:last-child{margin:20px 0 0;font-size:13px;line-height:2;color:#66574e}
.ag-opening-recruit__body{align-self:center;min-width:0}
.ag-opening-benefits>div{padding:18px 0 20px;border-top:1px solid #9a826347}
.ag-opening-benefits>div>span{font:9px/1.6 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;letter-spacing:.15em;color:#8a6854}
.ag-opening-benefits h3{margin:8px 0;font-size:22px;font-weight:400;line-height:1.6}
.ag-opening-benefits h3 strong{font:400 38px/1 Georgia,serif;letter-spacing:-.035em}
.ag-opening-benefits p{margin:0;color:#65544b;font:11px/1.9 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}
.ag-opening-recruit__actions{display:flex;align-items:flex-start;flex-direction:column;gap:0;margin-top:15px}
.ag-opening-recruit__actions .ag-opening-line{width:100%}
.ag-opening-recruit .ag-opening-small{color:#705d51}
.ag-recruit-page-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:55px;padding:110px clamp(24px,6vw,95px) 70px;min-height:720px;background:#eee3d6;color:#30251f}
.ag-opening-breadcrumb{position:absolute;top:25px;left:clamp(24px,6vw,95px);display:flex;align-items:center;gap:12px;min-height:44px;font:11px/1.7 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:#6c5a4e}
.ag-opening-breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
.ag-recruit-page-hero .ag-opening-eyebrow{color:#823142}
.ag-recruit-page-hero__english{margin:22px 0 0!important;color:#7c2f40;font:400 clamp(72px,8vw,122px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.045em}
.ag-recruit-page-hero h1{margin:24px 0 0!important;font-size:clamp(22px,2.3vw,34px);font-weight:400;line-height:1.6}
.ag-recruit-page-hero__lead{margin:18px 0 0!important;max-width:570px;font-size:13px;line-height:2.05}
.ag-recruit-page-hero__tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.ag-recruit-page-hero__tags>span{padding:7px 11px;border:1px solid #91715a5c;font:10px/1.8 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}
.ag-recruit-page-hero .ag-opening-small{margin-top:14px!important;color:#6b5549}
.ag-recruit-page-hero__visual{position:relative;min-height:520px;background:linear-gradient(0deg,#150f0aca,transparent 55%),url('/images/hospitality/amazake-camellia-relaxation-v1.webp') 35% center/cover;align-self:stretch}
.ag-recruit-page-hero__visual>span{position:absolute;bottom:38px;left:30px;right:25px;color:#f6ecdd;font-size:clamp(22px,2.5vw,35px);line-height:1.7;letter-spacing:.05em}
.ag-opening-dock{position:fixed;z-index:45;right:22px;bottom:20px;display:flex;align-items:center;gap:24px;padding:12px 13px 12px 21px;border:1px solid #b09976;background:#f7f0e6;color:#442e25;box-shadow:0 6px 38px #17100a38}
.ag-opening-dock>div{display:flex;flex-direction:column;gap:4px}
.ag-opening-dock small{color:#8a3646;font:9px/1.4 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;letter-spacing:.1em}
.ag-opening-dock strong{font-size:13px;font-weight:500}
.ag-opening-dock .ag-opening-line{min-height:46px;padding:11px 16px;font-size:12px}
main:has(.ag-opening-dock)+footer{padding-bottom:120px}
@media(max-width:1050px){.ag-opening-hero{gap:30px;padding-inline:32px;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr)}.ag-opening-date time{font-size:clamp(90px,12vw,140px)}.ag-opening-hero__recruit{padding:28px 23px}.ag-opening-recruit{gap:40px;padding-inline:36px}.ag-recruit-page-hero{gap:30px}}
@media(max-width:760px){.ag-opening-hero{display:flex;flex-direction:column;align-items:stretch;gap:32px;min-height:0;padding:43px 22px 36px}.ag-opening-date{margin-top:19px}.ag-opening-date time{font-size:clamp(106px,29vw,176px)}.ag-opening-date__english{font-size:clamp(29px,8.5vw,50px);margin-top:14px;letter-spacing:.12em}.ag-opening-date__japanese{font-size:13px;margin-top:13px}.ag-opening-hero__tagline{font-size:23px;margin-top:26px}.ag-opening-hero__lead{font-size:11px;margin-top:11px}.ag-opening-hero__lead br{display:none}.ag-opening-customer-links{margin-top:14px;gap:8px 18px}.ag-opening-customer-links a{font-size:11px;gap:10px}.ag-opening-hero__recruit{padding:24px}.ag-opening-hero__recruit h2{font-size:clamp(26px,6.7vw,39px);line-height:1.5;margin-top:15px}.ag-opening-hero__invitation{margin:13px 0;font-size:15px}.ag-opening-hero__invitation br{display:none}.ag-opening-hero__conditions{margin:10px 0 16px}.ag-opening-hero__recruit .ag-opening-small{margin-top:8px}.ag-opening-recruit{grid-template-columns:1fr;gap:35px;padding:65px 24px}.ag-opening-recruit h2{font-size:clamp(31px,8.2vw,46px)}.ag-opening-recruit__lead{font-size:19px}.ag-opening-recruit__intro>p:last-child{font-size:12px}.ag-opening-recruit__actions .ag-opening-line{font-size:12px}.ag-recruit-page-hero{grid-template-columns:1fr;gap:32px;padding:92px 24px 40px}.ag-recruit-page-hero__english{font-size:clamp(77px,20vw,125px);margin-top:20px!important}.ag-recruit-page-hero h1{font-size:clamp(21px,5.8vw,30px);margin-top:24px!important}.ag-recruit-page-hero__lead{font-size:12px}.ag-recruit-page-hero__tags{margin:20px 0}.ag-recruit-page-hero .ag-opening-line{width:100%}.ag-recruit-page-hero__visual{min-height:360px;background-position:35% 55%}.ag-recruit-page-hero__visual>span{font-size:27px}.ag-opening-dock{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));gap:10px;justify-content:space-between;padding:10px 11px 10px 13px}.ag-opening-dock strong{font-size:11px;white-space:nowrap}.ag-opening-dock small{font-size:8px}.ag-opening-dock .ag-opening-line{min-height:44px;font-size:11px;gap:10px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){a.ag-opening-line{transition:none}a.ag-opening-line:hover{translate:none}}
/* Guest-first homepage: keep opening identity, give booking the primary action. */
.ag-opening-hero{min-height:680px;grid-template-columns:minmax(0,1.05fr) minmax(300px,.85fr);gap:clamp(32px,5vw,80px)}
.ag-guest-opening-date{display:flex;gap:16px;align-items:baseline;margin:24px 0;color:#dcc69e;letter-spacing:.13em;font-size:11px}.ag-guest-opening-date time{font-size:28px;letter-spacing:.02em}.ag-guest-title{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(42px,5vw,78px);font-weight:400;line-height:1.5;letter-spacing:.05em;margin:0 0 24px}
.ag-guest-visual{position:relative;min-height:490px;align-self:stretch;overflow:hidden;border:1px solid #dcc69e66}.ag-guest-visual img{object-fit:cover;object-position:center 28%}.ag-guest-visual>div{position:absolute;inset:50% 0 0;padding:56px 28px 24px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(transparent,#211b17d9);color:#fff9ef}.ag-guest-visual small{font-size:10px;letter-spacing:.18em}.ag-guest-visual p{font-family:serif;font-size:26px;line-height:1.65;margin:10px 0}.ag-guest-visual span{font-size:10px;color:#e7dbcc}
.ag-opening-customer-links a:first-child{background:#f4eee4;color:#30251f;border-color:#f4eee4}
.ag-guest-dock{position:fixed;z-index:80;bottom:18px;left:50%;transform:translateX(-50%);width:min(620px,calc(100% - 32px));box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px 22px;background:#faf6edeF;color:#18352d;border:1px solid #bfb99d;box-shadow:0 8px 30px #0002;backdrop-filter:blur(12px);font-size:12px}.ag-guest-dock a{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:46px;background:#18352d;color:#fffdf6;padding:0 20px;text-decoration:none}.ag-guest-dock a:focus-visible{outline:3px solid #942f40;outline-offset:3px}
@media(max-width:760px){.ag-opening-hero{grid-template-columns:1fr;padding:40px 24px;min-height:0;gap:30px}.ag-guest-title{font-size:44px}.ag-guest-opening-date{margin:18px 0}.ag-guest-visual{min-height:320px}.ag-guest-visual img{object-position:center 25%}.ag-guest-visual>div{padding:24px}.ag-guest-dock{bottom:10px;gap:8px;padding:8px}.ag-guest-dock>span{font-size:10px;max-width:100px;line-height:1.7;padding-left:6px}.ag-guest-dock a{flex:1;justify-content:center;padding-inline:12px;font-size:12px}}
