/* Approved registration mockups: live text / exact book and gift artwork. */
#registration-section.section {margin:0;padding:24px 0 18px;border:0;background:#f8f8f6;color:#47474b;font-family:'Montserrat Hero',Arial,sans-serif;overflow:hidden}
#registration-section .registration-live-inner {width:100%;max-width:560px;margin:auto;padding:0 20px}
#registration-section #registration-title {max-width:none;margin:0 auto 21px;padding:0;color:#504094;text-align:center;font:750 28px/1.14 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.8px;text-transform:none;text-wrap:initial}
#registration-section .registration-live-grid {display:grid;gap:18px;min-width:0}
#registration-section .registration-live-copy {min-width:0;text-align:center;font:400 16px/1.28 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.42px}
#registration-section .registration-live-copy p {margin:0;color:inherit;font:inherit;letter-spacing:inherit;max-width:none}
#registration-section .registration-live-copy strong {font-weight:700}
#registration-section .registration-live-copy .registration-live-description {margin-top:8px;padding:0 3px}
#registration-section .registration-live-copy .registration-live-emphasis {margin:17px 0 15px;padding:14px 8px;border:0;border-radius:14px;background:#ece5fb;font-weight:750;font-size:17.3px;line-height:1.27;letter-spacing:-.5px}
#registration-section .registration-live-copy .registration-live-invite {font-size:16px;line-height:1.32;letter-spacing:-.5px}
#registration-section #registration.registration-form {width:100%;max-width:none;min-width:0;grid-column:auto;grid-row:auto;margin:0;padding:17px 12px 15px;border:1px solid #d9cdfc;border-radius:14px;background:#f3effc;box-shadow:none;color:#383846}
#registration-section .form-title {margin:0 0 6px;color:#504094;text-align:center;font:750 24px/1.12 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.9px}
#registration-section .form-date {margin:0 0 16px;justify-content:center;text-align:center;color:#47474b;font:400 16px/1.3 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.5px}
#registration-section .field {display:block;margin:0 0 14px;min-width:0}
#registration-section .field label {display:block;margin:0 0 8px;font:700 15px/1.25 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.2px}
#registration-section .field input {font:400 17px/1.2 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.5px;color:#393548;background:#fff;min-width:0;min-height:0;height:43px;padding:10px 14px;border:1px solid #d3d0e5;border-radius:9px;box-shadow:none;width:100%}
#registration-section .field input::placeholder {color:#9b9bb1;opacity:1}
#registration-section .field input:focus {outline:2px solid #7965ba;outline-offset:2px}
#registration-section .phone-control {display:flex;align-items:center;width:100%;height:44px;border:1px solid #d3d0e5;border-radius:9px;background:#fff;overflow:visible;box-shadow:none}
#registration-section .phone-control input {flex:1;height:28px;border:0;border-radius:0;border-left:1px solid #c8c1dc;padding:4px 11px;background:transparent}
#registration-section .country-code {flex:0 0 113px;width:113px;max-width:42%;min-width:0;height:40px;padding:3px 8px;color:#393548;background:transparent;border:0;border-radius:9px;font:400 16px/1.2 'Montserrat Hero',Arial,sans-serif}
#registration-section .country-code:focus-visible {outline:2px solid #7965ba;outline-offset:2px}
#registration-section .field-error {display:block;min-height:0;margin:5px 0 0;color:#a32642;font:500 12px/1.3 'Montserrat Hero',Arial,sans-serif}
#registration-section .field-error:empty {display:none}
#registration-section .field [aria-invalid=true] {border-color:#a32642}
#registration-section .form-status {margin:10px 0 0;max-width:none;font:500 13px/1.4 'Montserrat Hero',Arial,sans-serif;color:#47474b;text-align:center}
#registration-section .form-status:empty {display:none}
#registration-section .form-submit.cta {display:flex;flex-direction:column;gap:0;width:100%;max-width:none;min-width:0;min-height:64px;height:auto;margin:0;padding:10px 12px;border:0;border-radius:18px;color:#fff;background:linear-gradient(110deg,#6147b6,#503b98 62%,#5a45a4);box-shadow:0 4px 0 #302062,0 8px 18px #46317c12;font:700 20px/1.13 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.35px;text-align:center;text-transform:none;cursor:pointer;transition:transform .16s,box-shadow .16s,filter .16s}
#registration-section .form-submit .registration-break {display:block;color:inherit;font:inherit;transform:none;position:static;width:auto;height:auto;background:none}
#registration-section .form-submit:after,#registration-section .form-submit:before {display:none}
#registration-section .form-submit:hover {filter:brightness(1.06);transform:translateY(-2px)}
#registration-section .form-submit:active,#registration-section .form-submit.is-pressed {transform:translateY(2px);box-shadow:0 1px 0 #302062}
#registration-section .form-submit:focus-visible {outline:3px solid #504094;outline-offset:7px}
#registration-section .registration-live-bonus {margin:18px 0 0;display:block}
#registration-section .registration-bonus-card {position:relative;min-height:182px;padding:15px 0 18px 19px;background:#eee8fc;border-radius:14px;overflow:hidden;isolation:isolate}
#registration-section .registration-bonus-title {position:relative;z-index:1;max-width:68%;margin:0 0 10px;color:#504094;font:750 18px/1.2 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.45px}
#registration-section .registration-bonus-description {position:relative;z-index:1;max-width:65%;margin:0;color:#47474b;font:400 14px/1.28 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.42px}
#registration-section .registration-bonus-art {position:absolute;right:0;bottom:0;width:40%;aspect-ratio:274/343;overflow:hidden;pointer-events:none}
#registration-section .registration-bonus-art picture {display:contents}
#registration-section .registration-bonus-art img {position:absolute;left:-152.1898%;top:-370.8455%;width:264.2336%;max-width:none;height:auto;border:0;border-radius:0;object-fit:fill;mask-image:linear-gradient(90deg,transparent,#000 4%);}
#registration-section .registration-live-timer {display:flex;flex-direction:column;align-items:center;gap:6px;margin:14px 0 0;color:#555165;font:400 14px/1.2 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.3px}
#registration-section .registration-timer-digits {display:flex;justify-content:center;min-width:130px;gap:0;padding:3px 16px;border-radius:50px;background:#e7dffc;color:#423185;font:750 23px/1.05 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.7px;font-variant-numeric:tabular-nums}
#registration-section .registration-timer-digits b {font:inherit}
#site-footer.site-footer {margin:0;padding:22px 20px 28px;background:#f8f8f6;border:0;color:#62616b;font-family:'Montserrat Hero',Arial,sans-serif}
#site-footer .footer-inner {width:100%;max-width:560px;margin:0 auto;padding:0;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
#site-footer .footer-brand {display:flex;flex-direction:column;align-items:center;gap:8px}
#site-footer .footer-logo {width:145px;height:auto;filter:brightness(0);opacity:1}
#site-footer .footer-brand span {font:400 14px/1.3 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.5px}
#site-footer .footer-contacts,#site-footer .footer-legal {display:flex;flex-direction:column;gap:3px;padding:0;margin:0;font:400 14px/1.25 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.5px}
#site-footer a {color:inherit;text-decoration:none}
#site-footer .footer-legal a {text-decoration:underline;text-underline-offset:2px}
#site-footer a:focus-visible {outline:2px solid #504094;outline-offset:4px}
#site-footer .footer-copy {padding:0;margin:0;font:400 12px/1.25 'Montserrat Hero',Arial,sans-serif;letter-spacing:-.25px;opacity:1}
@media(max-width:359px) {
 #registration-section .registration-live-inner {padding-inline:15px}
 #registration-section #registration-title {font-size:25px}
 #registration-section .registration-live-copy,#registration-section .registration-live-copy .registration-live-invite {font-size:14.5px}
 #registration-section .registration-live-copy .registration-live-emphasis {font-size:15.5px}
 #registration-section .form-title {font-size:21px}
 #registration-section .form-date {font-size:14px}
 #registration-section .form-submit.cta {font-size:18px}
 #registration-section .registration-bonus-title {font-size:16px}
 #registration-section .registration-bonus-description {font-size:13px}
}
@media(min-width:600px) and (max-width:1099px) {
 #registration-section #registration-title {font-size:38px}
 #registration-section .registration-live-copy,#registration-section .registration-live-copy .registration-live-invite {font-size:21px}
 #registration-section .registration-live-copy .registration-live-emphasis {font-size:23px;padding:20px}
 #registration-section .registration-form {padding:24px!important}
 #registration-section .form-title {font-size:31px}
 #registration-section .form-date {font-size:21px}
 #registration-section .registration-bonus-card {min-height:250px;padding:24px}
 #registration-section .registration-bonus-title {font-size:25px}
 #registration-section .registration-bonus-description {font-size:19px}
}
@media(min-width:1100px) {
 #registration-section.section {padding:clamp(28px,2.5vw,40px) 0 0}
 #registration-section .registration-live-inner {max-width:1600px;padding:0 4.25%}
 #registration-section #registration-title {font-size:clamp(44px,4.3vw,68px);line-height:1.07;letter-spacing:-1.8px;margin-bottom:clamp(34px,2.5vw,40px)}
 #registration-section .registration-live-grid {grid-template-columns:1.12fr 1fr;gap:2.35%;align-items:stretch}
 #registration-section .registration-live-copy {font-size:clamp(21px,2.05vw,32px);line-height:1.26;letter-spacing:-.7px;text-align:left;padding:8px 0 0}
 #registration-section .registration-live-copy .registration-live-lead,#registration-section .registration-live-copy .registration-live-description,#registration-section .registration-live-copy .registration-live-invite {padding-inline:18px}
 #registration-section .registration-live-copy .registration-live-description {margin-top:23px}
 #registration-section .registration-live-copy .registration-live-emphasis {margin:27px 0 27px;padding:20px 15px;border-radius:20px;font-size:clamp(23px,2.05vw,32px);line-height:1.25;letter-spacing:-.8px;text-align:center}
 #registration-section .registration-live-copy .registration-live-invite {font-size:clamp(20px,1.96vw,31px);line-height:1.28;letter-spacing:-.9px}
 #registration-section #registration.registration-form {padding:24px 25px 28px;border-radius:23px}
 #registration-section .form-title {font-size:clamp(26px,2.45vw,39px);letter-spacing:-1.25px;line-height:1.15;margin-bottom:10px}
 #registration-section .form-date {font-size:clamp(21px,1.84vw,29px);margin-bottom:18px;letter-spacing:-.7px}
 #registration-section .field {margin-bottom:21px}
 #registration-section .field label {font-size:clamp(19px,1.6vw,25px);margin-bottom:10px}
 #registration-section .field input {font-size:clamp(21px,1.9vw,30px);height:68px;padding:15px 25px;border-radius:14px}
 #registration-section .phone-control {height:68px;border-radius:14px}
 #registration-section .phone-control input {height:38px;padding:6px 20px;border-radius:0}
 #registration-section .country-code {font-size:clamp(20px,1.8vw,28px);height:60px;width:184px;flex-basis:184px;padding:8px 20px}
 #registration-section .form-submit.cta {min-height:80px;display:block;font-size:clamp(23px,2vw,32px);border-radius:27px;padding:17px 10px;letter-spacing:-.6px}
 #registration-section .form-submit .registration-break {display:inline}
 #registration-section .registration-live-bonus {position:relative;display:grid;grid-template-columns:1fr 20%;align-items:center;margin-top:28px;min-height:183px;border-radius:22px;background:#eee8fc}
 #registration-section .registration-bonus-card {display:grid;grid-template-columns:24% 32% 44%;align-items:center;min-height:183px;padding:0;background:none;border-radius:0;overflow:visible}
 #registration-section .registration-bonus-art {position:relative;grid-column:1;grid-row:1;right:auto;bottom:auto;width:100%;aspect-ratio:237/202;align-self:center;overflow:hidden}
 #registration-section .registration-bonus-art img {width:635.443%;left:-38.8186%;top:-344.5545%;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 96%,transparent)}
 #registration-section .registration-bonus-title {grid-column:2;grid-row:1;max-width:none;padding:10px 24px 10px 17px;margin:0;color:#504094;font-size:clamp(22px,2.02vw,32px);line-height:1.23;letter-spacing:-.8px}
 #registration-section .registration-bonus-description {grid-column:3;grid-row:1;max-width:none;min-height:115px;padding:12px 30px 12px 34px;border-left:1px solid #aa96d2;font-size:clamp(17px,1.43vw,22px);line-height:1.38;letter-spacing:-.5px;display:flex;align-items:center}
 #registration-section .registration-live-timer {min-height:115px;padding:8px 16px;margin:0;border-left:1px solid #aa96d2;font-size:clamp(16px,1.36vw,21px);line-height:1.3;letter-spacing:-.6px;justify-content:center;text-align:center;gap:12px}
 #registration-section .registration-timer-digits {width:90%;padding:8px 15px;font-size:clamp(27px,2.4vw,38px);line-height:1}
 #site-footer.site-footer {padding:42px 4.25% 32px}
 #site-footer .footer-inner {max-width:1464px;display:grid;grid-template-columns:1.52fr .75fr 1.12fr 1.1fr;align-items:center;gap:28px;text-align:left}
 #site-footer .footer-brand {align-items:flex-start;gap:6px}
 #site-footer .footer-logo {width:220px}
 #site-footer .footer-brand span {font-size:clamp(13px,1.1vw,17px);padding-left:52px;letter-spacing:-.5px;white-space:nowrap}
 #site-footer .footer-contacts,#site-footer .footer-legal {font-size:clamp(14px,1.28vw,20px);line-height:1.22;gap:5px;letter-spacing:-.5px}
 #site-footer .footer-legal {padding:4px 0 4px 30px;border-left:1px solid #96919f}
 #site-footer .footer-copy {font-size:clamp(14px,1.23vw,19px);letter-spacing:-.7px;line-height:1.35;padding:10px 0 10px 26px;border-left:1px solid #96919f}
}
@media(prefers-reduced-motion:reduce) {#registration-section .form-submit.cta{transition:none}#registration-section .form-submit:hover{transform:none}}

/* Fidelity pass: reference line breaks and full-width control, independent of old CTA limits. */
#registration-section .registration-heading-break {display:block}
#registration-section .registration-live-copy {font-size:14.5px;line-height:1.3;letter-spacing:-.4px}
#registration-section .registration-live-copy .registration-live-emphasis {font-size:15.7px;line-height:1.26;padding-block:12px}
#registration-section .registration-live-copy .registration-live-invite {font-size:14.5px;line-height:1.32;letter-spacing:-.5px}
#registration-section .form-submit.cta {width:100%!important;max-width:none!important;background:linear-gradient(110deg,#6147b6,#503b98 62%,#5a45a4)!important}
#registration-section .registration-bonus-art {mix-blend-mode:multiply}
#registration-section .registration-bonus-description {max-width:62%}
#site-footer .footer-copy {max-width:none}
@media(min-width:600px) and (max-width:1099px){
 #registration-section .registration-live-copy,#registration-section .registration-live-copy .registration-live-invite{font-size:20px}
 #registration-section .registration-live-copy .registration-live-emphasis{font-size:21px}
}
@media(min-width:1100px){
 #registration-section .registration-heading-break {display:none}
 #registration-section .registration-live-copy {font-size:clamp(20px,1.98vw,31px);line-height:1.28;letter-spacing:-.85px}
 #registration-section .registration-live-copy .registration-live-emphasis{font-size:clamp(22px,2vw,32px);padding:20px 12px;line-height:1.26}
 #registration-section .registration-live-copy .registration-live-invite{font-size:clamp(18px,1.78vw,28px);line-height:1.35;letter-spacing:-.9px}
 #registration-section .registration-bonus-card {grid-template-columns:24% 32% 44%;min-height:183px}
 #registration-section .registration-bonus-art{width:calc(100% - 22px);margin:0 0 0 15px;max-height:183px;aspect-ratio:237/202}
 #registration-section .registration-bonus-description {max-width:none;font-size:clamp(16px,1.36vw,21.5px);line-height:1.4;padding-left:30px;padding-right:24px}
 #site-footer .footer-inner{grid-template-columns:1.4fr .72fr 1.08fr 1.12fr;gap:20px}
 #site-footer .footer-legal{font-size:clamp(13px,1.17vw,18px);padding-left:26px}
 #site-footer .footer-copy{font-size:clamp(13px,1.14vw,18px);padding-left:26px}
}
#registration-section #registration-title {margin-bottom:12px}
#registration-section .registration-live-copy {line-height:1.22}
#registration-section .registration-live-copy .registration-live-emphasis {margin-top:12px;margin-bottom:12px}
#registration-section .registration-live-grid {gap:15px}
#registration-section .field {margin-bottom:11px}
#registration-section .form-date {margin-bottom:12px}
#registration-section #registration.registration-form {padding-bottom:13px}
#registration-section .registration-bonus-art {mix-blend-mode:darken;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 96%,transparent)}
#site-footer.site-footer {padding-block:18px 16px}
#site-footer .footer-inner {gap:13px}
@media(min-width:1100px){
 #registration-section.section {padding-top:clamp(24px,1.95vw,32px)}
 #registration-section #registration-title {margin-bottom:34px}
 #registration-section .registration-live-grid{gap:2.35%}
 #registration-section .registration-live-copy{line-height:1.28}
 #registration-section .registration-live-copy .registration-live-emphasis{margin-block:27px}
 #registration-section #registration.registration-form{padding-bottom:28px}
 #registration-section .field{margin-bottom:21px}
 #registration-section .form-date{margin-bottom:18px}
 #registration-section .registration-bonus-art{width:min(calc(100% - 20px),215px);max-height:none;margin:0 0 0 18px;aspect-ratio:237/202}
 #registration-section .registration-bonus-title{font-size:clamp(20px,1.94vw,29.2px);padding-left:15px;padding-right:20px}
 #site-footer.site-footer{padding-block:36px 28px}
 #site-footer .footer-inner{gap:20px}
}
@media(min-width:1100px){#registration-section .registration-bonus-art{mask-image:linear-gradient(transparent,#000 8%,#000 98%,transparent)}}
/* Keep the book silhouette above its panel, without the atlas canvas's paper strip. */
@media(min-width:1100px){#registration-section .registration-bonus-art{clip-path:polygon(0 10%,31% 10%,31% 3%,90% 7%,90% 10%,100% 10%,100% 100%,0 100%);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 96%,transparent)}}

/* Телефон: intl-tel-input (/js/myr-phone.js) вместо своего <select> с кодами.
   Плашка .phone-control не меняется — та же рамка и высота 44/68px; внутри
   флаг с кодом страны и тот же разделитель, что был у селекта. */
#registration-section .phone-control .iti{--iti-dialcode-color:#393548;--iti-arrow-color:#7965ba;--iti-spacer-horizontal:11px;flex:1;display:block;width:100%;min-width:0}
#registration-section .phone-control .iti__tel-input{width:100%;border-left:0}
#registration-section .phone-control .iti__selected-country{padding-right:10px;border-right:1px solid #c8c1dc;border-radius:0}
#registration-section .phone-control .iti__selected-dial-code{color:#393548;font:400 16px/1.2 'Montserrat Hero',Arial,sans-serif}
/* Список стран рендерится в <body>, вне секции: глобальный коралловый
   input:focus-visible из styles.css читается там как ошибка. */
.iti__search-input:focus-visible{outline:2px solid #7965ba;outline-offset:-2px}
@media(min-width:1100px){
#registration-section .phone-control .iti{--iti-spacer-horizontal:20px}
#registration-section .phone-control .iti__selected-country{padding-right:16px}
#registration-section .phone-control .iti__selected-dial-code{font-size:clamp(20px,1.8vw,28px)}
}
