/* Choice: soft neutral surfaces, monochrome controls, quiet pastel detail. */
:root{--purple:#171717;--ink:#171717;--muted:#777;--line:#e9e9e9;--light:#f5f5f5}body{background:#efefef;color:#171717}.btn{background:#171717;border-radius:25px;padding:14px 23px;box-shadow:0 4px 10px #0000000b}.btn:hover{background:#333}.btn.ghost{background:#fff;color:#333;border:1px solid #e5e5e5;box-shadow:0 3px 9px #00000005}.btn.ghost:hover{background:#f5f5f5}.text-btn{color:#333;text-decoration:underline;text-underline-offset:4px}.brand,.mark,.eyebrow,.access-art .brand,.access-art .brand span,.access-mobile-brand{color:#171717}.eyebrow{color:#777;font-weight:500;letter-spacing:1.5px}.panel{border:1px solid #ffffff;border-radius:28px;box-shadow:0 12px 38px #00000006;background:linear-gradient(145deg,#fff,#fcfcfc)}.panel-heading{border-bottom:1px solid #eee;padding:28px}.iconbox{border-radius:15px;background:#f3f3f3;color:#333}.topbar{background:#f7f7f7;border-color:#e8e8e8}.nav{background:#f5f5f5!important;border-color:#e6e6e6!important}.nav-item{background:#fff;color:#171717;border-radius:14px;box-shadow:0 3px 12px #00000006}.nav-item span:last-child{background:#f5f5f5}.nav-label,.portal{color:#898989}.help{background:#fafafa;border-color:#e7e7e7;border-radius:20px}.avatar{background:#eaeaea;color:#333}.content{padding-top:44px}h1{font-weight:600;color:#171717}h2{color:#202020}.subtitle,.small{color:#777}input,select,.access-card input{background:#fafafa;border:1px solid #e7e7e7;border-radius:13px;color:#222;box-shadow:inset 0 2px 4px #00000002}input:focus,select:focus,.access-card input:focus{border-color:#999;box-shadow:0 0 0 3px #00000005}button:focus-visible,a:focus-visible{outline:3px solid #858585}.step.active{color:#171717}.step.active i{background:#171717;border-color:#171717;box-shadow:0 0 0 4px #e8e8e8}.step.done i{background:#e7e7e7;color:#333}.step i{border-color:#dedede}.connector{background:#ddd}.notice{background:#f7f7f7;border-color:#ededed;border-radius:16px;color:#777}.notice b{color:#444}.summary-head{background:#f8f8f8;border-color:#eee}.summary-head span{color:#444!important}.summary-company{color:#222}.stat{color:#777}.stat strong{color:#333}.total{position:relative;overflow:hidden;background:linear-gradient(135deg,#fafafa,#f4f4f4);border:1px solid #fff;border-radius:20px;padding:22px 18px;box-shadow:0 5px 16px #00000003}.total:after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#f7ddd0,#efdae6,#dce5fa)}.total label,.amount small{color:#777}.amount{color:#151515}.chip{background:#f7f7f7;border-color:#e5e5e5;color:#333;border-radius:14px}.chip:hover{background:#eaeaea}.perk-icon{color:#555}.badge{background:#f8f8f8;border-color:#e3e3e3;color:#777}.badge:before{background:#999}.success .check{background:#eee;color:#171717}.invite-preview{border-radius:22px;background:linear-gradient(145deg,#fff,#f5f5f5);border-color:#eee}.invite-preview span{background:#171717!important;border-radius:22px!important}.invite-preview h3{color:#171717}.access-wrap{width:calc(100% - 80px);max-width:1200px;min-height:720px;margin:60px auto;border-radius:40px;overflow:hidden;border:1px solid #fff;background:linear-gradient(140deg,#fff,#f9f9f9);box-shadow:0 35px 80px #0000000d}.access-art{min-height:720px;background:linear-gradient(155deg,#fff,#f1f1f1);border:0;padding:48px}.access-art:after{width:340px;height:180px;border:0;border-radius:50%;right:-70px;bottom:70px;background:linear-gradient(110deg,#f5ded4aa,#efdce580,#dce6fa99);opacity:.65}.access-art h1{font-size:clamp(38px,4.4vw,59px);font-weight:500;letter-spacing:-2px;position:relative}.access-art p{font-size:16px;color:#777}.access-main{padding:50px 38px}.access-card h2{font-weight:500;font-size:30px}.access-card .btn{background:#171717;border-radius:28px}.access-card .btn:hover{background:#333}.access-note{color:#888;border-color:#eaeaea}.access-message{color:#666}.access-message.error{color:#a63658}.access-card input{height:52px}.access-art small{position:relative;z-index:1;color:#888}@media(max-width:850px){.access-wrap{width:calc(100% - 40px);margin:30px auto}.access-art{padding:32px}}@media(max-width:750px){.access-wrap{width:calc(100% - 32px);margin:22px auto;min-height:calc(100vh - 44px);border-radius:30px}.access-main{min-height:calc(100vh - 44px);padding:38px 26px}.access-mobile-brand{font-size:30px;color:#171717}.panel{border-radius:24px}.content{padding-top:30px}}@media print{body{background:#fff}.panel{box-shadow:none}}

/* Light sculpted surfaces; color is concentrated in the flowing wave. */
.access-wrap{max-width:1060px;min-height:650px;margin:64px auto;border-radius:36px;background:#fff;box-shadow:0 24px 70px #0000000a,0 2px 4px #ffffff}
.access-art{min-height:650px;padding:42px;background:linear-gradient(145deg,#fff,#f8f8f8);justify-content:flex-start;gap:65px;position:relative}
.access-art:after{display:none}.access-art .brand{font-size:29px;font-weight:600;letter-spacing:-1px}.access-art h1{font-size:42px;font-weight:500;letter-spacing:-1.8px;line-height:1.17;margin:16px 0}.access-art p{max-width:290px;font-size:15px;line-height:1.8}.access-art small{margin-top:auto;padding-top:165px;z-index:1}.access-art:before{content:'';position:absolute;left:24px;right:24px;bottom:64px;height:190px;background:#fff url('/color-wave.png') center bottom/100% auto no-repeat;border-radius:28px;border:1px solid #fff;box-shadow:inset 0 2px 8px #00000003,0 12px 35px #00000003}
.access-main{padding:46px}.access-card{max-width:330px}.access-card:before{display:none}.access-card h2{font-size:28px;letter-spacing:-.8px}.access-card .eyebrow{font-size:10px;letter-spacing:1.4px}.access-card input{background:#f7f7f7;border-color:#eee;height:49px;border-radius:12px}.access-card .btn{border-radius:14px;height:49px;font-weight:500}.access-note{font-size:12px;line-height:1.8}.access-message{min-height:10px}.summary-head{background:#fafafa}.total{background:#fff url('/color-wave.png') center bottom/100% 85px no-repeat;padding-bottom:64px;border-radius:24px}.total:after{display:none}.iconbox,.success .check{background:#f2f2f2}.invite-preview{background:#fff url('/color-wave.png') center bottom/100% 100px no-repeat;padding-bottom:82px}.panel{box-shadow:0 12px 30px #00000004;border-radius:28px}.btn{border-radius:15px}.content h1{font-size:31px;letter-spacing:-1px}.nav-item{font-weight:500}.access-mobile-brand{border:0;padding:0;font-size:28px;letter-spacing:-1px}
@media(max-width:750px){.access-wrap{width:calc(100% - 40px);max-width:460px;margin:34px auto;min-height:auto;background:#fff;position:relative;overflow:hidden;border-radius:32px}.access-art{display:none}.access-main{min-height:0;padding:34px 28px 138px;position:relative}.access-main:after{content:'';position:absolute;bottom:0;left:0;right:0;height:125px;background:url('/color-wave.png') center bottom/100% 125px no-repeat;pointer-events:none}.access-mobile-brand{margin-bottom:38px}.access-card h2{font-size:27px}.access-card .field{margin:19px 0}.access-note{margin-top:22px}.access-wrap .access-card{max-width:none}.access-card:before{display:none}}

.access-art:before,.access-art:after,.access-main:after{filter:none}.access-wrap{border:1px solid #ffffff;box-shadow:0 22px 60px #00000009}.panel{border:1px solid #fff}

/* Consistent corner geometry and clean, fine surface edges. */
.access-wrap{border-radius:36px;border:1px solid #ffffff;box-shadow:0 2px 3px #00000002,0 24px 64px #00000008}
.access-art:before{border-radius:24px;border:1px solid #ededed;background-clip:padding-box;box-shadow:0 1px 0 #ffffff,inset 0 1px 2px #00000002;overflow:hidden}
.panel{border-radius:26px;border:1px solid #e9e9e9;box-shadow:0 2px 4px #00000002,0 12px 32px #00000003;background-clip:padding-box}
.panel-heading,.summary-head{border-bottom:1px solid #ededed}.total,.invite-preview{border:1px solid #ececec;border-radius:20px;background-clip:padding-box;box-shadow:0 1px 2px #00000002}
input,select,.access-card input{border:1px solid #e5e5e5;border-radius:12px;box-shadow:inset 0 1px 2px #00000002;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,.access-card input:focus{border-color:#969696;box-shadow:0 0 0 3px #00000005}
.btn,.access-card .btn{border-radius:13px;box-shadow:0 1px 2px #0000000c}.btn.ghost{border:1px solid #e4e4e4;box-shadow:0 1px 2px #00000003}
.chip,.nav-item{border-radius:12px}.iconbox{border-radius:13px}.notice{border-radius:14px;border:1px solid #ebebeb}
@media(max-width:750px){.access-wrap{border-radius:30px}.access-main:after{left:1px;right:1px;bottom:1px;border-radius:0 0 29px 29px}.panel{border-radius:24px}}
