:root{--ink:#234b3e;--paper:#f7f3e8;--orange:#d96637;--muted:#7b8174;--line:#dedfce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 -apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #dc9e4d;outline-offset:5px}header{height:92px;display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:auto;padding:0 40px;gap:24px}.brand{display:flex;align-items:center;gap:12px;line-height:1.15}.brand b{font-size:28px;letter-spacing:2px;font-family:serif}.brand small{display:block;font-size:9px;letter-spacing:4px;margin-top:6px}.brand .seal{display:grid;place-items:center;background:var(--ink);color:#f8e9b8;border-radius:50% 45% 50% 40%;width:43px;height:43px;font-size:25px}nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 29px;border-radius:7px;background:var(--orange);color:white;border:0;font-weight:700;box-shadow:0 4px 0 #a84b2b;transition:transform .2s,filter .2s}.btn:hover{transform:translateY(-2px);filter:brightness(1.07)}.btn.green{background:var(--ink);box-shadow:0 4px 0 #16362c}.btn.light{background:#fff9e9;color:var(--ink);box-shadow:none;border:1px solid #cbcdb9}.hero{position:relative;min-height:650px;height:calc(100vh - 145px);max-height:830px;background:url('stone-island.jpg') center 60%/cover;isolation:isolate}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,246,220,.95),rgba(248,246,220,.60) 33%,transparent 65%);z-index:-1}.hero:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:25px;background:var(--paper);clip-path:polygon(0 70%,3% 35%,7% 65%,12% 25%,17% 55%,21% 30%,27% 65%,33% 25%,39% 50%,45% 20%,51% 65%,57% 35%,64% 60%,70% 25%,76% 65%,83% 30%,90% 65%,96% 25%,100% 45%,100% 100%,0 100%)}.hero-copy{max-width:1280px;margin:auto;padding:90px 40px}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:700;display:block;margin-bottom:22px}.hero h1{font-size:clamp(48px,5.5vw,78px);font-family:serif;line-height:1.17;letter-spacing:3px;margin:20px 0 25px}.hero h1 em{font-style:normal;color:#cc5d32}.hero p{color:#526754;margin:0 0 28px;line-height:2}.hero .actions{display:flex;gap:16px}.hero-note{font-size:11px;margin-top:22px;letter-spacing:2px}.island-label{position:absolute;right:7%;bottom:65px;background:#f9f4dfed;padding:13px 23px;transform:rotate(-4deg);font-family:serif;box-shadow:0 7px 20px #193c3626}.ticker{display:flex;justify-content:space-between;gap:20px;max-width:1200px;margin:auto;padding:28px 0;border-bottom:1px solid var(--line);font-size:12px}.ticker b{color:var(--orange);margin-right:20px}.section{max-width:1200px;margin:auto;padding:84px 0}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}.section h2{font:700 38px/1.3 serif;margin:8px 0}.section-title p{color:var(--muted);font-size:13px}.eyebrow.orange{color:var(--orange);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.pet-card{position:relative;overflow:hidden;border:1px solid #dcdecd;border-radius:12px;background:#e8ecdd;padding:28px;min-height:350px}.pet-card:nth-child(2){background:#eee4ce}.pet-card:nth-child(3){background:#e3e9e5}.pet-card .no{font:italic 20px serif;opacity:.5}.pet-card img{display:block;height:215px;width:100%;object-fit:contain;transition:transform .4s}.pet-card:hover img{transform:translateY(-8px) rotate(3deg)}.pet-card h3{margin:0;font:700 25px serif}.pet-card p{font-size:12px;color:#687568;margin:7px 0}.tag{float:right;font-size:10px;border:1px solid #89967d;border-radius:20px;padding:2px 11px}.journey{background:#234b3e;color:#faf4df;position:relative;overflow:hidden}.journey .section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.journey-photo{background:url('stone-island.jpg') 78% center/cover;height:400px;border-radius:48% 48% 12px 12px;border:8px solid #d3c8a5;transform:rotate(-3deg)}.journey h2{font-size:42px}.journey p{color:#c0cec0;font-size:14px}.steps{display:flex;gap:30px;margin-top:30px}.steps b{color:#e9b773;font:22px serif}.steps span{display:block;font-size:12px;margin-top:9px}.guide{display:grid;grid-template-columns:1fr 1fr;gap:50px}.guide details{border-top:1px solid var(--line);padding:18px 0}.guide details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-weight:600;display:flex;justify-content:space-between}summary:after{content:'+';font-size:20px}details[open] summary:after{content:'−'}details p{font-size:13px;color:#737a6d}.supply{background:#ebe6d6;padding:32px;border-radius:12px;position:relative}.supply img{width:140px;height:140px;object-fit:contain;float:right}.supply h3{font:700 27px serif;margin:12px 0}.supply p{font-size:13px}.footer{padding:36px 24px;background:#ecebdf;text-align:center;font-size:11px;color:#7b8175;line-height:2}.footer strong{color:var(--ink);font-size:13px}.footer a{text-decoration:underline;text-underline-offset:3px}.portal{min-height:100vh;background:linear-gradient(90deg,#173c3533,#173c3510),url('stone-island.jpg') center/cover fixed}.portal header{background:#f8f4e8ed;max-width:none;padding-left:6%;padding-right:6%}.portal-main{max-width:1160px;margin:auto;min-height:690px;display:grid;grid-template-columns:1fr 440px;gap:80px;align-items:center;padding:65px 30px}.portal-intro{color:#fff9e9;text-shadow:0 3px 18px #18362f}.portal-intro h1{font:700 56px/1.3 serif;margin:15px 0}.portal-intro p{font-size:16px}.panel{background:#fffbedf5;padding:36px;border:1px solid #fff7d9;border-radius:14px;box-shadow:0 24px 80px #17372f44}.panel h1,.panel h2{font:700 30px serif;margin:8px 0 12px}.panel .sub{color:var(--muted);font-size:12px;margin-bottom:24px}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:24px}.tabs button{flex:1;background:none;border:0;padding:12px;color:#87917e}.tabs button.active{color:var(--ink);border-bottom:3px solid var(--orange);font-weight:700}.field{display:block;font-size:12px;font-weight:600;margin:16px 0}.field input{display:block;width:100%;margin-top:7px;padding:13px 14px;border:1px solid #d7dac9;border-radius:6px;background:#fffef8;outline:none;color:var(--ink)}.field input:focus{border-color:#658770;box-shadow:0 0 0 3px #65877020}.wide{width:100%}.agreement{display:flex;gap:9px;align-items:start;font-size:11px;color:#7d8171;margin:22px 0}.agreement input{margin-top:5px;accent-color:var(--ink)}.agreement a{text-decoration:underline}.status{font-size:12px;min-height:22px;color:#b94f2d;margin-top:15px}.portal .footer{background:#f7f3e8ed}.panel[hidden],form[hidden]{display:none}.pay-main{max-width:960px;margin:55px auto;padding:0 24px}.pay-head{text-align:center;margin-bottom:28px}.pay-head h1{font:700 38px serif}.pay-grid{display:grid;grid-template-columns:1fr 320px;gap:28px}.order-row{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.order-row span{color:var(--muted)}.amount{font:700 52px serif;color:var(--orange);margin:18px 0}.payment{border:1px solid #5e8769;background:#edf1e6;border-radius:7px;padding:15px;font-size:14px}.payment b{background:#238fcd;color:white;padding:4px 7px;border-radius:5px;margin-right:9px}.pay-note{font-size:12px;color:#7b8174;margin:22px 0}.text-btn{border:0;background:none;color:var(--ink);text-decoration:underline;font-size:12px}.modal{max-width:700px;width:90%;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:30px}.modal::backdrop{background:#173c3588}.modal .content{max-height:65vh;overflow:auto;font-size:13px}.modal button{float:right}@media(max-width:900px){header{padding:0 22px;height:78px}nav{gap:18px}nav a:not(.btn){display:none}.brand b{font-size:24px}.hero{min-height:620px;height:75vh;background-position:62% center}.hero-copy{padding:65px 26px}.hero:before{background:linear-gradient(90deg,#f8f6dcf0,#f8f6dc80 60%,transparent)}.hero h1{font-size:52px}.island-label{display:none}.section{padding:55px 24px}.ticker{margin:0 24px;font-size:11px}.ticker span:last-child{display:none}.cards{gap:12px}.pet-card{padding:18px;min-height:300px}.pet-card img{height:175px}.journey .section{gap:35px}.guide{gap:25px}.portal-main{grid-template-columns:1fr 400px;gap:25px}.portal-intro h1{font-size:42px}.pay-grid{grid-template-columns:1fr 290px}}@media(max-width:600px){.hero{min-height:610px;background-position:60% center}.hero h1{font-size:47px}.hero p{font-size:13px}.hero-copy{padding-top:55px}.hero .btn{padding:12px 22px}.section-title{display:block}.section h2{font-size:31px}.cards{grid-template-columns:1fr}.pet-card{min-height:230px;padding:23px}.pet-card img{float:right;width:58%;height:200px}.pet-card h3{margin-top:65px;font-size:24px}.pet-card .tag{float:none;position:absolute;bottom:20px;left:23px}.journey .section,.guide{grid-template-columns:1fr}.journey-photo{height:290px}.journey h2{font-size:34px}.portal-main{display:block;padding:35px 20px;min-height:0}.portal-intro{margin-bottom:26px}.portal-intro h1{font-size:32px}.portal-intro p{display:none}.panel{padding:26px}.pay-grid{grid-template-columns:1fr}.pay-main{margin:35px auto}.brand small{letter-spacing:2px}header .btn{font-size:12px;min-height:40px;padding:8px 18px}}
/* A field collection using the original game illustrations. */
.companion-note{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:30px 8px 0;margin-top:12px}.little-friends{display:flex;align-items:center;gap:12px;flex-shrink:0}.little-friends img{width:66px;height:84px;object-fit:contain}.little-friends img+img{width:58px;height:58px;background:#e6e9da;border-radius:50%;padding:5px}.companion-note b{font:700 18px serif}.companion-note p{font-size:12px;color:var(--muted);margin:6px 0 22px}.companion-note>a{margin-left:auto;white-space:nowrap}.relic-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:24px}.relic-card{border:1px solid #d7dacb;border-radius:12px;overflow:hidden;position:relative}.relic-index{font-size:10px;letter-spacing:3px;color:#89917d}.totem-card{background:#e5ebdf;padding:28px 32px}.totem-pair{display:flex;align-items:center;justify-content:center;height:320px;gap:28px;padding:20px 5px}.totem-pair img:first-child{height:275px;width:37%;object-fit:contain;transform:rotate(-7deg)}.totem-pair img:last-child{width:48%;max-height:235px;object-fit:contain;transform:rotate(8deg)}.relic-caption{border-top:1px solid #c9d2bf;padding-top:23px}.relic-caption .eyebrow{font-size:10px;margin-bottom:10px;color:#718369;letter-spacing:2px}.relic-card h3{font:700 26px/1.5 serif;margin:12px 0}.relic-card p{font-size:12px;line-height:1.9;color:#77816e;margin:0}.relic-stack{display:grid;grid-template-rows:1fr 1fr;gap:24px}.weapon-card{background:#e6e5eb;display:flex;align-items:center;padding:30px}.weapon-card>div{position:relative;z-index:1;flex:1}.weapon-card>img{width:47%;height:210px;object-fit:contain}.fossil-card{background:#eee5d3;padding:28px;display:flex;align-items:center;justify-content:center;gap:40px}.fossil-card>img{height:168px;width:125px;object-fit:contain;transform:rotate(-9deg);filter:drop-shadow(4px 8px 6px #5b452626)}.welcome-camp{background:#ece7d7;border-top:1px solid #e1ddcd;border-bottom:1px solid #e1ddcd}.camp-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:55px;padding-bottom:55px}.camp-copy{padding-left:45px}.camp-copy h2{font-size:44px;margin:20px 0}.camp-copy>p{font-size:14px;color:#77816e;line-height:2;margin-bottom:26px}.camp-art{position:relative;width:100%;max-width:480px;margin:auto}.camp-frame{width:100%;display:block}.camp-sign{position:absolute;top:53%;left:16%;width:70%;height:39%;text-align:center;color:#ffedbb;display:flex;align-items:center;flex-direction:column}.camp-sign b{font:700 clamp(17px,2vw,26px) serif;line-height:1.3}.camp-sign span{font:700 clamp(19px,2.3vw,30px)/1.6 serif;letter-spacing:3px;margin-top:12%}.camp-sign small{font-size:9px;letter-spacing:2px;margin-top:14px}.camp-keepsake{display:flex;align-items:center;gap:15px;margin-top:30px}.camp-keepsake img{width:68px;height:78px;object-fit:contain}.camp-keepsake span{font-size:11px;color:#81816c;line-height:1.9}.supply{min-height:250px}.supply>img{position:absolute;right:15px;bottom:24px;width:140px;opacity:1}.supply h3,.supply p,.supply a,.supply .eyebrow{position:relative;z-index:1}.supply p{max-width:65%}@media(max-width:900px){nav{gap:19px}.relic-grid{gap:16px}.totem-card{padding:22px}.totem-pair{gap:10px;height:290px}.totem-pair img:first-child{height:235px}.weapon-card{padding:20px}.weapon-card>img{height:165px;width:43%}.relic-card h3{font-size:22px}.fossil-card{gap:20px;padding:20px}.fossil-card>img{width:95px;height:145px}.camp-layout{gap:25px}.camp-copy{padding-left:0}.camp-copy h2{font-size:35px}.camp-sign small{font-size:7px;letter-spacing:1px}}@media(max-width:600px){.companion-note{gap:13px;flex-wrap:wrap;padding:22px 0}.little-friends{gap:3px}.little-friends img{width:45px;height:65px}.little-friends img+img{width:42px;height:42px}.companion-note>div:nth-child(2){flex:1}.companion-note b{font-size:15px}.companion-note p{font-size:11px;margin:6px 0}.companion-note>a{margin-left:103px}.relic-grid{grid-template-columns:1fr}.totem-pair{height:280px}.totem-pair img:first-child{height:235px}.relic-stack{gap:16px}.weapon-card{min-height:225px}.weapon-card>img{height:185px}.fossil-card{min-height:220px}.camp-layout{grid-template-columns:1fr;padding-top:45px;padding-bottom:35px}.camp-copy h2{font-size:36px}.camp-art{max-width:360px}.camp-sign b{font-size:21px}.camp-sign span{font-size:24px}.camp-sign small{font-size:8px}.camp-keepsake{margin-top:20px}.supply>img{width:120px;right:5px;bottom:30px}.supply h3{font-size:25px}.supply p{max-width:64%}}

/* Keep the account footer at the viewport bottom without covering long forms. */
body.portal{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
.portal>header{width:100%;margin:0;flex-shrink:0}
.portal>.portal-main{width:100%;flex:1 0 auto;margin:0 auto;min-height:0}
.portal>.footer{width:100%;margin-top:auto;flex-shrink:0}
/* Compact checkout: one card, no footer. */
.compact-pay{background:radial-gradient(ellipse at top,#e5eadc,var(--paper) 70%);min-height:100vh}.compact-pay header{max-width:700px;height:76px;padding:0 24px}.compact-pay header .text-btn{white-space:nowrap}.checkout-main{max-width:500px;margin:18px auto;padding:0 18px}.checkout-card{padding:25px 28px}.checkout-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.checkout-title .eyebrow{font-size:9px;letter-spacing:2px}.checkout-title h1{font-size:28px;margin:5px 0}.checkout-title img{width:67px;height:67px;object-fit:contain}.checkout-info{padding:8px 13px;background:#eeefdf;border-radius:7px}.checkout-info .order-row{padding:5px 0;border:0;font-size:12px}.openid-row b{overflow-wrap:anywhere;text-align:right;min-width:0;font-size:11px}.openid-row>span{flex-shrink:0}.amount-field{margin:16px 0 7px}.amount-field small{font-size:10px;color:var(--muted);float:right;font-weight:400}.amount-input{display:flex;gap:9px;align-items:center;border:1px solid #bfcab3;border-radius:6px;background:#fffef8;padding:5px 12px}.amount-input>span:first-child{font-size:26px;color:var(--orange)}.amount-input input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:28px;font-weight:700;color:var(--ink);padding:0;height:42px;appearance:textfield;-moz-appearance:textfield}.amount-input input::-webkit-inner-spin-button,.amount-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.amount-input:focus-within{outline:2px solid #658770}.amount-input>span:last-child{font-size:12px;color:var(--muted)}.shell-note{font-size:11px;color:#76816b;margin:7px 0 14px}.shell-note>span{float:right;color:#8d917e}.shell-note b{color:var(--orange)}.checkout-card .payment{padding:9px 12px;font-size:12px}.checkout-card .agreement{margin:14px 0;font-size:12px}.checkout-card .btn{min-height:45px;padding:9px 18px;gap:4px}.checkout-card .status{margin:8px 0 0;font-size:11px;min-height:18px;line-height:1.5}.checkout-help{font-size:10px;text-align:center;color:#8a8d7c;line-height:1.7}.fixed-amount{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-top:16px}.fixed-amount b{font-size:28px;color:var(--orange)}@media(max-width:600px){.compact-pay header{height:62px;padding:0 18px}.compact-pay .brand b{font-size:22px}.compact-pay .brand small{font-size:8px}.compact-pay .brand .seal{height:36px;width:36px;font-size:22px}.checkout-main{margin:5px auto 14px;padding:0 14px}.checkout-card{padding:18px 20px}.checkout-title{margin-bottom:8px}.checkout-title h1{font-size:26px}.checkout-title img{width:56px;height:56px}.checkout-card .agreement{margin:12px 0}.amount-field{margin-top:12px}}
@media(max-width:600px) and (max-height:650px){.compact-pay header{height:52px}.checkout-main{margin-top:0;margin-bottom:8px}.checkout-card{padding:12px 16px}.checkout-title img{height:42px;width:42px}.checkout-title h1{font-size:23px}.checkout-title{margin-bottom:5px}.checkout-info{padding:5px 10px}.checkout-info .order-row{padding:3px 0}.amount-field{margin:9px 0 4px}.shell-note{margin:5px 0 9px}.checkout-card .agreement{margin:9px 0}.checkout-help{font-size:9px}}
