@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-600:oklch(54.6% .245 262.881);--color-gray-600:oklch(44.6% .03 256.802);--spacing:.25rem;--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-blue-600{color:var(--color-blue-600)}.text-gray-600{color:var(--color-gray-600)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--aubergine:#402b4f;--purple:#74557c;--lavender:#a48cb5;--pale-lavender:#c9b9d2;--off-white:#f1edf3;--paper:#faf8fb;--white:#fff;--ink:#281f2d;--muted:#675d6b;--border:#402b4f29;--shell:min(1380px, calc(100vw - 96px) );--font-body:"Poppins", sans-serif;--font-display:"Poppins", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}:focus-visible{outline:3px solid var(--lavender);outline-offset:4px}::selection{background:var(--pale-lavender);color:var(--aubergine)}.skip-link{z-index:1000;background:var(--white);color:var(--aubergine);padding:12px 18px;font-weight:700;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.section-shell{width:var(--shell);margin-inline:auto}.light-section{background:var(--off-white)}.eyebrow{color:var(--purple);letter-spacing:.17em;text-transform:uppercase;margin:0 0 24px;font-size:.72rem;font-weight:700}.eyebrow span{color:var(--pale-lavender);padding-inline:7px}.eyebrow-light{color:var(--pale-lavender)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.045em}h2{margin-bottom:0;font-size:clamp(2.6rem,5vw,5.4rem);font-weight:600;line-height:1.02}.site-header{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#faf8fbe8;border-bottom:1px solid #402b4f17;position:sticky;top:0}.header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:42px;width:min(1480px,100vw - 56px);min-height:84px;margin-inline:auto;display:grid}.brand{color:var(--aubergine);white-space:nowrap;align-items:center;gap:13px;display:inline-flex}.brand-mark{grid-template-columns:repeat(3,1fr);align-items:end;gap:3px;width:30px;height:34px;display:grid;transform:skewY(-18deg)}.brand-mark i{background:currentColor;border-radius:20px;display:block}.brand-mark i:first-child{opacity:.46;height:56%}.brand-mark i:nth-child(2){opacity:.72;height:78%}.brand-mark i:nth-child(3){height:100%}.brand-type{letter-spacing:.08em;text-transform:uppercase;flex-direction:column;font-size:.62rem;font-weight:700;line-height:1.15;display:flex}.brand-type strong{font-family:var(--font-display);letter-spacing:.19em;font-size:1.17rem}.main-nav{justify-self:center}.nav-links{align-items:center;gap:clamp(20px,2.4vw,40px);display:flex}.nav-links a{color:#4e4452;padding-block:30px;font-size:.78rem;font-weight:600;position:relative}.nav-links a:after{content:"";transform-origin:100%;background:var(--purple);height:1px;transition:transform .22s;position:absolute;bottom:22px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after{transform-origin:0;transform:scaleX(1)}.mobile-nav-top,.mobile-nav-cta,.menu-toggle{display:none}.button{letter-spacing:.09em;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;width:fit-content;min-height:50px;padding:14px 22px;font-size:.69rem;font-weight:700;line-height:1;transition:background-color .22s,color .22s,border-color .22s,transform .22s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--purple);color:var(--white)}.button-primary:hover{background:var(--aubergine)}.button-outline{border-color:var(--aubergine);color:var(--aubergine)}.button-outline:hover{background:var(--aubergine);color:var(--white)}.button-text{border-bottom:1px solid var(--pale-lavender);min-height:auto;color:var(--aubergine);padding-inline:2px}.hero{grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);align-items:center;gap:clamp(52px,7vw,120px);min-height:calc(100vh - 84px);padding-block:72px 88px;display:grid}.hero-copy{max-width:650px;padding-left:clamp(0px,2vw,32px)}.hero h1{margin-bottom:32px;font-size:clamp(4.2rem,6.3vw,7.4rem);font-weight:600;line-height:.94}.hero h1 span{color:var(--purple);display:block}.hero-intro{max-width:590px;color:var(--muted);margin-bottom:38px;font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.8}.hero-actions{align-items:center;gap:28px;display:flex}.hero-note{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:20px 28px;margin-top:64px;padding-top:24px;font-size:.72rem;font-weight:600;display:flex}.hero-note span{align-items:center;gap:7px;display:inline-flex}.hero-note svg{color:var(--purple)}.hero-visual{background:radial-gradient(circle at 72% 30%,#ffffffe6 0 8%,#0000 28%),linear-gradient(145deg,#e8e0eb,#d7c8dd 55%,#bba7c4);min-height:min(720px,100vh - 140px);position:relative;overflow:hidden}.hero-visual:before{content:"";pointer-events:none;border:1px solid #ffffff73;position:absolute;inset:22px}.hero-visual:after{aspect-ratio:1;content:"";border:1px solid #402b4f2e;border-radius:50%;width:44%;position:absolute;top:-11%;right:-11%}.anatomy-visual{position:absolute;inset:0}.anatomy-visual svg{filter:drop-shadow(0 30px 45px #402b4f1f);width:100%;height:100%}.anatomy-label{color:var(--aubergine);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:24%;right:7%}.anatomy-label span{border:2px solid var(--purple);border-radius:50%;width:8px;height:8px}.hero-visual-caption{background:var(--aubergine);min-width:230px;color:var(--white);align-items:flex-start;gap:28px;padding:22px 28px;display:flex;position:absolute;bottom:0;left:0}.hero-visual-caption span{color:var(--pale-lavender);letter-spacing:.12em;font-size:.62rem}.hero-visual-caption p{margin:0;font-size:.78rem;font-weight:600;line-height:1.5}.section-heading{margin-bottom:clamp(52px,7vw,96px)}.split-heading{grid-template-columns:1.5fr .7fr;align-items:end;gap:80px;display:grid}.split-heading>p{max-width:420px;color:var(--muted);margin:0 0 8px;font-size:1rem}.body-section{padding-block:clamp(100px,11vw,160px)}.body-explorer{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:30px;display:grid}.body-map-panel{background:var(--aubergine);min-height:680px;color:var(--pale-lavender);place-items:center;display:grid;position:relative;overflow:hidden}.body-map-panel:before{aspect-ratio:1;content:"";border:1px solid #c9b9d224;border-radius:50%;width:78%;position:absolute}.body-map-panel:after{aspect-ratio:1;content:"";border:1px solid #c9b9d21f;border-radius:50%;width:48%;position:absolute}.body-map{z-index:1;width:43%;min-width:205px;max-height:540px;position:relative}.body-map-points circle{fill:var(--pale-lavender);stroke:var(--aubergine);stroke-width:4px}.body-map-note{z-index:2;color:#ffffffa3;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:10px;margin:0;font-size:.68rem;font-weight:600;display:flex;position:absolute;bottom:28px;left:32px}.body-map-note span{background:var(--pale-lavender);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 5px #c9b9d221}.body-card-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;gap:1px;display:grid}.body-area-card{background:var(--paper);grid-template-columns:auto 1fr auto;align-items:start;gap:20px;min-height:168px;padding:28px;transition:background-color .24s,color .24s,transform .24s;display:grid}.body-area-card:last-child{grid-column:1/-1}.body-area-card:hover{z-index:2;background:var(--purple);color:var(--white);transform:translateY(-3px)}.body-area-index{color:var(--purple);letter-spacing:.12em;font-size:.64rem;font-weight:700}.body-area-card:hover .body-area-index,.body-area-card:hover small{color:var(--pale-lavender)}.body-area-copy{flex-direction:column;gap:10px;display:flex}.body-area-copy strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:1.28rem;font-weight:600}.body-area-copy small{max-width:230px;color:var(--muted);font-size:.76rem;line-height:1.55}.philosophy-section{background:var(--aubergine);color:var(--white);padding-block:clamp(105px,11vw,170px);position:relative;overflow:hidden}.philosophy-section:after{aspect-ratio:1;content:"";border:1px solid #c9b9d221;border-radius:50%;width:65vw;position:absolute;bottom:-33vw;right:-12vw;box-shadow:0 0 0 8vw #c9b9d206,0 0 0 16vw #c9b9d205}.philosophy-heading{z-index:1;position:relative}.process-grid{z-index:1;border-top:1px solid #ffffff2e;grid-template-columns:repeat(3,1fr);display:grid;position:relative}.process-card{border-right:1px solid #ffffff2e;min-height:360px;padding:34px clamp(24px,3vw,52px) 10px}.process-card:first-child{padding-left:0}.process-card:last-child{border-right:0}.process-number{color:var(--pale-lavender);letter-spacing:.14em;margin-bottom:74px;font-size:.68rem}.process-card svg{color:var(--pale-lavender);margin-bottom:27px}.process-card h3{text-transform:uppercase;margin-bottom:16px;font-size:1.45rem;font-weight:600}.process-card p{color:#ffffffad;max-width:345px;margin-bottom:0;font-size:.9rem;line-height:1.75}.science-section{padding-block:clamp(105px,11vw,170px)}.science-layout{grid-template-columns:.75fr 1.25fr;gap:clamp(60px,9vw,150px);display:grid}.science-copy{align-self:start;position:sticky;top:140px}.science-copy h2{margin-bottom:36px}.large-copy{max-width:560px;color:var(--muted);margin-bottom:40px;font-size:clamp(1rem,1.25vw,1.16rem);line-height:1.8}.stat-grid{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);margin-bottom:34px;display:grid}.stat-grid>div{border-right:1px solid var(--border);flex-direction:column;justify-content:space-between;min-height:210px;padding:34px 26px;display:flex}.stat-grid>div:first-child{padding-left:0}.stat-grid>div:last-child{border-right:0}.stat-grid strong{color:var(--purple);font-family:var(--font-display);font-size:3.5rem;font-weight:500;line-height:1}.stat-grid span{color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:600;line-height:1.55}.research-card{background:var(--white);border:1px solid #402b4f14;grid-template-columns:auto 1fr;gap:0 30px;min-height:310px;padding:38px;display:grid}.research-card-icon{background:var(--off-white);width:52px;height:52px;color:var(--purple);place-items:center;display:grid}.research-card-copy>span{color:var(--purple);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-weight:700}.research-card h3{max-width:500px;margin:22px 0 14px;font-size:clamp(1.5rem,2.2vw,2.15rem);font-weight:600;line-height:1.2}.research-card p{max-width:560px;color:var(--muted);font-size:.86rem}.research-card small{color:var(--muted);text-transform:uppercase;font-size:.65rem;font-weight:600}.research-card>a{border-bottom:1px solid var(--pale-lavender);width:fit-content;color:var(--aubergine);letter-spacing:.08em;text-transform:uppercase;grid-column:2;align-items:center;gap:8px;margin-top:36px;font-size:.68rem;font-weight:700;display:inline-flex}.treatments-section{background:var(--paper);padding-block:clamp(105px,11vw,170px)}.treatment-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.treatment-card{border:1px solid var(--border);background:#ffffff73;flex-direction:column;justify-content:space-between;min-height:520px;padding:34px;transition:transform .25s,background-color .25s,box-shadow .25s;display:flex}.treatment-card:hover{background:var(--white);transform:translateY(-7px);box-shadow:0 22px 60px #402b4f14}.treatment-card-top{color:var(--purple);letter-spacing:.12em;justify-content:space-between;align-items:flex-start;font-size:.67rem;font-weight:700;display:flex}.treatment-symbol{border:1px solid var(--pale-lavender);border-radius:50%;width:66px;height:66px;position:relative}.treatment-symbol:before,.treatment-symbol:after{border:1px solid var(--lavender);content:"";border-radius:50%;position:absolute;inset:15px}.treatment-symbol:after{background:var(--purple);inset:27px}.treatment-card h3{margin-bottom:18px;font-size:2rem;font-weight:600}.treatment-card p{max-width:350px;color:var(--muted);font-size:.9rem}.treatment-meta{border-top:1px solid var(--border);flex-direction:column;gap:24px;padding-top:23px;display:flex}.treatment-meta>span{color:var(--muted);font-size:.7rem}.treatment-meta a{width:fit-content;color:var(--purple);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:.68rem;font-weight:700;display:inline-flex}.partners-section{padding-block:90px}.partners-layout{grid-template-columns:.65fr 1.35fr;align-items:end;gap:80px;display:grid}.partners-layout h2{max-width:480px;font-size:clamp(2rem,3vw,3.3rem)}.partner-grid{border:1px solid var(--border);grid-template-columns:repeat(4,1fr);display:grid}.partner-placeholder{border-right:1px solid var(--border);min-height:140px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.partner-placeholder:last-child{border-right:0}.partner-placeholder span{text-transform:uppercase;font-size:.74rem;font-weight:700}.partner-placeholder small{color:var(--lavender);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem}.cta-section{background:var(--aubergine);min-height:650px;color:var(--white);text-align:center;place-items:center;display:grid;position:relative;overflow:hidden}.cta-inner{z-index:2;flex-direction:column;align-items:center;display:flex;position:relative}.cta-section h2{margin-bottom:28px;font-size:clamp(3.2rem,7vw,7.5rem)}.cta-section h2 span{color:var(--pale-lavender)}.cta-section p:not(.eyebrow){color:#ffffffb3;max-width:610px;margin-bottom:36px;font-size:1rem}.cta-section .button-primary{background:var(--white);color:var(--aubergine)}.cta-section .button-primary:hover{background:var(--pale-lavender)}.cta-orbit,.cta-orbit span{border:1px solid #c9b9d226;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-orbit{width:380px;height:380px}.cta-orbit span:first-child{width:620px;height:620px}.cta-orbit span:nth-child(2){width:900px;height:900px}.cta-orbit span:nth-child(3){width:1200px;height:1200px}.site-footer{color:var(--white);background:#2c1d36;padding-top:80px}.footer-grid{grid-template-columns:1.7fr 1.2fr .7fr .8fr;gap:70px;padding-bottom:70px;display:grid}.brand-light{color:var(--white)}.footer-brand>p{color:#ffffff8c;max-width:350px;margin:26px 0 0;font-size:.82rem}.site-footer h2{color:var(--pale-lavender);font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;margin-bottom:22px;font-size:.66rem;font-weight:700}.site-footer address,.site-footer .footer-grid>div:not(:first-child){flex-direction:column;align-items:flex-start;display:flex}.site-footer address{color:#ffffff94;gap:8px;font-size:.76rem;font-style:normal}.site-footer .footer-grid a:not(.brand){color:#ffffffa6;margin-bottom:9px;font-size:.76rem;transition:color .18s}.site-footer .footer-grid a:hover{color:var(--white)}.footer-bottom{color:#ffffff6b;border-top:1px solid #ffffff1f;justify-content:space-between;padding-block:25px;font-size:.65rem;display:flex}.reveal{animation:.7s cubic-bezier(.2,.7,.2,1) both reveal-in}.reveal-delay{animation-delay:.11s}.reveal-delay-two{animation-delay:.22s}@keyframes reveal-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1180px){:root{--shell:min(100% - 64px, 1180px)}.header-inner{gap:24px;width:calc(100vw - 40px)}.nav-links{gap:18px}.nav-links a{font-size:.7rem}.desktop-header-cta .button{padding-inline:16px}.hero{grid-template-columns:.9fr 1.1fr;gap:48px}.hero h1{font-size:clamp(3.7rem,6vw,5.7rem)}.body-map-panel{min-height:620px}.body-area-card{min-height:150px;padding:23px}.partners-layout{grid-template-columns:1fr;align-items:start}}@media(max-width:980px){:root{--shell:min(100% - 48px, 900px)}.header-inner{grid-template-columns:1fr auto;min-height:76px}.desktop-header-cta{display:none}.menu-toggle{background:0 0;border:0;place-items:center;display:grid}.main-nav{z-index:120;background:var(--aubergine);color:var(--white);visibility:hidden;flex-direction:column;padding:24px;transition:transform .33s cubic-bezier(.2,.7,.2,1),visibility .33s;display:flex;position:fixed;inset:0;transform:translate(100%)}.main-nav.is-open{visibility:visible;transform:translate(0)}.mobile-nav-top{color:var(--pale-lavender);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.7rem;font-weight:700;display:flex}.mobile-nav-top button{color:var(--white);background:0 0;border:0;place-items:center;display:grid}.nav-links{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:6px}.nav-links a{color:var(--white);font-family:var(--font-display);letter-spacing:-.04em;padding:6px 0;font-size:clamp(2.1rem,8vw,4rem);font-weight:600}.nav-links a:after{display:none}.mobile-nav-cta{display:block}.mobile-nav-cta .button{background:var(--white);color:var(--aubergine)}.hero{grid-template-columns:1fr;min-height:auto;padding-top:70px}.hero-copy{max-width:760px;padding-left:0}.hero-visual{min-height:680px}.body-explorer{grid-template-columns:1fr}.body-map-panel{min-height:560px}.body-map{width:30%}.process-card{padding-inline:28px}.science-layout{grid-template-columns:1fr}.science-copy{position:static}.treatment-grid{grid-template-columns:1fr}.treatment-card{min-height:420px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2}}@media(max-width:720px){:root{--shell: calc(100% - 36px) }html{scroll-padding-top:76px}h2{font-size:clamp(2.55rem,12vw,4.2rem)}.eyebrow{margin-bottom:18px}.header-inner{width:calc(100vw - 32px)}.hero{gap:48px;width:100%;padding:54px 18px 0}.hero h1{margin-bottom:26px;font-size:clamp(3.4rem,16vw,5.2rem);line-height:.96}.hero-intro{font-size:.95rem;line-height:1.75}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-actions .button-primary{width:100%}.hero-note{gap:14px 18px;margin-top:42px}.hero-visual{min-height:520px}.hero-visual:before{inset:12px}.anatomy-visual svg{transform-origin:bottom;transform:scale(1.08)translate(-3%)}.anatomy-label{font-size:.54rem;top:20%;right:4%}.hero-visual-caption{min-width:200px;padding:17px 20px}.split-heading{grid-template-columns:1fr;gap:24px}.section-heading{margin-bottom:48px}.body-section{padding-block:84px}.body-map-panel{min-height:460px}.body-map{width:40%;min-width:170px}.body-card-grid{scroll-snap-type:x mandatory;scrollbar-width:none;background:0 0;border:0;gap:12px;width:calc(100vw - 18px);margin-left:0;padding:0 18px 14px 0;display:flex;overflow-x:auto}.body-card-grid::-webkit-scrollbar{display:none}.body-area-card{scroll-snap-align:start;border:1px solid var(--border);min-width:78vw;min-height:180px}.body-area-card:last-child{grid-column:auto}.philosophy-section{padding-block:84px}.process-grid{grid-template-columns:1fr}.process-card{border-bottom:1px solid #ffffff2e;border-right:0;min-height:auto;padding:34px 0 38px}.process-card:last-child{border-bottom:0}.process-number{margin-bottom:34px}.science-section{padding-block:84px}.stat-grid{grid-template-columns:1fr}.stat-grid>div{border-right:0;border-bottom:1px solid var(--border);flex-direction:row;align-items:center;min-height:128px;padding:22px 0}.stat-grid>div:last-child{border-bottom:0}.stat-grid strong{font-size:2.6rem}.stat-grid span{text-align:right}.research-card{grid-template-columns:1fr;padding:28px 24px}.research-card-icon{margin-bottom:24px}.research-card>a{grid-column:1}.treatments-section{padding-block:84px}.treatment-card{min-height:450px;padding:27px}.partners-section{padding-block:72px}.partners-layout{gap:40px}.partner-grid{grid-template-columns:repeat(2,1fr)}.partner-placeholder{border-bottom:1px solid var(--border);min-height:110px}.partner-placeholder:nth-child(2){border-right:0}.partner-placeholder:nth-child(3),.partner-placeholder:nth-child(4){border-bottom:0}.cta-section{min-height:600px}.cta-section h2{font-size:clamp(3rem,14vw,5rem)}.cta-section p:not(.eyebrow){font-size:.9rem}.cta-section .button{width:100%}.footer-grid{grid-template-columns:1fr 1fr;gap:50px 28px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}}@media(max-width:430px){.brand-type{font-size:.54rem}.brand-type strong{font-size:1.03rem}.hero h1{font-size:3.25rem}.hero-note span{width:100%}.hero-visual{min-height:450px}.body-map-panel{min-height:410px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}

/* Master brand alignment — sourced from the supplied Liverpool Street REGEN board. */
:root {
  --aubergine: #402B4F;
  --purple: #74557C;
  --lavender: #A48CB5;
  --pale-lavender: #C9B9D2;
  --off-white: #F1EDF3;
  --paper: #F1EDF3;
  --white: #F1EDF3;
  --ink: #402B4F;
  --muted: #74557C;
  --border: rgb(64 43 79 / 16%);
  --font-body: "Poppins", sans-serif;
  --font-display: "Poppins", sans-serif;
}

body {
  background: var(--off-white);
  color: var(--aubergine);
  font-weight: 300;
}

.site-header {
  background: rgb(241 237 243 / 94%);
  border-bottom-color: rgb(64 43 79 / 12%);
}

.header-inner {
  min-height: 132px;
  gap: 34px;
}

.brand {
  display: inline-flex;
  flex: none;
  color: var(--aubergine);
}

.brand-logo {
  display: block;
  object-fit: contain;
}

.brand-logo-primary {
  width: 174px;
  height: auto;
}

.brand-logo-footer {
  width: 150px;
  height: auto;
}

.main-nav a {
  letter-spacing: .075em;
  font-size: .69rem;
  font-weight: 500;
  text-transform: uppercase;
}

.button {
  letter-spacing: .055em;
  text-transform: uppercase;
  font-size: .69rem;
  font-weight: 500;
}

h1, h2, h3 {
  color: var(--aubergine);
  font-weight: 400;
  letter-spacing: -.035em;
}

.eyebrow {
  color: var(--purple);
  font-weight: 500;
  letter-spacing: .23em;
}

.hero {
  position: relative;
  isolation: isolate;
}

.hero::before,
.body-section::after,
.science-section::after,
.site-footer::before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 210px;
  aspect-ratio: 1;
  background: url('/assets/regen-collagen-helix-new.png') center / contain no-repeat;
  pointer-events: none;
  opacity: .055;
}

.hero::before {
  left: 43%;
  bottom: 6%;
  width: 300px;
  transform: rotate(-8deg);
}

.body-section,
.science-section,
.site-footer {
  position: relative;
  overflow: hidden;
}

.body-section::after {
  right: -48px;
  top: 15%;
  transform: rotate(12deg);
}

.science-section::after {
  left: -70px;
  bottom: 8%;
  width: 280px;
  filter: brightness(2.7);
  opacity: .07;
}

.site-footer::before {
  right: 6%;
  bottom: -48px;
  width: 240px;
  filter: brightness(2.8);
  opacity: .08;
}

.hero-copy,
.hero-visual,
.body-section > *,
.science-section > *,
.site-footer > * {
  position: relative;
  z-index: 1;
}

.hero-visual::after {
  border-color: var(--lavender);
  box-shadow: 0 30px 80px rgb(64 43 79 / 12%);
}

.treatment-symbol {
  background: url('/assets/regen-collagen-helix-new.png') center / contain no-repeat;
  border: 0;
  border-radius: 0;
  opacity: .72;
}

.treatment-symbol::before,
.treatment-symbol::after {
  display: none;
}

.site-footer {
  background: var(--aubergine);
}

.footer-brand .brand {
  margin-top: -38px;
  margin-bottom: -18px;
}

.footer-brand p {
  max-width: 34ch;
}

.reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .7s ease, transform .7s ease;
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.reveal-delay { transition-delay: .12s; }
.reveal-delay-two { transition-delay: .22s; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
}

@media (max-width: 1120px) {
  .header-inner { min-height: 116px; }
  .brand-logo-primary { width: 152px; }
  .main-nav a { letter-spacing: .045em; }
}

@media (max-width: 760px) {
  html { scroll-padding-top: 91px; }
  .header-inner { min-height: 100px; width: calc(100vw - 34px); }
  .brand-logo-primary { width: 132px; }
  .main-nav.is-open { transform: translateX(0); visibility: visible; }
  .hero::before { width: 190px; left: auto; right: -55px; bottom: 20%; }
  .body-section::after { width: 150px; }
  .footer-brand .brand { margin-top: -24px; }
  .brand-logo-footer { width: 138px; }
}

/* Two-tier REGEN masthead and shared proportion-safe logo component. */
regen-logo,
.logo {
  display: block;
  line-height: 0;
}

.logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}

.logo--large { width: 100%; max-width: 310px; }
.logo--compact { width: 100%; max-width: 104px; }
.logo--footer { width: 100%; max-width: 420px; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgb(241 237 243 / 97%);
  border: 0;
  box-shadow: 0 1px 0 rgb(64 43 79 / 10%);
  overflow: clip;
}

.brand-masthead {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 12px;
  max-height: 300px;
  padding: 24px 24px 20px;
  opacity: 1;
  transition: max-height .5s cubic-bezier(.2,.7,.2,1), padding .5s cubic-bezier(.2,.7,.2,1), opacity .3s ease;
}

.brand-home {
  display: block;
}

.service-line {
  margin: 0;
  color: var(--purple);
  font-size: .61rem;
  font-weight: 500;
  letter-spacing: .19em;
  text-transform: uppercase;
}

.service-line span {
  padding-inline: 9px;
  color: var(--lavender);
}

.nav-tier {
  border-top: 1px solid rgb(64 43 79 / 12%);
  background: rgb(241 237 243 / 96%);
  backdrop-filter: blur(18px);
}

.nav-tier-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 32px;
  width: min(1380px, calc(100vw - 72px));
  min-height: 68px;
  margin-inline: auto;
}

.compact-brand,
.mobile-header-cta {
  display: none;
}

.main-nav {
  grid-column: 2;
  justify-self: center;
}

.nav-links a {
  padding-block: 24px;
  color: var(--aubergine);
  font-size: .68rem;
  font-weight: 500;
  letter-spacing: .105em;
}

.nav-links a::after {
  bottom: 17px;
}

.desktop-header-cta {
  grid-column: 3;
  justify-self: end;
}








.site-footer {
  padding-top: 0;
  background: var(--aubergine);
}

.footer-main {
  display: grid;
  grid-template-columns: minmax(340px, 1.35fr) minmax(300px, 1fr) minmax(270px, .8fr);
  gap: clamp(50px, 6vw, 100px);
  align-items: center;
  min-height: 510px;
  padding-block: 72px;
}

.footer-brand-panel {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-brand-link {
  display: block;
  margin: -30px 0 -34px -34px;
}

.footer-brand-panel > p {
  max-width: 39ch;
  margin: 0;
  color: rgb(241 237 243 / 62%);
  font-size: .82rem;
  line-height: 1.8;
}

.footer-directory {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: 48px;
  padding-left: 54px;
  border-left: 1px solid rgb(201 185 210 / 20%);
}

.footer-column,
.footer-column address {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.site-footer .footer-column h2 {
  margin-bottom: 24px;
}

.site-footer .footer-column a,
.site-footer .footer-legal a {
  margin-bottom: 8px;
  color: rgb(241 237 243 / 66%);
  font-size: .74rem;
  transition: color .2s ease;
}

.site-footer .footer-column a:hover,
.site-footer .footer-legal a:hover {
  color: var(--off-white);
}

.footer-column address {
  gap: 9px;
  color: rgb(241 237 243 / 58%);
  font-size: .74rem;
  font-style: normal;
  line-height: 1.6;
}

.footer-consultation {
  padding: 34px;
  border: 1px solid rgb(201 185 210 / 22%);
  background: rgb(201 185 210 / 7%);
}

.site-footer .footer-consultation h2 {
  margin: 0 0 18px;
  color: var(--off-white);
  font-family: var(--font-display);
  font-size: clamp(1.55rem, 2.2vw, 2.2rem);
  font-weight: 300;
  letter-spacing: -.035em;
  line-height: 1.15;
  text-transform: none;
}

.footer-consultation > p:not(.eyebrow) {
  margin-bottom: 28px;
  color: rgb(241 237 243 / 62%);
  font-size: .78rem;
}

.footer-button {
  width: 100%;
  justify-content: center;
  background: var(--off-white);
  color: var(--aubergine);
}

.footer-bottom {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 34px;
  padding-block: 24px;
}

.footer-legal {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.site-footer .footer-legal a {
  margin: 0;
}

@media (max-width: 1180px) {
  .nav-tier-inner { width: calc(100vw - 48px); gap: 22px; }
  .nav-links { gap: 22px; }
  .footer-main { grid-template-columns: 1.2fr 1fr; }
  .footer-consultation { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr auto; align-items: center; gap: 28px; }
  .footer-consultation .eyebrow { display: none; }
  .footer-consultation > p:not(.eyebrow) { margin: 0; }
  .footer-button { width: auto; }
}

@media (max-width: 980px) {
  .site-header { overflow: visible; }
  .brand-masthead { display: none; }
  .nav-tier { border-top: 0; }
  .nav-tier-inner {
    grid-template-columns: 1fr auto auto;
    width: calc(100vw - 32px);
    min-height: 98px;
  }
  .compact-brand {
    display: block;
    grid-column: 1;
    justify-self: start;
    height: auto;
    overflow: visible;
  }
  .logo--compact {
    transform: none;
  }
  .logo--compact { max-width: 116px; }
  .mobile-header-cta {
    display: inline-flex;
    grid-column: 2;
    align-items: center;
    align-self: center;
    min-height: 38px;
    padding-inline: 15px;
    border: 1px solid var(--aubergine);
    color: var(--aubergine);
    font-size: .61rem;
    font-weight: 500;
    letter-spacing: .11em;
    text-transform: uppercase;
  }
  .menu-toggle { grid-column: 3; }
  .main-nav { grid-column: auto; }
  .footer-main { grid-template-columns: 1fr; min-height: auto; }
  .footer-brand-link { margin-left: -30px; }
  .footer-directory { padding-left: 0; border-left: 0; }
  .footer-consultation { grid-column: auto; grid-template-columns: 1fr; }
  .footer-consultation > p:not(.eyebrow) { margin-bottom: 0; }
  .footer-button { width: 100%; }
  .footer-bottom { grid-template-columns: 1fr; gap: 10px; }
  .footer-legal { margin-bottom: 8px; }
}

@media (max-width: 560px) {
  .nav-tier-inner { gap: 12px; }
  .logo--compact { max-width: 104px; }
  .mobile-header-cta { padding-inline: 11px; }
  .footer-main { gap: 52px; padding-block: 58px; }
  .logo--footer { max-width: 330px; }
  .footer-brand-link { margin: -24px 0 -30px -26px; }
  .footer-directory { grid-template-columns: 1fr 1.35fr; gap: 26px; }
  .footer-consultation { padding: 28px 24px; }
  .footer-legal { gap: 10px 20px; }
}

/* Controlled three-column footer using the same unified logo asset as the header. */
.site-footer {
  position: relative;
  overflow: hidden;
  padding: 0;
  background: #402B4F;
  color: var(--off-white);
}

.site-footer::before {
  display: none;
}

.site-footer .footer-main {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: clamp(48px, 7vw, 108px);
  min-height: 0;
  padding-block: clamp(78px, 8vw, 112px);
}

.site-footer .footer-brand-panel,
.site-footer .footer-nav,
.site-footer .footer-contact {
  min-width: 0;
}

.site-footer .footer-brand-panel {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.site-footer .footer-brand-link {
  display: block;
  margin: 0 0 30px;
}

.site-footer .logo--footer {
  width: 100%;
  max-width: 310px;
}

.site-footer .logo--footer img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}

.site-footer .footer-brand-panel > p {
  max-width: 36ch;
  margin: 0;
  color: rgb(241 237 243 / 68%);
  font-size: .66rem;
  font-weight: 400;
  letter-spacing: .105em;
  line-height: 1.75;
  text-transform: uppercase;
}

.site-footer .footer-brand-panel > p span {
  padding-inline: 5px;
  color: var(--pale-lavender);
}

.site-footer .footer-nav,
.site-footer .footer-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 270px;
  padding-left: clamp(34px, 4vw, 64px);
  border-left: 1px solid rgb(201 185 210 / 20%);
}

.site-footer .footer-nav h2,
.site-footer .footer-contact h2 {
  margin: 0 0 27px;
  color: var(--pale-lavender);
  font-family: var(--font-body);
  font-size: .66rem;
  font-weight: 500;
  letter-spacing: .16em;
  line-height: 1.5;
  text-transform: uppercase;
}

.site-footer .footer-nav a {
  margin: 0 0 10px;
  color: rgb(241 237 243 / 72%);
  font-size: .78rem;
  transition: color .2s ease, transform .2s ease;
}

.site-footer .footer-nav a:hover {
  color: var(--off-white);
  transform: translateX(3px);
}

.site-footer .footer-contact address {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 32px;
  color: rgb(241 237 243 / 62%);
  font-size: .75rem;
  font-style: normal;
  line-height: 1.65;
}

.site-footer .footer-button {
  width: auto;
  margin-top: auto;
  justify-content: center;
  background: var(--off-white);
  color: var(--aubergine);
}

.site-footer .footer-bottom {
  display: flex;
  grid-template-columns: none;
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  padding-block: 25px;
  border-top: 1px solid rgb(201 185 210 / 20%);
  color: rgb(241 237 243 / 52%);
  font-size: .65rem;
}

.site-footer .footer-legal {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px 26px;
  margin: 0;
}

.site-footer .footer-legal a {
  margin: 0;
  color: rgb(241 237 243 / 58%);
  font-size: .65rem;
  transition: color .2s ease;
}

.site-footer .footer-legal a:hover {
  color: var(--off-white);
}

@media (max-width: 980px) {
  .site-footer .footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 64px 48px;
  }

  .site-footer .footer-contact {
    grid-column: 1 / -1;
    min-height: 0;
    padding: 42px 0 0;
    border-top: 1px solid rgb(201 185 210 / 20%);
    border-left: 0;
  }

  .site-footer .footer-button {
    margin-top: 4px;
  }
}

@media (max-width: 680px) {
  .site-footer .footer-main {
    grid-template-columns: 1fr;
    gap: 50px;
    padding-block: 66px;
  }

  .site-footer .footer-brand-panel {
    align-items: center;
    text-align: center;
  }

  .site-footer .footer-brand-link {
    margin-bottom: 26px;
  }

  .site-footer .logo--footer {
    max-width: 280px;
  }

  .site-footer .footer-brand-panel > p {
    max-width: 33ch;
  }

  .site-footer .footer-nav,
  .site-footer .footer-contact {
    grid-column: auto;
    min-height: 0;
    padding: 42px 0 0;
    border-top: 1px solid rgb(201 185 210 / 20%);
    border-left: 0;
  }

  .site-footer .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  .site-footer .footer-legal {
    justify-content: flex-start;
  }
}

/* Contact page — premium clinical clarity within the established REGEN system. */
.site-footer .footer-contact address a {
  color: inherit;
  transition: color .2s ease;
}

.site-footer .footer-contact address a:hover {
  color: var(--off-white);
}

.contact-page {
  background: var(--off-white);
}

.contact-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 520px;
  display: grid;
  align-items: center;
  background:
    radial-gradient(circle at 76% 54%, rgb(164 140 181 / 18%), transparent 26%),
    linear-gradient(135deg, #402B4F 0%, #2f1d3b 100%);
  color: var(--off-white);
}

.contact-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: 7%;
  width: min(310px, 28vw);
  aspect-ratio: 1;
  background: url('/assets/regen-collagen-helix-new.png') center / contain no-repeat;
  filter: brightness(2.8);
  opacity: .09;
  transform: rotate(7deg);
}

.contact-hero-inner {
  padding-block: 90px;
}

.contact-hero h1,
.contact-thanks h1 {
  max-width: 820px;
  margin: 0 0 28px;
  color: var(--off-white);
  font-size: clamp(3.6rem, 7vw, 7.4rem);
  font-weight: 300;
  line-height: .98;
}

.contact-hero-inner > p:last-child {
  max-width: 680px;
  margin: 0;
  color: rgb(241 237 243 / 72%);
  font-size: clamp(.95rem, 1.3vw, 1.12rem);
  line-height: 1.8;
}

.contact-section {
  padding-block: clamp(90px, 10vw, 150px);
}

.contact-layout {
  display: grid;
  grid-template-columns: minmax(300px, .8fr) minmax(520px, 1.35fr);
  gap: clamp(64px, 9vw, 138px);
  align-items: start;
}

.contact-details {
  position: sticky;
  top: 120px;
}

.contact-details h2,
.form-introduction h2,
.location-copy h2 {
  margin: 0;
  font-size: clamp(2.8rem, 5vw, 5.5rem);
  font-weight: 300;
  line-height: 1.02;
}

.contact-detail-list {
  margin-top: 58px;
  border-top: 1px solid var(--border);
}

.contact-detail {
  padding-block: 25px;
  border-bottom: 1px solid var(--border);
}

.contact-detail h3 {
  margin: 0 0 9px;
  color: var(--purple);
  font-family: var(--font-body);
  font-size: .65rem;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.contact-detail address,
.contact-detail a {
  color: var(--aubergine);
  font-size: .9rem;
  font-style: normal;
  line-height: 1.75;
}

.contact-detail a {
  text-decoration: underline;
  text-decoration-color: rgb(116 85 124 / 35%);
  text-underline-offset: 5px;
}

.contact-form-panel {
  padding: clamp(36px, 5vw, 68px);
  background: #402B4F;
  color: var(--off-white);
  box-shadow: 0 34px 90px rgb(64 43 79 / 16%);
}

.form-introduction {
  margin-bottom: 48px;
}

.form-introduction h2 {
  color: var(--off-white);
  font-size: clamp(2.8rem, 4.5vw, 4.8rem);
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.form-honeypot {
  position: absolute;
  left: -9999px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 24px;
}

.form-field {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.form-field-wide {
  grid-column: 1 / -1;
}

.form-field label {
  color: var(--pale-lavender);
  font-size: .65rem;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.form-field input,
.form-field select,
.form-field textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid rgb(201 185 210 / 38%);
  border-radius: 0;
  padding: 12px 0 14px;
  background: transparent;
  color: var(--off-white);
  font-family: var(--font-body);
  font-size: .9rem;
  font-weight: 300;
  outline: none;
  transition: border-color .2s ease, background-color .2s ease;
}

.form-field textarea {
  min-height: 150px;
  resize: vertical;
}

.form-field select {
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--pale-lavender) 50%), linear-gradient(135deg, var(--pale-lavender) 50%, transparent 50%);
  background-position: calc(100% - 8px) 52%, calc(100% - 3px) 52%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

.form-field select option {
  background: var(--aubergine);
  color: var(--off-white);
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {
  border-bottom-color: var(--off-white);
}

.consent-field {
  display: grid;
  grid-template-columns: 20px 1fr;
  gap: 13px;
  align-items: start;
  color: rgb(241 237 243 / 68%);
  font-size: .72rem;
  line-height: 1.65;
  cursor: pointer;
}

.consent-field input {
  appearance: none;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  border: 1px solid rgb(201 185 210 / 56%);
  background: transparent;
  display: grid;
  place-content: center;
}

.consent-field input::before {
  content: "";
  width: 8px;
  height: 8px;
  background: var(--off-white);
  transform: scale(0);
  transition: transform .15s ease;
}

.consent-field input:checked::before {
  transform: scale(1);
}

.consent-field input:focus-visible {
  outline: 2px solid var(--pale-lavender);
  outline-offset: 3px;
}

.form-submit {
  align-self: flex-start;
  min-width: 190px;
  border: 0;
  background: var(--off-white);
  color: var(--aubergine);
  cursor: pointer;
}

.location-section {
  padding-block: clamp(82px, 9vw, 132px);
  background: #C9B9D2;
}

.location-layout {
  display: grid;
  grid-template-columns: minmax(280px, .68fr) minmax(520px, 1.32fr);
  gap: clamp(58px, 8vw, 120px);
  align-items: center;
}

.location-copy address {
  margin-top: 38px;
  color: var(--purple);
  font-size: 1rem;
  font-style: normal;
  line-height: 1.8;
}

.map-placeholder {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 430px;
  display: grid;
  place-items: center;
  border: 1px solid rgb(64 43 79 / 16%);
  background: rgb(241 237 243 / 72%);
}

.map-grid {
  position: absolute;
  inset: 0;
  z-index: -2;
  opacity: .28;
  background-image: linear-gradient(rgb(116 85 124 / 20%) 1px, transparent 1px), linear-gradient(90deg, rgb(116 85 124 / 20%) 1px, transparent 1px);
  background-size: 42px 42px;
  transform: rotate(-7deg) scale(1.2);
}

.map-placeholder::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 66%;
  height: 1px;
  background: var(--purple);
  box-shadow: 0 -76px 0 rgb(116 85 124 / 35%), 0 84px 0 rgb(116 85 124 / 26%);
  transform: rotate(-21deg);
}

.map-marker {
  width: 78px;
  height: 78px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--aubergine);
  box-shadow: 0 18px 44px rgb(64 43 79 / 24%);
}

.map-marker img {
  width: 44px;
  height: auto;
  filter: brightness(3);
}

.map-placeholder > span {
  position: absolute;
  right: 22px;
  bottom: 18px;
  color: var(--purple);
  font-size: .61rem;
  font-weight: 500;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.contact-thanks {
  min-height: 680px;
  display: grid;
  align-items: center;
  background: #402B4F;
  text-align: center;
}

.contact-thanks-inner {
  display: grid;
  justify-items: center;
  padding-block: 110px;
}

.contact-thanks-inner > img {
  width: 86px;
  height: auto;
  margin-bottom: 34px;
  filter: brightness(3);
}

.contact-thanks h1 {
  max-width: 880px;
}

.contact-thanks-inner > p:not(.eyebrow) {
  margin-bottom: 34px;
  color: rgb(241 237 243 / 68%);
}

.contact-thanks .button {
  width: auto;
}

@media (max-width: 980px) {
  .contact-hero { min-height: 450px; }
  .contact-layout,
  .location-layout { grid-template-columns: 1fr; }
  .contact-details { position: static; }
  .contact-detail-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 24px; }
  .contact-detail { min-width: 0; }
  .contact-detail a { overflow-wrap: anywhere; }
  .location-layout { gap: 52px; }
}

@media (max-width: 680px) {
  .contact-hero { min-height: 420px; }
  .contact-hero::after { width: 190px; right: -44px; }
  .contact-hero-inner { padding-block: 68px; }
  .contact-hero h1,
  .contact-thanks h1 { font-size: clamp(3.2rem, 15vw, 5.1rem); }
  .contact-section { padding-block: 78px; }
  .contact-layout { gap: 58px; }
  .contact-detail-list { grid-template-columns: 1fr; margin-top: 42px; }
  .contact-form-panel { width: 100vw; margin-left: calc(50% - 50vw); padding: 44px 18px 52px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-field-wide { grid-column: auto; }
  .form-submit { width: 100%; }
  .location-section { padding-block: 72px; }
  .map-placeholder { min-height: 330px; }
}

/* Homepage anatomical editorial system. Content, structure and brand palette remain unchanged. */
.home-page {
  overflow: clip;
  background: var(--off-white);
}

.home-page .hero {
  position: relative;
  isolation: isolate;
  width: min(1520px, 100%);
  min-height: 790px;
  grid-template-columns: minmax(420px, .82fr) minmax(620px, 1.18fr);
  gap: 0;
  padding: 72px max(48px, calc((100vw - 1380px) / 2)) 30px;
  overflow: visible;
}

.home-page .hero::before {
  left: 38%;
  bottom: 7%;
  width: 360px;
  opacity: .035;
}

.home-page .hero-copy {
  z-index: 4;
  align-self: center;
  max-width: 650px;
  padding: 18px 0 70px;
}

.home-page .hero h1 {
  max-width: 720px;
  font-size: clamp(4.6rem, 7vw, 8rem);
  font-weight: 300;
  line-height: .9;
  letter-spacing: -.06em;
}

.home-page .hero h1 span {
  color: var(--purple);
}

.home-page .hero-intro {
  max-width: 590px;
  font-size: 1rem;
  line-height: 1.85;
}

.home-page .hero-visual {
  position: relative;
  align-self: stretch;
  min-height: 760px;
  margin-left: -42px;
  overflow: visible;
}

.home-page .hero-visual::before,
.home-page .hero-visual::after {
  display: none;
}

.hero-anatomy-stage {
  position: absolute;
  inset: -25px -8% -55px -2%;
  display: grid;
  place-items: end center;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 8%, #000 84%, transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0, #000 8%, #000 84%, transparent 100%);
}

.hero-anatomy-stage::before {
  content: "";
  position: absolute;
  width: 68%;
  aspect-ratio: 1;
  right: 1%;
  top: 19%;
  border-radius: 50%;
  background: radial-gradient(circle, rgb(164 140 181 / 25%), rgb(201 185 210 / 9%) 42%, transparent 70%);
  filter: blur(8px);
  animation: anatomy-pulse 9s ease-in-out infinite;
}

.hero-anatomy {
  position: relative;
  z-index: 2;
  width: min(720px, 100%);
  height: auto;
  transform-origin: 58% 60%;
  filter: drop-shadow(0 34px 45px rgb(64 43 79 / 14%));
  animation: anatomy-breathe 11s ease-in-out infinite;
}

.hero-tissue-strands {
  position: absolute;
  z-index: 1;
  inset: 8% 2% 8% 22%;
  opacity: .38;
}

.hero-tissue-strands span {
  position: absolute;
  width: 42%;
  height: 88%;
  border-left: 1px solid var(--lavender);
  border-radius: 50%;
  transform: rotate(16deg);
  animation: tissue-drift 14s ease-in-out infinite alternate;
}

.hero-tissue-strands span:nth-child(2) { left: 14%; height: 76%; transform: rotate(-8deg); animation-delay: -4s; }
.hero-tissue-strands span:nth-child(3) { left: 36%; height: 91%; transform: rotate(23deg); animation-delay: -8s; }
.hero-tissue-strands span:nth-child(4) { left: 52%; height: 70%; transform: rotate(-18deg); animation-delay: -11s; }

.home-page .anatomy-label {
  z-index: 5;
  top: 31%;
  right: 5%;
  background: rgb(241 237 243 / 78%);
  backdrop-filter: blur(10px);
}

.home-page .hero-visual-caption {
  z-index: 6;
  right: 2%;
  bottom: 9%;
  background: rgb(64 43 79 / 91%);
  box-shadow: 0 22px 55px rgb(64 43 79 / 18%);
}

@keyframes anatomy-breathe {
  0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
  50% { transform: translate3d(0, -7px, 0) scale(1.008); }
}

@keyframes anatomy-pulse {
  0%, 100% { opacity: .72; transform: scale(.96); }
  50% { opacity: 1; transform: scale(1.04); }
}

@keyframes tissue-drift {
  from { transform: translate3d(-3px, -2px, 0) rotate(16deg); }
  to { transform: translate3d(6px, 5px, 0) rotate(19deg); }
}

.home-page .body-section {
  position: relative;
  isolation: isolate;
  margin-top: -55px;
  padding: 180px 0 150px;
  background:
    radial-gradient(circle at 12% 42%, rgb(164 140 181 / 18%), transparent 25%),
    linear-gradient(145deg, #F1EDF3 0%, #C9B9D2 100%);
}

.home-page .body-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -105px;
  left: -5%;
  width: 110%;
  height: 210px;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  background: var(--off-white);
}

.home-page .body-section::after {
  right: -30px;
  top: 12%;
  width: 280px;
  opacity: .045;
}

.home-page .body-section .split-heading {
  grid-template-columns: 1.2fr .55fr;
  align-items: end;
  margin-bottom: 90px;
}

.home-page .body-explorer {
  grid-template-columns: minmax(310px, .65fr) minmax(680px, 1.35fr);
  gap: clamp(58px, 7vw, 112px);
  align-items: start;
}

.home-page .body-map-panel {
  position: sticky;
  top: 112px;
  min-height: 700px;
  border: 0;
  background: transparent;
  overflow: visible;
}

.home-page .body-map-panel::before {
  content: "";
  position: absolute;
  inset: 10% 5% 11%;
  border-radius: 50%;
  border: 1px solid rgb(116 85 124 / 18%);
  box-shadow: 0 0 0 42px rgb(241 237 243 / 10%), 0 0 0 90px rgb(241 237 243 / 7%);
}

.home-page .body-map {
  width: min(78%, 320px);
  color: var(--aubergine);
  filter: drop-shadow(0 24px 40px rgb(64 43 79 / 12%));
}

.home-page .body-map-points circle {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform .32s ease, fill .32s ease, filter .32s ease;
}

.home-page .body-map-points circle.is-active {
  fill: var(--off-white);
  transform: scale(1.7);
  filter: drop-shadow(0 0 9px var(--purple));
}

.home-page .body-map-note {
  border: 1px solid rgb(64 43 79 / 14%);
  border-radius: 999px;
  padding: 9px 15px;
  background: rgb(241 237 243 / 42%);
  backdrop-filter: blur(8px);
}

.home-page .body-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 34px;
  border: 0;
  background: transparent;
}

.home-page .body-area-card {
  position: relative;
  min-height: 270px;
  display: grid;
  grid-template-columns: minmax(118px, .8fr) minmax(130px, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 28px 0;
  border: 0;
  border-bottom: 1px solid rgb(64 43 79 / 18%);
  background: transparent;
  overflow: visible;
}

.home-page .body-area-card:nth-child(2),
.home-page .body-area-card:nth-child(4),
.home-page .body-area-card:nth-child(6) {
  transform: translateY(72px);
}

.home-page .body-area-card:last-child {
  grid-column: 1 / -1;
  width: calc(50% - 17px);
  min-height: 245px;
  margin-top: 72px;
}

.body-area-anatomy {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  aspect-ratio: 1.08;
}

.body-area-anatomy::before {
  content: "";
  position: absolute;
  inset: 20%;
  border-radius: 50%;
  background: rgb(164 140 181 / 18%);
  filter: blur(16px);
  opacity: 0;
  transform: scale(.72);
  transition: opacity .4s ease, transform .5s ease;
}

.body-area-anatomy svg {
  position: relative;
  z-index: 1;
  width: 145%;
  max-width: 230px;
  height: auto;
  overflow: visible;
  filter: drop-shadow(0 18px 24px rgb(64 43 79 / 11%));
  transform: scale(.92);
  transition: transform .5s cubic-bezier(.2,.7,.2,1), filter .5s ease;
}

.home-page .body-area-index {
  position: absolute;
  top: 29px;
  right: 3px;
  color: rgb(64 43 79 / 42%);
}

.home-page .body-area-copy {
  align-self: end;
  padding-bottom: 12px;
}

.home-page .body-area-copy strong {
  font-size: clamp(1.25rem, 1.65vw, 1.75rem);
  font-weight: 400;
}

.home-page .body-area-copy small {
  max-width: 24ch;
  color: rgb(64 43 79 / 58%);
  font-size: .72rem;
  line-height: 1.6;
}

.home-page .body-area-card > svg {
  align-self: end;
  margin-bottom: 17px;
  transition: transform .3s ease;
}

.home-page .body-area-card:hover,
.home-page .body-area-card:focus-visible {
  background: transparent;
  color: var(--aubergine);
}

.home-page .body-area-card:hover .body-area-anatomy::before,
.home-page .body-area-card:focus-visible .body-area-anatomy::before {
  opacity: 1;
  transform: scale(1.08);
}

.home-page .body-area-card:hover .body-area-anatomy svg,
.home-page .body-area-card:focus-visible .body-area-anatomy svg {
  transform: translateY(-5px) scale(1.02);
  filter: drop-shadow(0 20px 30px rgb(116 85 124 / 30%));
}

.home-page .body-area-card:hover > svg,
.home-page .body-area-card:focus-visible > svg {
  transform: translate(3px, -3px);
}

.home-page .philosophy-section {
  position: relative;
  isolation: isolate;
  padding: 145px 0 160px;
  overflow: hidden;
}

.home-page .philosophy-section::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    radial-gradient(circle at 50% 70%, rgb(164 140 181 / 15%), transparent 33%),
    linear-gradient(180deg, transparent, rgb(116 85 124 / 8%));
}

.home-page .philosophy-heading {
  max-width: 900px;
  margin-bottom: 105px;
}

.home-page .process-grid {
  position: relative;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(38px, 6vw, 92px);
  background: transparent;
  overflow: visible;
}

.home-page .process-grid::before {
  content: "";
  position: absolute;
  top: 68px;
  left: 12%;
  width: 76%;
  height: 90px;
  border-top: 1px solid rgb(201 185 210 / 40%);
  border-radius: 50%;
  transform: rotate(-2deg);
}

.home-page .process-grid::after {
  content: "";
  position: absolute;
  top: 59px;
  left: 49%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--pale-lavender);
  box-shadow: -29vw 15px 0 rgb(164 140 181 / 70%), 29vw -7px 0 rgb(164 140 181 / 70%);
}

.home-page .process-card {
  position: relative;
  z-index: 1;
  min-height: 330px;
  padding: 0 8px;
  border: 0;
  background: transparent;
}

.home-page .process-card::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 0;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background: rgb(201 185 210 / 8%);
  border: 1px solid rgb(201 185 210 / 16%);
}

.home-page .process-number {
  position: relative;
  z-index: 2;
  margin-bottom: 57px;
  color: var(--pale-lavender);
  font-size: .72rem;
  letter-spacing: .16em;
}

.home-page .process-card > svg {
  position: absolute;
  z-index: 2;
  top: 61px;
  left: 32px;
  color: var(--off-white);
}

.home-page .process-card h3 {
  font-size: clamp(2.4rem, 4vw, 4.4rem);
  font-weight: 300;
}

.home-page .process-card p {
  max-width: 34ch;
  color: rgb(241 237 243 / 64%);
  line-height: 1.75;
}

.home-page .science-section {
  position: relative;
  isolation: isolate;
  padding: 165px 0 175px;
  background: var(--off-white);
  overflow: hidden;
}

.home-page .science-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -75px;
  right: -8%;
  width: 62%;
  height: 420px;
  border-radius: 50%;
  border: 1px solid rgb(116 85 124 / 12%);
  box-shadow: 0 0 0 46px rgb(164 140 181 / 4%), 0 0 0 100px rgb(164 140 181 / 3%);
  transform: rotate(-12deg);
}

.home-page .science-layout {
  grid-template-columns: minmax(330px, .7fr) minmax(620px, 1.3fr);
  gap: clamp(70px, 9vw, 145px);
  align-items: start;
}

.home-page .science-copy {
  top: 130px;
}

.home-page .science-content {
  position: relative;
  padding-top: 115px;
}

.science-micrograph {
  position: absolute;
  top: -65px;
  right: -40px;
  width: 330px;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid rgb(116 85 124 / 15%);
  background: radial-gradient(circle at 40% 35%, rgb(201 185 210 / 28%), rgb(164 140 181 / 8%) 43%, transparent 70%);
  animation: micrograph-float 18s ease-in-out infinite alternate;
}

.science-micrograph span {
  position: absolute;
  width: 38px;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid rgb(116 85 124 / 24%);
  background: rgb(241 237 243 / 55%);
  box-shadow: inset 0 0 0 8px rgb(164 140 181 / 9%);
}

.science-micrograph span:nth-child(1) { top: 18%; left: 23%; width: 52px; }
.science-micrograph span:nth-child(2) { top: 31%; right: 18%; width: 32px; }
.science-micrograph span:nth-child(3) { bottom: 23%; left: 18%; width: 29px; }
.science-micrograph span:nth-child(4) { bottom: 15%; right: 29%; width: 61px; }
.science-micrograph span:nth-child(5) { top: 48%; left: 46%; width: 41px; }

@keyframes micrograph-float {
  from { transform: translate3d(0, 0, 0) rotate(0); }
  to { transform: translate3d(-8px, 10px, 0) rotate(3deg); }
}

.home-page .stat-grid {
  position: relative;
  z-index: 2;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: rgb(241 237 243 / 62%);
  backdrop-filter: blur(12px);
}

.home-page .stat-grid > div {
  min-height: 155px;
  background: transparent;
}

.home-page .research-card {
  position: relative;
  grid-template-columns: 58px 1fr;
  margin-top: 58px;
  padding: 46px 48px 42px;
  border: 0;
  border-left: 4px solid var(--purple);
  background: rgb(201 185 210 / 24%);
  box-shadow: 0 28px 65px rgb(64 43 79 / 9%);
}

.home-page .research-card::after {
  content: "";
  position: absolute;
  top: 20px;
  right: 20px;
  width: 70px;
  height: 1px;
  background: var(--purple);
  box-shadow: 0 8px 0 rgb(116 85 124 / 34%), 0 16px 0 rgb(116 85 124 / 22%);
}

.home-page .research-card-icon {
  background: var(--aubergine);
  color: var(--off-white);
}

.home-page .treatments-section {
  position: relative;
  padding-block: 155px 165px;
  background: var(--off-white);
}

.home-page .treatment-grid {
  gap: 0;
  border-top: 1px solid var(--border);
}

.home-page .treatment-card {
  min-height: 520px;
  padding: 46px 38px;
  border: 0;
  border-right: 1px solid var(--border);
  background: transparent;
}

.home-page .treatment-card:last-child {
  border-right: 0;
}

.home-page .treatment-card:hover {
  background: rgb(201 185 210 / 16%);
}

.home-page .treatment-symbol {
  width: 82px;
  height: 94px;
  opacity: .5;
}

.home-page .partners-section {
  border-top: 1px solid var(--border);
  background: var(--off-white);
}

.home-page .partner-grid {
  border: 0;
  border-top: 1px solid var(--border);
}

.home-page .partner-placeholder {
  background: transparent;
}

@media (max-width: 1180px) {
  .home-page .hero { grid-template-columns: .9fr 1.1fr; padding-inline: 32px; }
  .home-page .hero h1 { font-size: clamp(4.3rem, 7vw, 6.5rem); }
  .home-page .body-explorer { grid-template-columns: 300px 1fr; gap: 48px; }
  .home-page .body-area-card { grid-template-columns: 115px 1fr auto; }
  .home-page .science-layout { grid-template-columns: .72fr 1.28fr; gap: 60px; }
}

@media (max-width: 980px) {
  .home-page .hero {
    grid-template-columns: 1fr;
    min-height: auto;
    padding: 90px 24px 0;
  }
  .home-page .hero-copy { max-width: 760px; padding-bottom: 0; }
  .home-page .hero-visual { min-height: 710px; margin: -30px auto 0; width: min(760px, 100%); }
  .hero-anatomy-stage { inset: 0 -3% -45px; }
  .home-page .body-section { margin-top: -25px; padding-top: 145px; }
  .home-page .body-section .split-heading { grid-template-columns: 1fr; }
  .home-page .body-explorer { grid-template-columns: 1fr; }
  .home-page .body-map-panel { position: relative; top: auto; min-height: 580px; }
  .home-page .body-map { width: 250px; }
  .home-page .body-card-grid { grid-template-columns: repeat(2, 1fr); }
  .home-page .body-area-card { min-height: 250px; }
  .home-page .process-grid::after { box-shadow: -27vw 15px 0 rgb(164 140 181 / 70%), 27vw -7px 0 rgb(164 140 181 / 70%); }
  .home-page .science-layout { grid-template-columns: 1fr; }
  .home-page .science-copy { position: static; max-width: 760px; }
  .home-page .science-content { padding-top: 105px; }
  .science-micrograph { right: 0; }
  .home-page .treatment-card { min-height: 420px; border-right: 0; border-bottom: 1px solid var(--border); }
}

@media (max-width: 720px) {
  .home-page .hero { padding: 58px 18px 0; }
  .home-page .hero h1 { font-size: clamp(3.7rem, 17vw, 5.4rem); }
  .home-page .hero-visual { min-height: 525px; margin-top: 10px; }
  .hero-anatomy-stage { inset: 0 -17% -35px -12%; }
  .home-page .anatomy-label { top: 29%; right: 0; }
  .home-page .hero-visual-caption { right: 0; bottom: 5%; }
  .home-page .body-section { padding: 115px 0 95px; }
  .home-page .body-section .split-heading { margin-bottom: 55px; }
  .home-page .body-map-panel { min-height: 450px; }
  .home-page .body-card-grid {
    display: flex;
    width: calc(100vw - 18px);
    gap: 14px;
    padding: 0 18px 18px 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
  }
  .home-page .body-area-card,
  .home-page .body-area-card:nth-child(2),
  .home-page .body-area-card:nth-child(4),
  .home-page .body-area-card:nth-child(6),
  .home-page .body-area-card:last-child {
    flex: 0 0 82vw;
    width: auto;
    min-width: 0;
    min-height: 300px;
    margin: 0;
    transform: none;
    padding: 26px 4px;
    scroll-snap-align: start;
  }
  .home-page .body-area-card { grid-template-columns: 46% 1fr auto; }
  .body-area-anatomy svg { width: 155%; }
  .home-page .philosophy-section { padding: 100px 0; }
  .home-page .philosophy-heading { margin-bottom: 70px; }
  .home-page .process-grid { grid-template-columns: 1fr; gap: 0; }
  .home-page .process-grid::before,
  .home-page .process-grid::after { display: none; }
  .home-page .process-card { min-height: auto; padding: 22px 0 55px 124px; border-bottom: 1px solid rgb(201 185 210 / 20%); }
  .home-page .process-card::before { top: 15px; }
  .home-page .process-card > svg { top: 48px; }
  .home-page .process-number { margin-bottom: 22px; }
  .home-page .process-card h3 { font-size: 2.7rem; }
  .home-page .science-section { padding: 105px 0; }
  .home-page .science-content { padding-top: 155px; }
  .science-micrograph { width: 260px; left: 50%; right: auto; transform: translateX(-50%); }
  .science-micrograph { animation: none; }
  .home-page .stat-grid { grid-template-columns: 1fr; }
  .home-page .research-card { grid-template-columns: 1fr; padding: 34px 26px; }
  .home-page .research-card > a { grid-column: 1; }
  .home-page .treatments-section { padding-block: 100px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-anatomy,
  .hero-anatomy-stage::before,
  .hero-tissue-strands span,
  .science-micrograph {
    animation: none !important;
  }
}

/* Stable two-tier header and clear split anatomical hero. */
html {
  scroll-padding-top: 365px;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  overflow: clip;
  background: #F1EDF3;
  border-bottom: 1px solid rgb(64 43 79 / 14%);
  box-shadow: 0 8px 28px rgb(64 43 79 / 5%);
  backdrop-filter: none;
}

.brand-masthead {
  max-height: none;
  opacity: 1;
  transition: none;
}

.nav-tier {
  background: #F1EDF3;
  backdrop-filter: none;
}

.home-page .hero {
  width: min(1440px, calc(100% - 64px));
  min-height: 760px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(60px, 7vw, 112px);
  padding: 72px 0 84px;
  overflow: hidden;
  background: var(--off-white);
}

.home-page .hero::before {
  display: none;
}

.home-page .hero-copy {
  z-index: 2;
  align-self: center;
  max-width: 620px;
  padding: 20px 0;
  background: var(--off-white);
}

.home-page .hero h1 {
  max-width: 650px;
  font-size: clamp(4.5rem, 6.4vw, 7.4rem);
}

.home-page .hero-intro {
  max-width: 560px;
}

.home-page .hero-visual {
  position: relative;
  align-self: stretch;
  min-height: 660px;
  margin: 0;
  padding-left: clamp(40px, 5vw, 76px);
  border-left: 1px solid rgb(64 43 79 / 13%);
  overflow: hidden;
}

.home-page .hero-visual::before {
  content: "";
  position: absolute;
  display: block;
  inset: 8% -14% 9% 7%;
  border-radius: 48% 52% 48% 52%;
  background: rgb(201 185 210 / 28%);
  opacity: .72;
}

.home-page .hero-visual::after {
  display: none;
}

.clear-anatomy-figure {
  position: relative;
  z-index: 1;
  height: 100%;
  min-height: 660px;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  margin: 0;
}

.clear-anatomy-art {
  min-height: 570px;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.clear-anatomy-art img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(100%, 610px);
  max-height: 620px;
  object-fit: contain;
  filter: drop-shadow(0 28px 36px rgb(64 43 79 / 15%));
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 5%, #000 92%, transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0, #000 5%, #000 92%, transparent 100%);
}

.clear-anatomy-caption {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 8px 28px;
  padding: 22px 0 0;
  border-top: 1px solid rgb(64 43 79 / 14%);
  color: var(--aubergine);
}

.clear-joint-key {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--purple);
  font-size: .62rem;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.clear-joint-key i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--purple);
  box-shadow: 0 0 0 5px rgb(116 85 124 / 13%);
}

.clear-anatomy-index {
  color: rgb(64 43 79 / 44%);
  font-size: .61rem;
  letter-spacing: .13em;
}

.clear-anatomy-caption p {
  grid-column: 1 / -1;
  margin: 0;
  font-size: .78rem;
  line-height: 1.45;
}

.home-page .body-section {
  margin-top: 0;
}

@media (max-width: 980px) {
  html { scroll-padding-top: 112px; }
  .site-header { overflow: visible; }
  .home-page .hero {
    width: min(100% - 48px, 900px);
    grid-template-columns: 1fr;
    gap: 58px;
    padding: 78px 0 70px;
  }
  .home-page .hero-copy {
    max-width: 760px;
    padding: 0;
  }
  .home-page .hero-visual {
    width: 100%;
    min-height: 650px;
    margin: 0;
    padding: 50px 0 0;
    border-top: 1px solid rgb(64 43 79 / 13%);
    border-left: 0;
  }
  .home-page .hero-visual::before { inset: 9% 8% 10%; }
  .clear-anatomy-figure { min-height: 600px; }
  .clear-anatomy-art { min-height: 510px; }
  .clear-anatomy-art img { max-height: 560px; }
}

@media (max-width: 720px) {
  .home-page .hero {
    width: calc(100% - 36px);
    gap: 46px;
    padding: 58px 0 54px;
  }
  .home-page .hero h1 {
    font-size: clamp(3.7rem, 17vw, 5.35rem);
  }
  .home-page .hero-visual {
    min-height: 510px;
    padding-top: 34px;
  }
  .clear-anatomy-figure { min-height: 475px; }
  .clear-anatomy-art { min-height: 385px; }
  .clear-anatomy-art img {
    max-width: 100%;
    max-height: 430px;
  }
  .clear-anatomy-caption {
    grid-template-columns: 1fr auto;
    padding-top: 18px;
  }
}

/* Attached concept alignment: dark REGEN anatomy and interactive medical atlas. */
.home-page .hero {
  width: 100%;
  min-height: 650px;
  grid-template-columns: minmax(420px, .82fr) minmax(620px, 1.18fr);
  gap: 0;
  padding: 0;
  padding-left: max(48px, calc((100vw - 1380px) / 2));
  background: #402B4F;
  color: var(--off-white);
  overflow: hidden;
}

.home-page .hero-copy {
  align-self: center;
  max-width: 650px;
  padding: 74px 68px 78px 0;
  background: #402B4F;
}

.home-page .hero .eyebrow {
  color: var(--pale-lavender);
}

.home-page .hero h1 {
  max-width: 650px;
  color: var(--off-white);
  font-size: clamp(4.25rem, 6vw, 7rem);
}

.home-page .hero h1 span {
  color: var(--soft-lavender, #A48CB5);
}

.home-page .hero-intro {
  color: rgb(241 237 243 / 76%);
}

.home-page .hero .button-primary {
  background: var(--lavender);
  color: var(--off-white);
}

.home-page .hero .button-primary:hover {
  background: var(--pale-lavender);
  color: var(--aubergine);
}

.home-page .hero .button-text,
.home-page .hero-note {
  color: var(--off-white);
}

.home-page .hero-note {
  border-top-color: rgb(201 185 210 / 22%);
}

.home-page .hero-note svg {
  color: var(--pale-lavender);
}

.home-page .hero-visual {
  min-height: 650px;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
}

.home-page .hero-visual::before,
.home-page .hero-visual::after {
  display: none;
}

.home-page .clear-anatomy-figure {
  position: relative;
  min-height: 650px;
  grid-template-rows: minmax(0, 1fr) auto;
}

.home-page .clear-anatomy-art {
  position: relative;
  min-height: 588px;
  overflow: hidden;
}

.home-page .clear-anatomy-art::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #402B4F 0%, rgb(64 43 79 / 68%) 9%, transparent 28%);
  pointer-events: none;
}

.home-page .clear-anatomy-art img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: 42% center;
  filter: none;
  -webkit-mask-image: none;
  mask-image: none;
  transition: transform 8s ease;
}

.home-page .hero:hover .clear-anatomy-art img {
  transform: scale(1.015);
}

.home-page .clear-anatomy-caption {
  position: relative;
  z-index: 2;
  grid-template-columns: 1fr auto auto;
  gap: 22px;
  padding: 18px 30px;
  border: 0;
  border-top: 1px solid rgb(201 185 210 / 24%);
  background: #402B4F;
  color: var(--off-white);
}

.home-page .clear-joint-key,
.home-page .clear-anatomy-index {
  color: var(--pale-lavender);
}

.home-page .clear-anatomy-caption p {
  grid-column: auto;
  color: rgb(241 237 243 / 74%);
  text-align: right;
}

.home-page .body-section {
  margin: 0;
  padding: 0;
  background: var(--pale-lavender);
}

.home-page .body-section::before,
.home-page .body-section::after {
  display: none;
}

.home-page .body-section > .section-shell {
  width: 100%;
}

.home-page .body-explorer {
  display: grid;
  grid-template-columns: minmax(240px, 19.5vw) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
}

.home-page .body-map-panel {
  position: relative;
  top: auto;
  min-height: 420px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 54px 34px 50px max(34px, calc((100vw - 1380px) / 2));
  border: 0;
  background:
    linear-gradient(90deg, rgb(201 185 210 / 45%), transparent),
    var(--off-white);
  overflow: hidden;
}

.home-page .body-map-panel::before {
  content: "";
  position: absolute;
  left: -68px;
  bottom: -92px;
  width: 210px;
  aspect-ratio: 1;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: url('/assets/regen-collagen-helix-new.png') center / contain no-repeat;
  opacity: .055;
}

.home-page .body-map-panel .section-heading {
  position: relative;
  z-index: 1;
  display: block;
  margin: 0 0 34px;
}

.home-page .body-map-panel .section-heading > div {
  display: block;
}

.home-page .body-map-panel .section-heading > p {
  max-width: 26ch;
  margin: 24px 0 0;
  color: var(--muted);
  font-size: .78rem;
  line-height: 1.7;
}

.home-page .body-map-panel h2 {
  font-size: clamp(2.35rem, 3.25vw, 3.7rem);
  line-height: 1.04;
}

.home-page .body-map-note {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--purple);
  backdrop-filter: none;
}

.home-page .body-card-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0;
  border: 0;
  background: #402B4F;
  overflow: visible;
}

.home-page .body-area-card,
.home-page .body-area-card:nth-child(2),
.home-page .body-area-card:nth-child(4),
.home-page .body-area-card:nth-child(6),
.home-page .body-area-card:last-child {
  --pain-x: 50%;
  --pain-y: 43%;
  position: relative;
  width: auto;
  min-width: 0;
  min-height: 420px;
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  border-left: 1px solid rgb(241 237 243 / 52%);
  background: #402B4F;
  color: var(--off-white);
  overflow: hidden;
  transform: none;
}

.home-page .body-area-card:nth-child(2) { --pain-x: 51%; --pain-y: 54%; }
.home-page .body-area-card:nth-child(3) { --pain-x: 49%; --pain-y: 50%; }
.home-page .body-area-card:nth-child(4) { --pain-x: 50%; --pain-y: 54%; }
.home-page .body-area-card:nth-child(5) { --pain-x: 52%; --pain-y: 56%; }
.home-page .body-area-card:nth-child(6) { --pain-x: 50%; --pain-y: 56%; }
.home-page .body-area-card:nth-child(7) { --pain-x: 50%; --pain-y: 62%; }

.home-page .body-area-card::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  background: radial-gradient(circle at var(--pain-x) var(--pain-y), rgb(201 185 210 / 18%) 0, rgb(164 140 181 / 8%) 11%, transparent 27%);
  opacity: .68;
  transition: opacity .45s ease, background .45s ease;
  pointer-events: none;
}

.home-page .body-area-card::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 45% 0 0;
  background: linear-gradient(to bottom, transparent, rgb(34 21 43 / 92%) 88%);
  pointer-events: none;
}

.home-page .body-area-anatomy {
  position: absolute;
  inset: 0;
  display: block;
  aspect-ratio: auto;
}

.home-page .body-area-anatomy::before {
  display: none;
}

.home-page .body-area-anatomy img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(.82) contrast(1.03);
  transform: scale(1.002);
  transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .5s ease;
}

.home-page .body-area-card:nth-child(7) .body-area-anatomy img {
  object-position: 58% center;
}

.home-page .body-area-index {
  z-index: 4;
  top: 18px;
  right: 16px;
  color: rgb(241 237 243 / 54%);
}

.home-page .body-area-copy {
  position: absolute;
  z-index: 4;
  left: 18px;
  right: 18px;
  bottom: 23px;
  display: block;
  padding: 0;
}

.home-page .body-area-copy strong {
  display: block;
  color: var(--off-white);
  font-size: clamp(.82rem, 1vw, 1rem);
  font-weight: 400;
  letter-spacing: .025em;
  text-transform: uppercase;
  transform: translateY(15px);
  transition: transform .42s ease;
}

.home-page .body-area-copy small {
  display: block;
  max-width: 22ch;
  margin-top: 9px;
  color: rgb(241 237 243 / 68%);
  font-size: .64rem;
  line-height: 1.55;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .35s ease, transform .42s ease;
}

.home-page .body-area-card > svg {
  position: absolute;
  z-index: 5;
  right: 16px;
  bottom: 24px;
  margin: 0;
  color: var(--off-white);
  opacity: .74;
  transition: opacity .35s ease, transform .35s ease;
}

.home-page .body-area-card:hover,
.home-page .body-area-card:focus-visible {
  color: var(--off-white);
  background: #402B4F;
}

.home-page .body-area-card:hover::before,
.home-page .body-area-card:focus-visible::before {
  opacity: 1;
  background: radial-gradient(circle at var(--pain-x) var(--pain-y), rgb(241 237 243 / 28%) 0, rgb(164 140 181 / 20%) 13%, transparent 31%);
}

.home-page .body-area-card:hover .body-area-anatomy img,
.home-page .body-area-card:focus-visible .body-area-anatomy img {
  filter: saturate(1) contrast(1.06) brightness(1.08);
  transform: scale(1.04);
}

.home-page .body-area-card:hover .body-area-copy strong,
.home-page .body-area-card:focus-visible .body-area-copy strong,
.home-page .body-area-card:hover .body-area-copy small,
.home-page .body-area-card:focus-visible .body-area-copy small {
  opacity: 1;
  transform: translateY(0);
}

.home-page .body-area-card:hover > svg,
.home-page .body-area-card:focus-visible > svg {
  opacity: 1;
  transform: translateX(4px);
}

.home-page .philosophy-section {
  padding: 94px 0 110px;
  background: #402B4F;
}

.home-page .philosophy-section > .section-shell {
  display: grid;
  grid-template-columns: minmax(220px, .62fr) minmax(0, 2.38fr);
  gap: clamp(58px, 7vw, 112px);
  align-items: center;
}

.home-page .philosophy-heading {
  max-width: 320px;
  margin: 0;
}

.home-page .philosophy-heading h2 {
  font-size: clamp(3rem, 4.3vw, 5.1rem);
}

.home-page .process-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(32px, 4vw, 68px);
  align-items: start;
}

.home-page .process-grid::before {
  top: 83px;
  left: 15%;
  width: 70%;
  height: 1px;
  border: 0;
  border-top: 1px solid rgb(201 185 210 / 34%);
  border-radius: 0;
  transform: none;
}

.home-page .process-grid::after {
  top: 78px;
  box-shadow: -22vw 0 0 rgb(164 140 181 / 75%), 22vw 0 0 rgb(164 140 181 / 75%);
}

.home-page .process-card {
  min-height: 390px;
  padding: 0;
}

.home-page .process-card::before,
.home-page .process-card > svg {
  display: none;
}

.process-anatomy {
  position: relative;
  z-index: 2;
  width: 168px;
  aspect-ratio: 1;
  display: block;
  margin-bottom: 26px;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 0 0 1px rgb(201 185 210 / 24%), 0 0 44px rgb(164 140 181 / 12%);
}

.process-anatomy img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s ease, filter .5s ease;
}

.home-page .process-card:hover .process-anatomy img {
  transform: scale(1.035);
  filter: brightness(1.1);
}

.home-page .process-number {
  margin: 0 0 10px;
}

.home-page .process-card h3 {
  margin-bottom: 14px;
  font-size: clamp(1.5rem, 2vw, 2.25rem);
  text-transform: uppercase;
  letter-spacing: -.02em;
}

.home-page .process-card p {
  max-width: 29ch;
  font-size: .76rem;
}

@media (max-width: 1180px) {
  .home-page .hero {
    grid-template-columns: minmax(370px, .85fr) minmax(540px, 1.15fr);
    padding-left: 32px;
  }
  .home-page .hero-copy { padding-right: 42px; }
  .home-page .body-explorer { grid-template-columns: 250px 1fr; }
  .home-page .body-map-panel { padding-left: 32px; }
  .home-page .body-card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .home-page .body-area-card,
  .home-page .body-area-card:nth-child(2),
  .home-page .body-area-card:nth-child(4),
  .home-page .body-area-card:nth-child(6),
  .home-page .body-area-card:last-child { min-height: 390px; }
  .home-page .philosophy-section > .section-shell { grid-template-columns: 1fr; }
  .home-page .philosophy-heading { max-width: 720px; }
  .home-page .process-grid::after { box-shadow: -28vw 0 0 rgb(164 140 181 / 75%), 28vw 0 0 rgb(164 140 181 / 75%); }
}

@media (max-width: 980px) {
  .home-page .hero {
    width: 100%;
    grid-template-columns: 1fr;
    gap: 0;
    padding: 0;
  }
  .home-page .hero-copy {
    max-width: none;
    padding: 72px 48px 64px;
  }
  .home-page .hero-visual {
    min-height: 560px;
    padding: 0;
    border: 0;
  }
  .home-page .clear-anatomy-figure { min-height: 560px; }
  .home-page .clear-anatomy-art { min-height: 500px; }
  .home-page .clear-anatomy-caption { padding-inline: 48px; }
  .home-page .body-explorer { grid-template-columns: 1fr; }
  .home-page .body-map-panel {
    min-height: auto;
    padding: 72px 48px 58px;
  }
  .home-page .body-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .home-page .hero-copy { padding: 58px 18px 52px; }
  .home-page .hero-visual { min-height: 455px; }
  .home-page .clear-anatomy-figure { min-height: 455px; }
  .home-page .clear-anatomy-art { min-height: 390px; }
  .home-page .clear-anatomy-art img { object-position: 36% center; }
  .home-page .clear-anatomy-caption {
    grid-template-columns: 1fr auto;
    gap: 7px 18px;
    padding: 17px 18px;
  }
  .home-page .clear-anatomy-caption p {
    grid-column: 1 / -1;
    text-align: left;
  }
  .home-page .body-map-panel { padding: 62px 18px 48px; }
  .home-page .body-card-grid {
    display: flex;
    width: 100%;
    gap: 0;
    padding: 0 12vw 0 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .home-page .body-card-grid::-webkit-scrollbar { display: none; }
  .home-page .body-area-card,
  .home-page .body-area-card:nth-child(2),
  .home-page .body-area-card:nth-child(4),
  .home-page .body-area-card:nth-child(6),
  .home-page .body-area-card:last-child {
    flex: 0 0 82vw;
    min-height: 510px;
    scroll-snap-align: start;
    border-left: 1px solid rgb(241 237 243 / 45%);
  }
  .home-page .body-area-copy strong { transform: translateY(0); }
  .home-page .body-area-copy small { opacity: .78; transform: translateY(0); }
  .home-page .philosophy-section { padding: 82px 0 90px; }
  .home-page .process-grid { grid-template-columns: 1fr; gap: 46px; }
  .home-page .process-card { min-height: auto; padding: 0 0 38px 0; }
  .process-anatomy { width: 150px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .clear-anatomy-art img,
  .home-page .body-area-anatomy img,
  .process-anatomy img {
    transition: none !important;
  }
}

/* Two-state collapsing header with a permanent layout spacer and hysteresis. */
:root {
  --regen-header-full-height: 360px;
  --regen-header-compact-height: 68px;
}

html {
  scroll-padding-top: 88px;
}

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1200;
  width: 100%;
  height: var(--regen-header-full-height);
  overflow: hidden;
  background: #F1EDF3;
  box-shadow: 0 8px 28px rgb(64 43 79 / 5%);
  transition: height .3s cubic-bezier(.22,.72,.24,1);
  will-change: height;
}

.site-header-spacer {
  width: 100%;
  height: var(--regen-header-full-height);
  background: #F1EDF3;
}

.brand-masthead {
  position: absolute;
  inset: 0 0 auto;
  height: calc(var(--regen-header-full-height) - var(--regen-header-compact-height));
  max-height: none;
  padding: 22px 24px 18px;
  overflow: hidden;
  opacity: 1;
  transform: translateY(0);
  transition: opacity .2s ease, transform .3s cubic-bezier(.22,.72,.24,1);
  will-change: opacity, transform;
}

.nav-tier {
  position: absolute;
  inset: auto 0 0;
  height: var(--regen-header-compact-height);
  background: #F1EDF3;
  border-top: 1px solid rgb(64 43 79 / 12%);
  box-shadow: none;
  transition: box-shadow .2s ease;
}

.nav-tier-inner {
  height: 100%;
  min-height: 0;
}

.site-header.is-compact {
  height: var(--regen-header-compact-height);
  box-shadow: 0 10px 30px rgb(64 43 79 / 9%);
}

.site-header.is-compact .brand-masthead {
  opacity: 0;
  transform: translateY(-18px);
  pointer-events: none;
}

.site-header.is-compact .nav-tier {
  box-shadow: 0 1px 0 rgb(64 43 79 / 8%);
}

@media (max-width: 980px) {
  :root {
    --regen-header-full-height: 218px;
    --regen-header-compact-height: 66px;
  }

  html {
    scroll-padding-top: 78px;
  }

  .site-header {
    overflow: visible;
  }

  .brand-masthead {
    display: grid;
    height: calc(var(--regen-header-full-height) - var(--regen-header-compact-height));
    align-content: center;
    gap: 7px;
    padding: 10px 16px 8px;
  }

  .brand-masthead .logo--large {
    max-width: 138px;
  }

  .service-line {
    max-width: 340px;
    text-align: center;
    font-size: .48rem;
    line-height: 1.55;
    letter-spacing: .1em;
  }

  .nav-tier {
    height: var(--regen-header-compact-height);
    border-top: 1px solid rgb(64 43 79 / 10%);
  }

  .nav-tier-inner {
    width: calc(100vw - 28px);
    height: 100%;
    min-height: 0;
    grid-template-columns: 1fr auto auto;
  }

  .compact-brand {
    display: block;
    grid-column: 1;
    justify-self: start;
    max-width: 74px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease;
  }

  .compact-brand .logo--compact {
    max-width: 74px;
  }

  .site-header.is-compact .compact-brand {
    opacity: 1;
    pointer-events: auto;
  }

  .mobile-header-cta {
    grid-column: 2;
  }

  .menu-toggle {
    grid-column: 3;
  }
}

@media (max-width: 560px) {
  :root {
    --regen-header-full-height: 198px;
    --regen-header-compact-height: 62px;
  }

  html {
    scroll-padding-top: 72px;
  }

  .brand-masthead .logo--large {
    max-width: 120px;
  }

  .service-line {
    max-width: 290px;
    font-size: .45rem;
    letter-spacing: .075em;
  }

  .nav-tier-inner {
    width: calc(100vw - 24px);
    gap: 10px;
  }

  .compact-brand,
  .compact-brand .logo--compact {
    max-width: 66px;
  }

  .mobile-header-cta {
    min-height: 34px;
    padding-inline: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header,
  .brand-masthead,
  .nav-tier,
  .compact-brand {
    transition: none !important;
  }
}

/* Final approved anatomy and treatment pathway artwork. */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.approved-anatomy-section {
  width: 100%;
  padding: clamp(12px, 1.8vw, 28px) 0;
  background: #140D20;
  overflow: hidden;
}

.approved-anatomy-scroll {
  width: 100%;
  overflow: visible;
}

.approved-anatomy-figure {
  position: relative;
  width: min(100%, 1774px);
  max-width: 1774px;
  margin: 0 auto;
  isolation: isolate;
}

.approved-anatomy-figure img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

.anatomy-hotspot-layer {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 69.9%;
  pointer-events: none;
}

.anatomy-hotspot {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--hotspot-left);
  width: var(--hotspot-width);
  pointer-events: auto;
}

.anatomy-hotspot::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(180deg, rgb(164 140 181 / 7%), rgb(116 85 124 / 20%));
  opacity: 0;
  transition: opacity 240ms ease;
  pointer-events: none;
}

.anatomy-hotspot-trigger {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.anatomy-hotspot-trigger:focus-visible {
  outline: 2px solid var(--pale-lavender);
  outline-offset: -4px;
}

.anatomy-condition-overlay {
  position: absolute;
  z-index: 3;
  inset: 6% 5% 7%;
  display: flex;
  flex-direction: column;
  padding: clamp(10px, 1.05vw, 18px) clamp(8px, .85vw, 14px);
  border: 1px solid rgb(201 185 210 / 22%);
  background: linear-gradient(180deg, rgb(64 43 79 / 78%), rgb(31 19 42 / 88%));
  color: var(--off-white);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  pointer-events: none;
  backdrop-filter: blur(5px);
  transition: opacity 240ms ease, visibility 240ms ease;
}

.anatomy-condition-overlay strong {
  color: var(--off-white);
  font-size: clamp(.72rem, 1vw, 1.12rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.anatomy-condition-overlay > span {
  margin-top: clamp(8px, .75vw, 13px);
  color: var(--pale-lavender);
  font-size: clamp(.5rem, .52vw, .62rem);
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.anatomy-condition-overlay ul {
  display: grid;
  gap: clamp(4px, .42vw, 7px);
  margin: clamp(8px, .7vw, 12px) 0 10px;
}

.anatomy-condition-overlay li {
  position: relative;
  padding-left: 9px;
  color: rgb(241 237 243 / 88%);
  font-size: clamp(.55rem, .57vw, .68rem);
  line-height: 1.3;
}

.anatomy-condition-overlay li::before {
  content: "";
  position: absolute;
  top: .48em;
  left: 0;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--pale-lavender);
}

.anatomy-condition-overlay a {
  width: fit-content;
  margin-top: auto;
  color: var(--off-white);
  font-size: clamp(.52rem, .55vw, .66rem);
  font-weight: 500;
  letter-spacing: .07em;
  line-height: 1.25;
  text-transform: uppercase;
  pointer-events: auto;
}

.anatomy-condition-overlay a:hover,
.anatomy-condition-overlay a:focus-visible {
  color: var(--pale-lavender);
}

.anatomy-hotspot.is-active::before,
.anatomy-hotspot.is-active .anatomy-condition-overlay {
  opacity: 1;
  visibility: visible;
}

.anatomy-hotspot.is-active .anatomy-condition-overlay {
  pointer-events: auto;
}

@media (hover: hover) and (pointer: fine) {
  .anatomy-hotspot:hover::before,
  .anatomy-hotspot:hover .anatomy-condition-overlay {
    opacity: 1;
    visibility: visible;
  }

  .anatomy-hotspot:hover .anatomy-condition-overlay {
    pointer-events: auto;
  }
}

@media (max-width: 640px) {
  .approved-anatomy-section {
    padding-block: 10px;
  }

  .approved-anatomy-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    scrollbar-color: rgb(201 185 210 / 45%) transparent;
    -webkit-overflow-scrolling: touch;
  }

  .approved-anatomy-scroll:focus-visible {
    outline: 2px solid var(--pale-lavender);
    outline-offset: -2px;
  }

  .approved-anatomy-figure {
    width: 1120px;
    min-width: 1120px;
    max-width: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .anatomy-hotspot::before,
  .anatomy-condition-overlay {
    transition: none;
  }
}

/* Shared multi-page Liverpool Street REGEN system. */
.nav-links a.is-active,
.nav-links a[aria-current="page"] {
  color: var(--aubergine);
}

.nav-links a.is-active::after,
.nav-links a[aria-current="page"]::after {
  width: 100%;
}

.desktop-header-cta a[aria-current="page"],
.mobile-header-cta[aria-current="page"] {
  box-shadow: inset 0 0 0 1px rgb(201 185 210 / 55%);
}

.inner-page {
  background: var(--off-white);
  overflow: clip;
}

.inner-hero {
  position: relative;
  isolation: isolate;
  min-height: 560px;
  display: grid;
  align-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 42%, rgb(164 140 181 / 18%), transparent 28%),
    linear-gradient(135deg, #402B4F 0%, #291834 100%);
  color: var(--off-white);
}

.inner-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -4vw;
  bottom: -28%;
  width: min(520px, 42vw);
  aspect-ratio: 1;
  background: url('/assets/regen-collagen-helix-new.png') center / contain no-repeat;
  filter: brightness(2.6);
  opacity: .045;
  transform: rotate(7deg);
}

.inner-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
  gap: clamp(54px, 8vw, 130px);
  align-items: center;
  padding-block: clamp(82px, 9vw, 132px);
}

.inner-hero-copy {
  max-width: 900px;
}

.inner-hero h1 {
  max-width: 980px;
  margin: 0 0 30px;
  color: var(--off-white);
  font-size: clamp(4rem, 7.2vw, 8.2rem);
  font-weight: 300;
  line-height: .94;
  letter-spacing: -.055em;
}

.inner-hero-copy > p:last-child {
  max-width: 710px;
  margin: 0;
  color: rgb(241 237 243 / 74%);
  font-size: clamp(.92rem, 1.25vw, 1.08rem);
  line-height: 1.82;
}

.inner-hero-copy > p:last-child strong {
  color: var(--pale-lavender);
  font-weight: 500;
  letter-spacing: .04em;
}

.inner-hero-mark {
  display: grid;
  place-items: center;
}

.inner-hero-mark img {
  width: min(330px, 70%);
  height: auto;
  filter: brightness(3);
  opacity: .14;
}

.portrait-placeholder {
  min-height: 470px;
  display: grid;
  place-items: end start;
  padding: 30px;
  border: 1px solid rgb(201 185 210 / 24%);
  background:
    linear-gradient(180deg, transparent 45%, rgb(32 19 42 / 78%)),
    radial-gradient(circle at 50% 35%, rgb(201 185 210 / 20%), transparent 28%),
    #34213f;
}

.portrait-placeholder span {
  max-width: 24ch;
  color: rgb(241 237 243 / 65%);
  font-size: .66rem;
  letter-spacing: .12em;
  line-height: 1.6;
  text-transform: uppercase;
}

.editorial-section,
.interest-section,
.research-index,
.consultation-section,
.legal-content {
  padding-block: clamp(90px, 10vw, 152px);
}

.editorial-split {
  display: grid;
  grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr);
  gap: clamp(60px, 10vw, 160px);
  align-items: start;
}

.editorial-split h2,
.interest-section h2,
.research-index h2,
.consultation-intro h2,
.condition-placeholder h2 {
  margin: 0;
  color: var(--aubergine);
  font-size: clamp(3rem, 5.6vw, 6.5rem);
  font-weight: 300;
  line-height: .98;
  letter-spacing: -.045em;
}

.editorial-copy {
  display: grid;
  gap: 24px;
  padding-top: 8px;
}

.editorial-copy p,
.consultation-intro > p,
.condition-placeholder > div > p {
  max-width: 680px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(.9rem, 1.1vw, 1rem);
  line-height: 1.85;
}

.dark-editorial-section,
.credentials-section {
  position: relative;
  padding-block: clamp(96px, 11vw, 168px);
  overflow: hidden;
  background: #402B4F;
  color: var(--off-white);
}

.dark-editorial-section h2,
.credentials-section h2 {
  color: var(--off-white);
}

.dark-editorial-section .section-heading > p,
.credentials-section .editorial-copy p {
  color: rgb(241 237 243 / 68%);
}

.pathway-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(62px, 7vw, 104px);
  background: rgb(201 185 210 / 24%);
}

.pathway-grid article {
  min-height: 330px;
  padding: clamp(34px, 4vw, 58px);
  background: #402B4F;
}

.pathway-grid span,
.treatment-overview-card > span,
.research-topic-grid article > span,
.patient-topic-list article > span,
.placeholder-stack article > span {
  color: var(--soft-purple, #A48CB5);
  font-size: .66rem;
  letter-spacing: .14em;
}

.pathway-grid h3 {
  margin: 82px 0 18px;
  color: var(--off-white);
  font-size: clamp(2rem, 3vw, 3.6rem);
  font-weight: 300;
  text-transform: uppercase;
}

.pathway-grid p {
  max-width: 34ch;
  margin: 0;
  color: rgb(241 237 243 / 66%);
  font-size: .8rem;
  line-height: 1.75;
}

.interest-section {
  background: var(--pale-lavender);
}

.interest-section h2 {
  max-width: 980px;
}

.interest-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: clamp(58px, 7vw, 96px);
  border-top: 1px solid rgb(64 43 79 / 22%);
}

.interest-grid > div {
  min-height: 170px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 26px;
  padding: 24px 22px 28px;
  border-right: 1px solid rgb(64 43 79 / 18%);
  border-bottom: 1px solid rgb(64 43 79 / 18%);
}

.interest-grid > div:nth-child(4n) {
  border-right: 0;
}

.interest-grid span {
  color: var(--purple);
  font-size: .62rem;
}

.interest-grid strong {
  color: var(--aubergine);
  font-size: clamp(1.05rem, 1.45vw, 1.38rem);
  font-weight: 400;
}

.credential-placeholder {
  padding: clamp(34px, 4vw, 56px);
  border: 1px solid rgb(201 185 210 / 24%);
  background: rgb(241 237 243 / 5%);
}

.credential-placeholder p {
  margin: 0 0 20px;
  color: rgb(241 237 243 / 70%);
  line-height: 1.8;
}

.credential-placeholder p:last-child {
  margin-bottom: 0;
}

.inner-cta {
  min-height: 560px;
  display: grid;
  align-items: center;
  background:
    radial-gradient(circle at 82% 50%, rgb(164 140 181 / 18%), transparent 25%),
    #281733;
  color: var(--off-white);
  text-align: center;
}

.inner-cta-content {
  display: grid;
  justify-items: center;
  padding-block: 100px;
}

.inner-cta h2 {
  max-width: 980px;
  margin: 0 0 24px;
  color: var(--off-white);
  font-size: clamp(3.7rem, 7vw, 7.8rem);
  font-weight: 300;
  line-height: .95;
  letter-spacing: -.055em;
}

.inner-cta p:not(.eyebrow) {
  max-width: 620px;
  margin: 0 0 34px;
  color: rgb(241 237 243 / 68%);
  line-height: 1.8;
}

.treatment-overview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(62px, 7vw, 100px);
  background: rgb(116 85 124 / 24%);
}

.treatment-overview-card {
  min-height: 390px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  padding: clamp(34px, 4vw, 56px);
  background: var(--off-white);
}

.treatment-overview-card h3,
.research-topic-grid h3,
.patient-topic-list h3,
.placeholder-stack h3 {
  margin: 18px 0 14px;
  color: var(--aubergine);
  font-size: clamp(1.6rem, 2.5vw, 2.7rem);
  font-weight: 300;
  line-height: 1.05;
}

.treatment-overview-card p,
.research-topic-grid p,
.patient-topic-list p,
.placeholder-stack p {
  color: var(--muted);
  font-size: .78rem;
  line-height: 1.75;
}

.treatment-overview-card small {
  color: var(--purple);
  font-size: .62rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.research-index {
  background: var(--pale-lavender);
}

.research-topic-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(58px, 7vw, 96px);
  background: rgb(64 43 79 / 18%);
}

.research-topic-grid article {
  min-height: 280px;
  padding: clamp(28px, 3.4vw, 48px);
  background: var(--off-white);
}

.patient-topic-list {
  margin-top: clamp(58px, 7vw, 96px);
  border-top: 1px solid var(--border);
}

.patient-topic-list article {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 26px;
  align-items: center;
  padding-block: 30px;
  border-bottom: 1px solid var(--border);
}

.patient-topic-list h3 {
  margin-top: 0;
}

.patient-topic-list p {
  margin: 0;
}

.consultation-layout {
  display: grid;
  grid-template-columns: minmax(300px, .75fr) minmax(520px, 1.25fr);
  gap: clamp(60px, 9vw, 138px);
  align-items: start;
}

.consultation-intro {
  position: sticky;
  top: 120px;
}

.consultation-intro > p {
  margin-top: 28px;
}

.notice-panel {
  margin-top: 44px;
  padding: 24px;
  border-left: 2px solid var(--purple);
  background: var(--pale-lavender);
}

.notice-panel strong {
  color: var(--aubergine);
  font-size: .68rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.notice-panel p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: .76rem;
  line-height: 1.65;
}

.legal-layout {
  display: grid;
  grid-template-columns: 240px minmax(0, 760px);
  gap: clamp(60px, 10vw, 160px);
  justify-content: center;
  align-items: start;
}

.legal-layout aside {
  position: sticky;
  top: 120px;
  padding: 24px;
  border-left: 2px solid var(--purple);
  background: var(--pale-lavender);
}

.legal-layout aside strong {
  color: var(--aubergine);
  font-size: .68rem;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.legal-layout aside p {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: .72rem;
  line-height: 1.65;
}

.legal-layout section {
  padding: 0 0 42px;
  margin-bottom: 42px;
  border-bottom: 1px solid var(--border);
}

.legal-layout section:last-child {
  margin-bottom: 0;
}

.legal-layout h2 {
  margin: 0 0 18px;
  color: var(--aubergine);
  font-size: clamp(2rem, 3vw, 3rem);
  font-weight: 300;
}

.legal-layout section p {
  margin: 0;
  color: var(--muted);
  line-height: 1.85;
}

.condition-placeholder {
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
  gap: clamp(60px, 9vw, 130px);
}

.placeholder-stack {
  border-top: 1px solid var(--border);
}

.placeholder-stack article {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  padding: 24px 0;
  border-bottom: 1px solid var(--border);
}

.placeholder-stack h3 {
  margin-top: 0;
}

.placeholder-stack p {
  margin: 0;
}

@media (max-width: 980px) {
  .inner-hero-grid,
  .editorial-split,
  .consultation-layout,
  .condition-placeholder {
    grid-template-columns: 1fr;
  }

  .inner-hero-mark {
    display: none;
  }

  .portrait-placeholder {
    min-height: 560px;
  }

  .editorial-split,
  .condition-placeholder {
    gap: 48px;
  }

  .interest-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .interest-grid > div:nth-child(4n) {
    border-right: 1px solid rgb(64 43 79 / 18%);
  }

  .interest-grid > div:nth-child(2n) {
    border-right: 0;
  }

  .research-topic-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .consultation-intro,
  .legal-layout aside {
    position: static;
  }
}

@media (max-width: 720px) {
  .inner-hero {
    min-height: 500px;
  }

  .inner-hero-grid {
    padding-block: 72px;
  }

  .inner-hero h1 {
    font-size: clamp(3.5rem, 15vw, 5.4rem);
  }

  .portrait-placeholder {
    min-height: 430px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }

  .pathway-grid,
  .treatment-overview-grid,
  .research-topic-grid {
    grid-template-columns: 1fr;
  }

  .pathway-grid article {
    min-height: 270px;
  }

  .pathway-grid h3 {
    margin-top: 54px;
  }

  .interest-grid {
    grid-template-columns: 1fr;
  }

  .interest-grid > div,
  .interest-grid > div:nth-child(2n),
  .interest-grid > div:nth-child(4n) {
    border-right: 0;
  }

  .patient-topic-list article {
    grid-template-columns: 44px minmax(0, 1fr);
  }

  .consultation-section .contact-form-panel {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }

  .legal-layout {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

/* Stable full-header offset for every internal route. */
.inner-page,
.contact-page,
.contact-thanks {
  padding-top: var(--regen-header-full-height);
}

/* Expanded Chris Curtis profile with a tighter editorial rhythm. */
.about-page .inner-hero {
  min-height: 500px;
}

.about-page .inner-hero-grid {
  padding-block: clamp(54px, 6vw, 84px);
}

.about-page .portrait-placeholder {
  min-height: 400px;
}

.inner-hero-actions {
  margin-top: 30px;
}

.about-page .editorial-section,
.about-page .interest-section {
  padding-block: clamp(72px, 8vw, 112px);
}

.about-page .dark-editorial-section,
.about-page .credentials-section {
  padding-block: clamp(78px, 9vw, 124px);
}

.about-experience-layout {
  display: grid;
  grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr);
  gap: clamp(54px, 8vw, 120px);
  align-items: start;
}

.about-experience-layout h2 {
  margin: 0;
  color: var(--aubergine);
  font-size: clamp(3rem, 5.5vw, 6.2rem);
  font-weight: 300;
  line-height: .98;
  letter-spacing: -.045em;
}

.experience-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(26px, 4vw, 52px);
}

.experience-columns p {
  margin: 0;
  color: var(--muted);
  font-size: clamp(.86rem, 1vw, .96rem);
  line-height: 1.82;
}

.about-page .interest-section h2 {
  max-width: 820px;
  font-size: clamp(2.8rem, 4.8vw, 5.4rem);
}

.about-page .interest-grid {
  margin-top: clamp(42px, 5vw, 66px);
}

.about-page .interest-grid > div {
  position: relative;
  min-height: 132px;
  padding: 20px 20px 22px;
  overflow: hidden;
}

.about-page .interest-grid > div::after {
  content: "";
  position: absolute;
  right: -18px;
  bottom: -24px;
  width: 72px;
  aspect-ratio: 1;
  border: 1px solid rgb(116 85 124 / 16%);
  border-radius: 50%;
}

.about-philosophy-intro {
  max-width: 680px;
  color: rgb(241 237 243 / 70%);
  line-height: 1.82;
}

.about-page .pathway-grid {
  margin-top: clamp(44px, 5vw, 68px);
}

.about-page .pathway-grid article {
  min-height: 280px;
}

.about-page .pathway-grid h3 {
  margin-top: 58px;
}

.about-anatomy-section {
  position: relative;
  padding-block: clamp(76px, 9vw, 124px);
  overflow: hidden;
  background: var(--pale-lavender);
}

.about-anatomy-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr);
  gap: clamp(54px, 8vw, 120px);
  align-items: center;
}

.about-anatomy-copy h2 {
  margin: 0 0 30px;
  color: var(--aubergine);
  font-size: clamp(3rem, 5.4vw, 6.1rem);
  font-weight: 300;
  line-height: .98;
  letter-spacing: -.045em;
}

.about-anatomy-copy p {
  max-width: 680px;
  margin: 0 0 20px;
  color: var(--muted);
  line-height: 1.82;
}

.about-anatomy-visual {
  position: relative;
  min-height: 430px;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 50%, rgb(116 85 124 / 24%), transparent 58%),
    #402B4F;
}

.about-anatomy-visual img {
  width: 100%;
  height: 100%;
  min-height: 430px;
  display: block;
  object-fit: contain;
  object-position: center;
  filter: saturate(.82) contrast(1.03);
}

.advanced-approach-list {
  display: grid;
  gap: 0;
  margin-top: 34px;
  border-top: 1px solid var(--border);
}

.advanced-approach-list li {
  position: relative;
  padding: 15px 0 15px 20px;
  border-bottom: 1px solid var(--border);
  color: var(--aubergine);
  font-size: .78rem;
  line-height: 1.55;
}

.advanced-approach-list li::before {
  content: "";
  position: absolute;
  top: 23px;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--purple);
}

.personal-approach-section {
  padding-block: clamp(76px, 9vw, 124px);
  background: var(--off-white);
}

.personal-approach-copy {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(28px, 5vw, 64px);
}

.personal-approach-copy p {
  margin: 0;
  color: var(--muted);
  line-height: 1.85;
}

.professional-background-list {
  display: grid;
  gap: 1px;
  background: rgb(201 185 210 / 22%);
}

.professional-background-list div {
  display: grid;
  grid-template-columns: minmax(160px, .8fr) minmax(0, 1.2fr);
  gap: 28px;
  padding: 22px 24px;
  background: #402B4F;
}

.professional-background-list strong {
  color: var(--off-white);
  font-size: .75rem;
  font-weight: 400;
}

.professional-background-list span {
  color: rgb(241 237 243 / 58%);
  font-size: .7rem;
  line-height: 1.6;
}

@media (max-width: 980px) {
  .about-experience-layout,
  .about-anatomy-layout {
    grid-template-columns: 1fr;
  }

  .about-anatomy-visual {
    min-height: 500px;
  }

  .about-anatomy-visual img {
    min-height: 500px;
  }
}

@media (max-width: 720px) {
  .about-page .inner-hero {
    min-height: auto;
  }

  .about-page .inner-hero-grid {
    padding-block: 52px;
  }

  .about-page .portrait-placeholder {
    min-height: 380px;
  }

  .experience-columns,
  .personal-approach-copy {
    grid-template-columns: 1fr;
  }

  .about-anatomy-visual,
  .about-anatomy-visual img {
    min-height: 390px;
  }

  .professional-background-list div {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

.inner-hero-actions {
  display: block;
}

/* Balanced internal-page hero typography and composition. */
.inner-hero {
  min-height: 400px;
}

.inner-hero-grid {
  position: relative;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
  gap: clamp(46px, 7vw, 108px);
  align-items: center;
  padding-block: clamp(48px, 5.5vw, 76px);
}

.inner-hero-heading,
.inner-hero-support {
  position: relative;
  z-index: 2;
}

.inner-hero-heading {
  max-width: 680px;
}

.inner-hero h1 {
  max-width: 650px;
  margin: 0;
  font-size: clamp(3rem, 4.4vw, 4.25rem);
  line-height: .98;
  letter-spacing: -.045em;
  text-wrap: balance;
}

.inner-hero--long-title h1 {
  max-width: 620px;
  font-size: clamp(2.8rem, 3.9vw, 3.75rem);
}

.inner-hero-support {
  width: 100%;
  max-width: 580px;
  justify-self: end;
}

.inner-hero-support p {
  margin: 0;
  color: rgb(241 237 243 / 74%);
  font-size: clamp(.9rem, 1.05vw, 1rem);
  line-height: 1.82;
}

.inner-hero-mark {
  position: absolute;
  z-index: 1;
  right: 2%;
  width: min(270px, 24vw);
  pointer-events: none;
}

.inner-hero-mark img {
  width: 100%;
  opacity: .08;
}

.about-profile-hero {
  min-height: 560px;
}

.about-profile-grid {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
  gap: clamp(58px, 8vw, 118px);
  align-items: center;
  padding-block: clamp(52px, 6vw, 82px);
}

.about-profile-identity {
  width: 100%;
  max-width: 380px;
}

.about-profile-identity h1 {
  max-width: 100%;
  margin: 0;
  font-size: clamp(3rem, 4.4vw, 4.25rem);
  line-height: .98;
  letter-spacing: -.045em;
}

.about-professional-title {
  margin: 14px 0 24px;
  color: var(--pale-lavender);
  font-size: .74rem;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.about-profile-hero .portrait-placeholder {
  width: min(100%, 350px);
  min-height: 0;
  aspect-ratio: 4 / 5;
  padding: 24px;
}

.about-profile-hero .portrait-placeholder img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center top;
}

.about-profile-biography {
  max-width: 680px;
  align-self: center;
}

.about-profile-biography h2 {
  max-width: 620px;
  margin: 0 0 28px;
  color: var(--off-white);
  font-size: clamp(2.35rem, 3.5vw, 3.25rem);
  font-weight: 300;
  line-height: 1.02;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.about-profile-biography p {
  max-width: 620px;
  margin: 0 0 18px;
  color: rgb(241 237 243 / 72%);
  font-size: clamp(.9rem, 1.05vw, 1rem);
  line-height: 1.82;
}

.about-profile-biography .button {
  margin-top: 14px;
}

.contact-hero {
  min-height: 400px;
}

.contact-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
  grid-template-areas:
    "eyebrow copy"
    "heading copy";
  gap: 8px clamp(46px, 7vw, 108px);
  align-items: center;
  padding-block: clamp(48px, 5.5vw, 76px);
}

.contact-hero-inner > .eyebrow {
  grid-area: eyebrow;
  align-self: end;
}

.contact-hero h1 {
  grid-area: heading;
  max-width: 650px;
  margin: 0;
  font-size: clamp(3rem, 4.4vw, 4.25rem);
  line-height: .98;
  letter-spacing: -.045em;
  text-wrap: balance;
}

.contact-hero-inner > p:last-child {
  grid-area: copy;
  width: 100%;
  max-width: 580px;
  justify-self: end;
  align-self: center;
  font-size: clamp(.9rem, 1.05vw, 1rem);
}

.contact-thanks h1 {
  max-width: 760px;
  font-size: clamp(3rem, 4.4vw, 4.25rem);
  line-height: .98;
  text-wrap: balance;
}

@media (max-width: 980px) {
  .inner-hero-grid,
  .contact-hero-inner {
    grid-template-columns: minmax(0, 1.04fr) minmax(270px, .96fr);
    gap: 38px;
  }

  .inner-hero h1,
  .contact-hero h1,
  .about-profile-identity h1,
  .contact-thanks h1 {
    font-size: clamp(2.625rem, 5.6vw, 3.5rem);
  }

  .inner-hero--long-title h1 {
    font-size: clamp(2.5rem, 5vw, 3.25rem);
  }

  .about-profile-grid {
    grid-template-columns: minmax(250px, .8fr) minmax(0, 1.2fr);
    gap: 48px;
  }

  .about-profile-hero .portrait-placeholder {
    width: min(100%, 320px);
  }
}

@media (max-width: 760px) {
  .inner-hero {
    min-height: auto;
  }

  .inner-hero-grid,
  .contact-hero-inner,
  .about-profile-grid {
    grid-template-columns: 1fr;
    grid-template-areas: none;
    gap: 30px;
    padding-block: 46px 54px;
  }

  .inner-hero h1,
  .inner-hero--long-title h1,
  .contact-hero h1,
  .about-profile-identity h1,
  .contact-thanks h1 {
    max-width: 100%;
    font-size: clamp(2.125rem, 10.5vw, 2.875rem);
  }

  .inner-hero-support,
  .contact-hero-inner > p:last-child {
    max-width: 600px;
    justify-self: start;
  }

  .inner-hero-mark {
    right: -30px;
    bottom: -50px;
    width: 190px;
  }

  .contact-hero-inner > .eyebrow,
  .contact-hero h1,
  .contact-hero-inner > p:last-child {
    grid-area: auto;
  }

  .about-profile-hero {
    min-height: auto;
  }

  .about-profile-identity {
    max-width: none;
  }

  .about-profile-hero .portrait-placeholder {
    width: 86%;
    max-width: 360px;
    margin-top: 22px;
  }

  .about-profile-biography {
    max-width: 620px;
  }

  .about-profile-biography h2 {
    font-size: clamp(2rem, 9vw, 2.75rem);
  }
}

/* Strict internal hero correction: exact centring, smaller type and portrait imagery. */
.inner-hero {
  min-height: 340px;
}

.inner-hero-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(40px, 6vw, 84px);
  align-items: center;
  padding-block: clamp(60px, 5vw, 76px);
}

.inner-hero-heading,
.inner-hero-support {
  position: static;
  align-self: center;
}

.inner-hero-heading {
  width: 100%;
  max-width: 590px;
}

.inner-hero h1,
.contact-hero h1,
.about-profile-identity h1,
.contact-thanks h1,
.science-profile-copy h1 {
  max-width: 560px;
  font-size: clamp(2.75rem, 4vw, 3.25rem);
  line-height: 1.08;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.inner-hero--long-title h1 {
  max-width: 540px;
  font-size: clamp(2.5rem, 3.6vw, 3rem);
}

.inner-hero-support {
  width: 100%;
  max-width: 560px;
  justify-self: start;
}

.contact-hero {
  min-height: 340px;
}

.contact-hero-inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-areas: none;
  gap: clamp(40px, 6vw, 84px);
  align-items: center;
  padding-block: clamp(60px, 5vw, 76px);
}

.contact-hero-heading,
.contact-hero-support {
  align-self: center;
}

.contact-hero-heading {
  max-width: 590px;
}

.contact-hero-heading .eyebrow,
.contact-hero-heading h1,
.contact-hero-support p {
  grid-area: auto;
}

.contact-hero h1 {
  margin: 0;
}

.contact-hero-support {
  width: 100%;
  max-width: 560px;
}

.contact-hero-support p {
  margin: 0;
  color: rgb(241 237 243 / 72%);
  font-size: clamp(.9rem, 1.05vw, 1rem);
  line-height: 1.82;
}

.about-profile-hero {
  min-height: auto;
}

.about-profile-grid {
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
  gap: clamp(44px, 6vw, 88px);
  align-items: center;
  padding-block: clamp(60px, 5vw, 76px);
}

.about-profile-identity,
.about-profile-biography {
  align-self: center;
}

.about-profile-identity {
  max-width: 350px;
}

.about-profile-hero .portrait-placeholder {
  width: min(100%, 320px);
  aspect-ratio: 4 / 5;
}

.about-profile-biography h2 {
  max-width: 560px;
  font-size: clamp(2.25rem, 3.4vw, 2.875rem);
  line-height: 1.1;
}

.science-profile-hero {
  min-height: auto;
}

.science-profile-grid {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
  gap: clamp(44px, 6vw, 88px);
  align-items: center;
  padding-block: clamp(60px, 5vw, 76px);
}

.science-portrait-visual {
  width: min(100%, 320px);
  aspect-ratio: 4 / 5;
  justify-self: start;
  overflow: hidden;
  background: #140D20;
}

.science-portrait-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.science-profile-copy {
  max-width: 620px;
  align-self: center;
}

.science-profile-copy h1 {
  margin: 0 0 24px;
  color: var(--off-white);
  font-weight: 300;
}

.science-profile-copy > p:last-child {
  max-width: 560px;
  margin: 0;
  color: rgb(241 237 243 / 72%);
  font-size: clamp(.9rem, 1.05vw, 1rem);
  line-height: 1.82;
}

@media (max-width: 980px) {
  .inner-hero h1,
  .contact-hero h1,
  .about-profile-identity h1,
  .contact-thanks h1,
  .science-profile-copy h1 {
    font-size: clamp(2.375rem, 4.8vw, 2.875rem);
  }

  .inner-hero--long-title h1 {
    font-size: clamp(2.25rem, 4.5vw, 2.625rem);
  }

  .about-profile-grid,
  .science-profile-grid {
    grid-template-columns: minmax(230px, .8fr) minmax(0, 1.2fr);
    gap: 40px;
  }

  .about-profile-hero .portrait-placeholder,
  .science-portrait-visual {
    width: min(100%, 290px);
  }
}

@media (max-width: 760px) {
  .inner-hero-grid,
  .contact-hero-inner,
  .about-profile-grid,
  .science-profile-grid {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-block: 44px 52px;
  }

  .inner-hero h1,
  .inner-hero--long-title h1,
  .contact-hero h1,
  .about-profile-identity h1,
  .contact-thanks h1,
  .science-profile-copy h1 {
    max-width: 100%;
    font-size: clamp(2rem, 9.5vw, 2.5rem);
    line-height: 1.1;
  }

  .inner-hero-support,
  .contact-hero-support {
    max-width: 600px;
  }

  .about-profile-hero .portrait-placeholder,
  .science-portrait-visual {
    width: 86%;
    max-width: 340px;
    justify-self: start;
  }

  .science-profile-copy {
    max-width: 600px;
  }
}

.about-anatomy-visual {
  width: min(100%, 320px);
  min-height: 0;
  aspect-ratio: 4 / 5;
  justify-self: center;
}

.about-anatomy-visual img {
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 760px) {
  .about-anatomy-visual {
    width: 86%;
    max-width: 340px;
    justify-self: start;
  }
}

/* Chris Curtis About hero strict correction only. */
.about-profile-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(42px, 5vw, 72px);
  align-items: center;
  padding-block: clamp(50px, 5vw, 70px);
}

.about-profile-identity,
.about-profile-biography {
  align-self: center;
}

.about-profile-identity {
  width: 100%;
  max-width: 380px;
}

.about-profile-identity h1 {
  max-width: 100%;
  font-size: clamp(2.625rem, 3.5vw, 3rem);
  line-height: 1.1;
  letter-spacing: -.03em;
}

.about-professional-title {
  margin: 10px 0 18px;
}

.about-profile-hero .portrait-placeholder {
  width: clamp(320px, 26vw, 360px);
  max-width: 100%;
  min-height: 0;
  aspect-ratio: 4 / 5;
  display: grid;
  place-items: center;
  padding: 28px;
  border: 1px solid rgb(201 185 210 / 24%);
  background: #34213F;
  text-align: center;
}

.about-profile-hero .portrait-placeholder span {
  max-width: 20ch;
  color: rgb(241 237 243 / 68%);
  font-size: .68rem;
  letter-spacing: .12em;
  line-height: 1.8;
  text-transform: uppercase;
}

.about-profile-hero .portrait-placeholder img {
  display: none;
}

.about-profile-biography {
  width: 100%;
  max-width: 620px;
  align-self: center;
  justify-self: start;
}

@media (max-width: 980px) {
  .about-profile-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px;
    padding-block: clamp(40px, 5vw, 60px);
  }

  .about-profile-identity h1 {
    font-size: clamp(2.25rem, 4.4vw, 2.625rem);
  }

  .about-profile-hero .portrait-placeholder {
    width: min(100%, 330px);
  }
}

@media (max-width: 760px) {
  .about-profile-grid {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-block: clamp(30px, 8vw, 45px);
  }

  .about-profile-identity h1 {
    font-size: clamp(1.875rem, 8.5vw, 2.25rem);
  }

  .about-profile-hero .portrait-placeholder {
    width: 86%;
    max-width: 340px;
    margin-top: 16px;
  }

  .about-profile-biography {
    max-width: 600px;
  }
}

/* Guna Collagen feature and dedicated treatment page */
.guna-feature{background:#e7dfeb;border-left:4px solid var(--purple);display:block;min-height:0;padding:clamp(28px,4vw,52px)}.guna-feature-copy{max-width:640px}.guna-kicker{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.69rem;font-weight:600;color:var(--purple)}.guna-feature h3{margin:18px 0;font-size:clamp(1.65rem,2.8vw,2.6rem);line-height:1.18}.guna-feature p{line-height:1.75;font-size:.91rem}.guna-feature .button{margin-top:14px}.guna-hero{padding:clamp(90px,12vw,170px) 0;background:linear-gradient(125deg,#402b4f,#74557c);color:#fff}.guna-hero h1{font-size:clamp(2.8rem,6.5vw,6.3rem);line-height:1.05;max-width:1100px;margin:0 0 30px;color:#fff}.guna-hero h1 span{color:#d5c7df}.guna-hero .eyebrow{color:#d5c7df}.guna-hero .large-copy{color:#f1edf3;max-width:750px}.guna-hero .button-primary{background:#f1edf3;color:#402b4f}.guna-section{padding:clamp(70px,9vw,125px) 0}.guna-two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,7vw,100px)}.guna-section h2{font-size:clamp(2.2rem,4vw,4.4rem);margin-bottom:35px}.guna-section h3{font-size:1.3rem;font-weight:500;margin:0 0 12px}.guna-section p{color:var(--muted);line-height:1.85}.guna-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:45px 0}.guna-steps article{border:1px solid var(--border);padding:28px 22px;background:#ffffff45}.guna-steps article span{display:block;color:var(--purple);font-size:.8rem;margin-bottom:38px}.guna-steps article p{font-size:.86rem}.guna-note{border-left:3px solid var(--purple);padding-left:22px}.guna-areas{display:flex;flex-wrap:wrap;gap:12px;margin:35px 0}.guna-areas span{border:1px solid var(--border);padding:14px 25px;background:#ffffff70;font-weight:500}.guna-page .button{margin-top:12px}@media(max-width:980px){.guna-steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.guna-two-col,.guna-steps{grid-template-columns:1fr}.guna-hero{padding:80px 0}.guna-feature{padding:26px 22px}}


/* Build 04 — premium, dark, single-tier header inspired by the approved hero concept. */
:root { --regen-header-full-height: 94px; --regen-header-compact-height: 76px; }
html { scroll-padding-top: 110px; }
.site-header, .site-header.is-compact {
  position: fixed; inset: 0 0 auto; height: var(--regen-header-full-height);
  overflow: visible; background: #251631; border-bottom: 1px solid rgba(201,185,210,.22);
  box-shadow: 0 12px 35px rgba(28,12,39,.19); backdrop-filter: blur(16px);
  transition: height .25s ease;
}
.site-header.is-compact { height: var(--regen-header-compact-height); }
.site-header-spacer { height: var(--regen-header-full-height); background: #f1edf3; }
.brand-masthead, .site-header.is-compact .brand-masthead { display: none !important; }
.nav-tier, .site-header.is-compact .nav-tier {
  position: relative; inset: auto; height: 100%; background: transparent;
  border: 0; box-shadow: none;
}
.nav-tier-inner { width: min(1440px, calc(100% - 64px)); height: 100%; min-height: 0;
  display: grid; grid-template-columns: 210px minmax(0,1fr) auto; align-items: center; gap: 26px; }
.compact-brand, .site-header.is-compact .compact-brand {
  display: block !important; visibility: visible; opacity: 1; pointer-events: auto;
  width: 194px; max-width: 194px; height: auto; justify-self: start;
}
.compact-brand .logo--compact, .site-header.is-compact .compact-brand .logo--compact {
  display: block; width: 100%; max-width: 194px; height: auto; transform: none;
}
.compact-brand img { display: block; width: 100%; height: auto; object-fit: contain; }
.site-header .nav-links { gap: clamp(12px, 1.55vw, 27px); }
.site-header .nav-links a { color: #eee5f3; font-size: .67rem; letter-spacing: .055em; font-weight: 500; text-transform: uppercase; padding-block: 22px; white-space: nowrap; }
.site-header .nav-links a:hover, .site-header .nav-links a.is-active { color: #e2b8f6; }
.site-header .nav-links a:after { background: #c59cdb; bottom: 16px; }
.site-header .desktop-header-cta .button-primary { background: #8950ac; color: #fff; border: 1px solid #a973c8; min-height: 45px; padding: 13px 18px; white-space: nowrap; }
.site-header .desktop-header-cta .button-primary:hover { background: #a469c6; }
@media (max-width: 1180px) {
  .nav-tier-inner { width: calc(100% - 40px); grid-template-columns: 155px minmax(0,1fr) auto; gap: 16px; }
  .compact-brand, .site-header.is-compact .compact-brand { width: 150px; max-width: 150px; }
  .compact-brand .logo--compact, .site-header.is-compact .compact-brand .logo--compact { max-width: 150px; }
  .site-header .nav-links { gap: 12px; }
  .site-header .nav-links a { font-size: .59rem; }
  .site-header .desktop-header-cta .button-primary { padding: 12px; font-size: .59rem; }
}
@media (max-width: 980px) {
  :root { --regen-header-full-height: 76px; --regen-header-compact-height: 70px; }
  .nav-tier-inner { width: calc(100% - 36px); grid-template-columns: 1fr auto auto; gap: 15px; }
  .compact-brand, .site-header.is-compact .compact-brand { width: 145px; max-width: 145px; grid-column: 1; }
  .compact-brand .logo--compact, .site-header.is-compact .compact-brand .logo--compact { max-width: 145px; }
  .site-header .mobile-header-cta { display: inline-flex; color: #f6edf9; border: 1px solid #9d76b2; background: rgba(164,140,181,.12); grid-column: 2; }
  .site-header .menu-toggle { color: #f6edf9; grid-column: 3; }
  .site-header .main-nav { background: #251631; color: #fff; }
  .site-header .main-nav .nav-links a { color: #f5eef9; font-size: clamp(1.55rem, 6vw, 2.8rem); padding: 7px 0; white-space: normal; }
  .site-header .main-nav .nav-links a.is-active { color: #d8addf; }
  .site-header .mobile-nav-top { color: #d5b4e5; }
}
@media (max-width: 560px) {
  :root { --regen-header-full-height: 70px; --regen-header-compact-height: 66px; }
  .nav-tier-inner { width: calc(100% - 28px); gap: 10px; }
  .compact-brand, .site-header.is-compact .compact-brand { width: 125px; max-width: 125px; }
  .compact-brand .logo--compact, .site-header.is-compact .compact-brand .logo--compact { max-width: 125px; }
  .site-header .mobile-header-cta { min-height: 35px; padding: 7px 10px; }
}

/* Build 05: centred REGEN brand and collagen helix above navigation. */
@media (min-width: 981px) {
 :root { --regen-header-full-height: 162px; --regen-header-compact-height: 162px; }
 html { scroll-padding-top: 175px; }
 .site-header, .site-header.is-compact { height: 162px; background: #21132d; }
 .site-header-spacer { height: 162px; }
 .brand-masthead, .site-header.is-compact .brand-masthead {
   display: flex !important; visibility: visible; flex-direction: column; align-items: center;
   justify-content: center; position: relative; height: 113px; padding: 6px 20px 4px;
   background: #21132d; border-bottom: 1px solid rgba(201,185,210,.22);
 }
 .brand-lockup { display: flex; align-items: center; justify-content: center; gap: 12px; text-decoration: none; color: #f1e7f5; }
 .brand-collagen-mark { display: block; width: 76px; height: 78px; object-fit: contain; mix-blend-mode: screen; }
 .brand-wordmark { display: flex; flex-direction: column; align-items: flex-start; }
 .brand-location { font-size: 15px; letter-spacing: .27em; line-height: 1.25; font-weight: 300; }
 .brand-name { font-size: 57px; font-weight: 300; letter-spacing: .19em; line-height: .99; }
 .brand-masthead .service-line { margin: -1px 0 0; font-size: 9px; letter-spacing: .27em; color: #d8c9e1; text-align: center; }
 .nav-tier, .site-header.is-compact .nav-tier { height: 49px; background: #21132d; }
 .nav-tier-inner { width: min(1060px, calc(100% - 44px)); grid-template-columns: minmax(0,1fr) auto; gap: 34px; }
 .compact-brand, .site-header.is-compact .compact-brand { display: none !important; }
 .site-header .main-nav { justify-self: center; }
 .site-header .nav-links a { padding-block: 14px; }
 .site-header .nav-links a:after { bottom: 6px; }
 .site-header .desktop-header-cta .button-primary { min-height: 37px; padding: 9px 16px; }
}
@media (max-width: 980px) {
 /* On smaller screens retain the accessible compact logo and menu. */
 .brand-masthead, .site-header.is-compact .brand-masthead { display: none !important; }
}

/* Build 06: original centred stacked REGEN wordmark, collagen symbol above. */
@media (min-width:981px) {
 :root { --regen-header-full-height: 205px; --regen-header-compact-height: 205px; }
 html { scroll-padding-top: 215px; }
 .site-header, .site-header.is-compact {height:205px;}
 .site-header-spacer {height:205px;}
 .brand-masthead, .site-header.is-compact .brand-masthead {height:156px; padding:9px 20px 8px;}
 .brand-lockup {flex-direction:column; gap:1px; align-items:center;}
 .brand-collagen-mark {width:51px; height:45px; object-fit:contain; mix-blend-mode:screen;}
 .brand-wordmark {align-items:center; text-align:center;}
 .brand-location {font-size:13px; letter-spacing:.31em; line-height:1.3; font-weight:300;}
 .brand-name {font-size:55px; font-weight:300; letter-spacing:.19em; line-height:1.05; padding-left:.19em;}
 .brand-masthead .service-line {font-size:8px; letter-spacing:.23em; margin:2px 0 0;}
}

@media(max-width:980px){.compact-rebrand{display:flex;align-items:center;gap:7px;color:#f3e8f5}.compact-rebrand img{width:35px;height:44px;object-fit:contain;mix-blend-mode:screen}.compact-rebrand span{display:flex;flex-direction:column}.compact-rebrand small{font-size:7px;letter-spacing:.12em;white-space:nowrap}.compact-rebrand strong{font-size:25px;font-weight:300;letter-spacing:.16em;line-height:1.1}}
@media(max-width:560px){.compact-rebrand img{width:29px;height:37px}.compact-rebrand small{font-size:6px}.compact-rebrand strong{font-size:21px}}


/* Build 07: crisp, standalone collagen helix to the LEFT of the original REGEN wordmark. */
@media (min-width:981px) {
 :root { --regen-header-full-height: 170px; --regen-header-compact-height: 170px; }
 html {scroll-padding-top:180px;}
 .site-header,.site-header.is-compact,.site-header-spacer {height:170px;}
 .brand-masthead,.site-header.is-compact .brand-masthead {height:121px;padding:5px 20px 4px;}
 .brand-lockup {flex-direction:row;align-items:center;justify-content:center;gap:15px;}
 .brand-collagen-mark {width:100px;height:96px;object-fit:contain;mix-blend-mode:normal;flex-shrink:0;}
 .brand-wordmark {align-items:flex-start;text-align:left;}
 .brand-location {font-size:13px;letter-spacing:.31em;line-height:1.25;}
 .brand-name {font-size:55px;letter-spacing:.19em;line-height:1.04;padding-left:0;}
 .brand-masthead .service-line {margin:-1px 0 0;font-size:8px;letter-spacing:.23em;}
}
@media (max-width:980px) {
 .compact-rebrand img {width:45px;height:47px;mix-blend-mode:normal;}
}
@media (max-width:560px) {
 .compact-rebrand img {width:35px;height:38px;}
}

/* Build 08: larger collagen mark and precisely centred two-line wordmark. */
@media (min-width: 981px) {
  :root { --regen-header-full-height: 186px; --regen-header-compact-height: 186px; }
  html { scroll-padding-top: 196px; }
  .site-header, .site-header.is-compact, .site-header-spacer { height: 186px; }
  .brand-masthead, .site-header.is-compact .brand-masthead { height: 137px; padding: 5px 20px 4px; }
  .brand-lockup { flex-direction: row; align-items: center; justify-content: center; gap: 18px; }
  .brand-collagen-mark { width: 125px; height: 111px; object-fit: contain; }
  .brand-wordmark { align-items: center; text-align: center; min-width: 280px; }
  .brand-location { font-size: 14px; letter-spacing: .30em; line-height: 1.3; padding-left: .30em; }
  .brand-name { font-size: 62px; letter-spacing: .19em; line-height: 1.02; padding-left: .19em; }
  .brand-masthead .service-line { margin: 0; font-size: 8px; letter-spacing: .23em; }
}
@media (max-width: 980px) {
  .compact-rebrand span { align-items: center; text-align: center; }
  .compact-rebrand small { padding-left: .12em; }
  .compact-rebrand strong { padding-left: .16em; }
}

/* Build 09: Footer matches the premium dark header. */
.site-footer{background:#21122d!important;color:#f3edf7!important;position:relative;overflow:hidden;background-image:radial-gradient(ellipse at 0% 100%,rgba(160,70,212,.19),transparent 42%),radial-gradient(ellipse at 100% 100%,rgba(130,54,191,.18),transparent 40%)!important;}
.site-footer:before{content:"";position:absolute;inset:auto -5% 0;height:140px;pointer-events:none;opacity:.4;background:repeating-radial-gradient(ellipse at 50% 160%,transparent 0 22px,rgba(193,113,239,.2) 23px 24px,transparent 25px 40px);mask-image:linear-gradient(to top,#000,transparent)}
.site-footer .footer-main,.site-footer .footer-bottom{position:relative;z-index:1;}
.site-footer .footer-brand-panel{background:transparent!important;}
.site-footer .footer-brand-link{display:flex;align-items:center;text-decoration:none;color:#f8f3fb!important;}
.site-footer .footer-regen-lockup{gap:14px;max-width:100%;}
.site-footer .footer-regen-helix{width:116px;height:116px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 0 8px rgba(185,87,240,.3));}
.site-footer .footer-regen-wordmark{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;line-height:1;}
.site-footer .footer-regen-small{font-size:clamp(9px,1vw,13px);letter-spacing:.28em;white-space:nowrap;color:#e9d9f2;}
.site-footer .footer-regen-big{font-family:Poppins,sans-serif;font-size:clamp(36px,4vw,65px);font-weight:300;letter-spacing:.14em;line-height:1.16;color:#fff;}
.site-footer .footer-brand-panel>p{margin-top:16px!important;color:#cdbed5!important;font-size:10px!important;letter-spacing:.11em!important;}
.site-footer .footer-nav h2,.site-footer .footer-contact h2{color:#d9a6f2!important;}
.site-footer .footer-nav a,.site-footer .footer-contact a,.site-footer .footer-contact address,.site-footer .footer-bottom{color:#eee4f3;}
.site-footer .footer-button{background:#9858ba!important;color:white!important;border-color:#b878d1!important;}
@media(max-width:850px){.site-footer .footer-regen-helix{width:88px;height:88px}.site-footer .footer-regen-big{font-size:clamp(32px,7vw,52px)}}
@media(max-width:480px){.site-footer .footer-regen-lockup{gap:8px}.site-footer .footer-regen-helix{width:74px;height:74px}.site-footer .footer-regen-big{font-size:35px}.site-footer .footer-regen-small{font-size:8px;letter-spacing:.2em}}

/* Build 10 — footer branding: centred stacked helix, name and tagline. */
.site-footer .footer-brand-panel{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;text-align:center!important;min-width:0!important;}
.site-footer .footer-brand-link.footer-regen-lockup{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;width:100%!important;max-width:480px!important;margin:0 auto!important;text-align:center!important;}
.site-footer .footer-regen-helix{width:145px!important;height:145px!important;max-width:48%!important;object-fit:contain!important;}
.site-footer .footer-regen-wordmark{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:100%!important;text-align:center!important;}
.site-footer .footer-regen-small{display:block!important;text-align:center!important;padding-left:.28em!important;}
.site-footer .footer-regen-big{display:block!important;text-align:center!important;padding-left:.14em!important;}
.site-footer .footer-brand-panel>p{width:100%!important;max-width:480px!important;margin:14px auto 0!important;text-align:center!important;line-height:1.9!important;white-space:normal!important;}
@media(max-width:850px){.site-footer .footer-regen-helix{width:112px!important;height:112px!important;}}
@media(max-width:480px){.site-footer .footer-regen-helix{width:92px!important;height:92px!important;}.site-footer .footer-brand-panel>p{font-size:9px!important;letter-spacing:.07em!important;}}


/* Build 11 — spacious desktop masthead matching the footer's stacked logo. */
@media (min-width:981px) {
  :root { --regen-header-full-height: 352px; --regen-header-compact-height: 352px; }
  html { scroll-padding-top: 362px; }
  .site-header, .site-header.is-compact, .site-header-spacer { height: 352px !important; }
  .brand-masthead, .site-header.is-compact .brand-masthead {
    height: 303px !important; min-height:303px; padding: 24px 20px 22px !important;
    display:flex !important; flex-direction:column; align-items:center; justify-content:center;
    background:#21132d;
  }
  .brand-home.brand-lockup {
    display:flex !important; flex-direction:column !important; align-items:center !important;
    justify-content:center !important; gap: 7px !important; text-align:center !important;
    width:auto; max-width:100%;
  }
  .brand-collagen-mark {
    width: 137px !important; height: 137px !important; object-fit:contain !important;
    flex-shrink:0; filter:drop-shadow(0 0 6px rgba(182,92,235,.18));
  }
  .brand-wordmark { display:flex !important; flex-direction:column; align-items:center !important; text-align:center !important; min-width:0 !important; gap:3px; }
  .brand-location { font-size:13px !important; letter-spacing:.33em !important; line-height:1.35 !important; padding-left:.33em !important; }
  .brand-name { font-size:61px !important; font-weight:300; letter-spacing:.20em !important; line-height:1.02 !important; padding-left:.20em !important; }
  .brand-masthead .service-line { margin: 17px 0 0 !important; font-size:9px !important; letter-spacing:.21em !important; line-height:1.7 !important; text-align:center !important; }
  .nav-tier,.site-header.is-compact .nav-tier { height:49px !important; }
}
@media (min-width:981px) and (max-width:1100px) {
  .brand-masthead .service-line { font-size:8px !important; }
}


/* Build 12: roomy masthead at top, small sticky navigation while scrolling.
   Keep the document spacer full height so the hero never jumps. */
@media (min-width: 981px) {
  :root { --regen-header-full-height: 352px; --regen-header-compact-height: 68px; }
  html { scroll-padding-top: 84px !important; }
  .site-header-spacer { height: 352px !important; }
  .site-header { height: 352px !important; transition: height .28s ease, box-shadow .28s ease !important; }
  .site-header.is-compact { height: 68px !important; box-shadow: 0 9px 24px rgba(9,3,15,.25); }
  .site-header.is-compact .brand-masthead { display: none !important; }
  .site-header.is-compact .nav-tier { height: 68px !important; border-top: 0; }
  .site-header.is-compact .nav-tier-inner {
    width: min(1480px, calc(100% - 36px)); height: 68px; min-height: 68px;
    grid-template-columns: minmax(120px, 180px) minmax(0, 1fr) auto; gap: 15px;
  }
  .site-header.is-compact .compact-brand { display: block !important; width: 175px; max-width: 100%; }
  .site-header.is-compact .compact-rebrand { display: flex; align-items: center; gap: 8px; }
  .site-header.is-compact .compact-rebrand img { width: 45px; height: 45px; object-fit: contain; flex-shrink: 0; }
  .site-header.is-compact .compact-rebrand span { display: flex; flex-direction: column; align-items: center; min-width: 0; }
  .site-header.is-compact .compact-rebrand small { color: #e9d9f2; font-size: 8px; letter-spacing: .14em; white-space: nowrap; }
  .site-header.is-compact .compact-rebrand strong { color: #fff; font-size: 23px; font-weight: 300; line-height: 1.1; letter-spacing: .17em; }
  .site-header.is-compact .main-nav { grid-column: 2; justify-self: center; }
  .site-header.is-compact .nav-links { gap: clamp(9px, 1.2vw, 19px); }
  .site-header.is-compact .nav-links a { padding-block: 19px; font-size: clamp(.55rem, .72vw, .67rem); }
  .site-header.is-compact .desktop-header-cta { grid-column: 3; }
  .site-header.is-compact .desktop-header-cta .button { min-height: 40px; padding: 9px 13px; font-size: .62rem; }
}
@media (min-width: 981px) and (max-width: 1130px) {
  .site-header.is-compact .nav-tier-inner { grid-template-columns: 135px minmax(0,1fr) auto; gap: 8px; width: calc(100% - 20px); }
  .site-header.is-compact .compact-brand { width: 135px; }
  .site-header.is-compact .compact-rebrand img { width: 37px; height: 37px; }
  .site-header.is-compact .compact-rebrand small { font-size: 6px; }
  .site-header.is-compact .compact-rebrand strong { font-size: 18px; }
  .site-header.is-compact .nav-links { gap: 8px; }
  .site-header.is-compact .nav-links a { font-size: .54rem; }
}
@media (prefers-reduced-motion: reduce) {
  .site-header { transition: none !important; }
}

/* Build 13 — more breathing room between desktop navigation links.
   Keep the tighter fit on narrow desktops and mobile. */
@media (min-width: 1301px) {
  .site-header:not(.is-compact) .nav-links { gap: clamp(27px, 2.4vw, 43px) !important; }
  .site-header.is-compact .nav-links { gap: clamp(18px, 1.55vw, 29px) !important; }
}
@media (min-width: 1101px) and (max-width: 1300px) {
  .site-header:not(.is-compact) .nav-links { gap: clamp(19px, 1.8vw, 25px) !important; }
  .site-header.is-compact .nav-links { gap: 13px !important; }
}

/* Build 14: Guna science and product cards */
.guna-science-panel{background:#e7dfe9;border-left:4px solid #74557c;padding:clamp(24px,3.4vw,52px);box-shadow:0 18px 48px #402b4f16}.guna-science-panel h3{font-size:clamp(1.8rem,3vw,3rem);line-height:1.15;margin:14px 0}.guna-science-panel>p:not(.eyebrow){max-width:65ch;line-height:1.8}.guna-science-diagram{background:linear-gradient(115deg,#34213f,#61416b);border-radius:6px;margin:22px 0 24px;overflow:hidden}.guna-science-diagram svg{display:block;width:100%;height:auto;max-height:210px}.guna-evidence-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin:20px 0 26px;font-size:.75rem}.guna-evidence-links span{font-weight:700;color:#402b4f;text-transform:uppercase;letter-spacing:.09em;width:100%}.guna-evidence-links a{color:#74557c;text-decoration:underline;text-underline-offset:3px}.guna-anatomy{height:145px;display:flex;align-items:center;justify-content:center}.guna-anatomy svg{height:100%;width:auto;max-width:100%}.guna-product-label{font-size:.72rem;letter-spacing:.16em;font-weight:700;color:#74557c;margin:0 0 10px!important}.treatment-card h3{margin-top:0}.treatment-card .treatment-card-top{min-height:165px;align-items:flex-start}.treatment-card .treatment-card-top .guna-anatomy{margin-left:auto}@media(max-width:700px){.guna-science-panel{padding:24px}.guna-evidence-links{font-size:.7rem}.treatment-card .treatment-card-top{min-height:140px}}

/* Build 15 — compact About page */
.about-page{color:#412c4e}.about-page .section-shell{max-width:1400px;margin-inline:auto}.about-page h1,.about-page h2,.about-page h3{letter-spacing:-.035em}.about-page h2{font-size:clamp(2rem,3.2vw,3.45rem);line-height:1.12;font-weight:400;margin:12px 0 22px;max-width:650px}.about-page p{line-height:1.7}.about-page .eyebrow{font-size:.72rem;letter-spacing:.22em}.about-hero{background:linear-gradient(120deg,#34213f,#41294d);color:#f6eff8;padding:clamp(48px,6vw,90px) 0}.about-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.8fr);gap:clamp(35px,6vw,110px);align-items:center}.about-intro h1{font-size:clamp(2.8rem,5vw,5rem);font-weight:400;line-height:1.08;margin:16px 0 28px}.about-intro h1 span{display:block;font-size:clamp(.85rem,1.15vw,1.05rem);font-weight:500;letter-spacing:.18em;text-transform:uppercase;margin-top:12px}.about-lead{font-size:clamp(1.35rem,2.1vw,2.1rem);line-height:1.25!important;margin:0 0 18px;max-width:520px}.about-intro>p:not(.eyebrow){max-width:670px;color:#dfd1e5}.about-intro .button{margin-top:16px}.about-portrait-placeholder{min-height:350px;max-height:480px;aspect-ratio:4/4.5;border:1px solid #806b8b;background:linear-gradient(145deg,#412c4e,#2b1a35);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;color:#c6b2d0;text-transform:uppercase;letter-spacing:.16em;font-size:.82rem}.about-portrait-placeholder small{font-size:.68rem;max-width:160px;line-height:1.6}.about-section{padding:clamp(54px,6vw,95px) 0}.about-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,100px);align-items:start}.about-section p{font-size:clamp(.97rem,1.13vw,1.1rem)}.about-copy p:first-child{margin-top:0}.about-experience,.about-final{background:#f2edf4}.about-interests{background:#d2c1da}.about-section-top{max-width:850px;margin-bottom:32px}.about-interest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #b5a2be;border-left:1px solid #b5a2be}.about-interest-grid>div{padding:25px 20px;min-height:100px;display:flex;align-items:center;border-right:1px solid #b5a2be;border-bottom:1px solid #b5a2be;font-size:clamp(.95rem,1.3vw,1.2rem)}.about-philosophy{background:#412c4e;color:#f8f1fb}.about-philosophy-top{align-items:center;margin-bottom:34px}.about-philosophy-top>p{max-width:550px;color:#dfd0e6}.about-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #6b5376}.about-steps article{padding:28px 30px 8px;border-right:1px solid #6b5376}.about-steps article:first-child{padding-left:0}.about-steps article:last-child{border-right:0}.about-steps span{font-size:.72rem;color:#bda6ca}.about-steps h3{font-size:clamp(1.5rem,2.1vw,2.2rem);font-weight:400;margin:15px 0}.about-steps p{font-size:.95rem;color:#ddcfe3}.about-approach{background:#d2c1da}.about-approach-art{min-height:300px;max-height:410px;background:#281b32;overflow:hidden;display:flex;align-items:center;justify-content:center}.about-approach-art img{display:block;width:100%;height:100%;max-height:410px;object-fit:cover}.about-final ul{list-style:none;padding:0;margin:24px 0}.about-final li{padding:12px 0;border-top:1px solid #d3c4d9;font-size:.96rem}.about-final li::before{content:'•';color:#79578b;margin-right:12px}.about-final .button{margin-top:8px}
@media(max-width:800px){.about-hero-grid,.about-two-column{grid-template-columns:1fr}.about-portrait{max-width:380px}.about-interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-steps{grid-template-columns:1fr}.about-steps article,.about-steps article:first-child{padding:24px 0;border-right:0;border-bottom:1px solid #6b5376}.about-steps article:last-child{border-bottom:0}.about-section{padding:54px 0}.about-hero{padding:48px 0}}
@media(max-width:480px){.about-interest-grid>div{min-height:85px;padding:18px 12px}.about-portrait-placeholder{min-height:300px}}

/* GUNA header repair: compact logo is independent of the large masthead lockup. */
@media(min-width:981px){
 .site-header.is-compact .compact-brand .compact-rebrand{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;}
 .site-header.is-compact .compact-brand .compact-rebrand img{width:45px!important;height:45px!important;object-fit:contain!important;}
 .site-header.is-compact .compact-brand .compact-rebrand span{display:flex;flex-direction:column;align-items:flex-start;}
}


/* GUNA editorial refresh — scoped to the GUNA page only */
.guna-page .regen-feature,.guna-page .regen-pathway,.guna-page .regen-areas-section,.guna-page .regen-faq,.guna-page .regen-products{padding:clamp(58px,6vw,100px) 0;min-height:0}
.guna-page .regen-feature{background:#21112c;color:#f8f2fa}
.guna-page .regen-feature-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(35px,7vw,110px)}
.guna-page .regen-feature-art{min-height:360px;border:1px solid #6c487b;border-radius:22px;background:radial-gradient(circle at center,#593267 0%,#2c1738 60%,#21112c 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.guna-page .regen-feature-art img{width:min(72%,370px);height:auto;position:relative;filter:drop-shadow(0 12px 28px #c176f455)}
.guna-page .regen-art-caption{position:absolute;bottom:20px;left:24px;right:24px;text-align:center;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#e6cde9}
.guna-page .regen-feature h2,.guna-page .regen-pathway h2,.guna-page .regen-areas-section h2,.guna-page .regen-faq h2,.guna-page .regen-products h2{font-size:clamp(34px,4vw,59px);line-height:1.1;letter-spacing:-.035em;margin:12px 0 22px;max-width:850px}
.guna-page .regen-feature h2{color:white}.guna-page .regen-feature h2 em,.guna-page .regen-faq h2 em{color:#d4a7e4;font-style:normal}
.guna-page .regen-feature-copy>p:not(.eyebrow),.guna-page .regen-faq-grid>div>p:not(.eyebrow){font-size:16px;line-height:1.85;max-width:600px}
.guna-page .regen-caveat{border-left:2px solid #b97bd1;padding-left:18px;color:#d7c3dc;font-size:14px!important}
.guna-page .regen-text-link{display:inline-block;margin-top:12px;color:#e8bdf7;text-decoration:none;font-weight:600}
.guna-page .regen-pathway,.guna-page .regen-products{background:#f5f0f7;color:#3d2949}
.guna-page .regen-areas-section{background:#eadfee;color:#3d2949}
.guna-page .regen-section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:30px}
.guna-page .regen-section-heading>div{flex:1}.guna-page .regen-section-heading>p{max-width:310px;line-height:1.7;margin:0 0 20px;color:#765d80}
.guna-page .regen-pathway h2 em,.guna-page .regen-areas-section h2 em,.guna-page .regen-products h2 em{font-style:normal;color:#93649f}
.guna-page .regen-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.guna-page .regen-step-grid article{position:relative;background:#fff;border:1px solid #e3d6e8;border-radius:14px;padding:26px 22px;min-height:235px;transition:transform .2s,border-color .2s,box-shadow .2s}
.guna-page .regen-step-grid article:hover{transform:translateY(-5px);border-color:#ab80bd;box-shadow:0 15px 30px #3c1c4b13}
.guna-page .regen-step-no,.guna-page .regen-product-index{font-size:11px;letter-spacing:.17em;color:#956da4;font-weight:700}
.guna-page .regen-step-icon{display:block;font-size:30px;color:#8b4aa3;margin:20px 0 12px}
.guna-page .regen-step-grid h3{font-size:19px;margin:0 0 10px;color:#382343}
.guna-page .regen-step-grid p,.guna-page .regen-product-grid p{font-size:14px;line-height:1.7;margin:0;color:#6c5775}
.guna-page .regen-pathway-note,.guna-page .regen-small-print{font-size:13px;line-height:1.7;color:#775d81;margin:24px 0 0}
.guna-page .regen-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.guna-page .regen-area-grid a{background:#24132f;border:1px solid #664577;border-radius:13px;overflow:hidden;color:white;text-decoration:none;transition:transform .2s,box-shadow .2s}
.guna-page .regen-area-grid a:hover{transform:translateY(-5px);box-shadow:0 15px 30px #32163b38}
.guna-page .regen-area-grid img{width:100%;height:190px;object-fit:cover;object-position:center 23%;display:block}
.guna-page .regen-area-grid a>span{display:flex;justify-content:space-between;align-items:center;padding:13px 17px;font-weight:600;font-size:16px}
.guna-page .regen-area-grid b{font-weight:400;color:#d1a0e5}
.guna-page .regen-faq{background:#261430;color:white}
.guna-page .regen-faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,7vw,110px)}
.guna-page .regen-faq h2{color:white}.guna-page .regen-faq-grid>div>p:not(.eyebrow){color:#d7c7dd}
.guna-page .regen-faq .button{margin-top:18px}
.guna-page .regen-faq-list{border-top:1px solid #73527f}
.guna-page .regen-faq-list details{border-bottom:1px solid #73527f;padding:0 4px}
.guna-page .regen-faq-list summary{list-style:none;cursor:pointer;padding:23px 34px 23px 0;font-size:17px;font-weight:600;position:relative;color:#f8f1fa}
.guna-page .regen-faq-list summary::-webkit-details-marker{display:none}
.guna-page .regen-faq-list summary:after{content:'+';position:absolute;right:4px;font-size:24px;top:17px;color:#d9a7eb}
.guna-page .regen-faq-list details[open] summary:after{content:'−'}
.guna-page .regen-faq-list details p{color:#dccbdd;font-size:15px;line-height:1.75;margin:0 20px 22px 0}
.guna-page .regen-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.guna-page .regen-product-grid article{background:white;border:1px solid #e3d6e8;border-radius:16px;padding:30px 26px;display:flex;flex-direction:column;min-height:235px}
.guna-page .regen-product-grid h3{font-size:25px;color:#3b2647;margin:20px 0 12px}
.guna-page .regen-product-tag{display:inline-block;align-self:start;margin-top:auto;padding:7px 12px;background:#f2e6f7;border-radius:50px;color:#704a7e;font-size:12px}
.guna-page .regen-product-footer{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:24px;border-top:1px solid #ded0e3;padding-top:20px}
.guna-page .regen-product-footer p{max-width:780px;font-size:13px;line-height:1.7;color:#765d80;margin:0}
.guna-page .regen-product-footer a{font-size:13px;white-space:nowrap;color:#684075}
@media(max-width:900px){.guna-page .regen-feature-grid,.guna-page .regen-faq-grid{grid-template-columns:1fr}.guna-page .regen-feature-art{min-height:290px}.guna-page .regen-step-grid,.guna-page .regen-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guna-page .regen-product-grid{grid-template-columns:1fr}.guna-page .regen-section-heading{display:block}.guna-page .regen-section-heading>p{max-width:650px}}
@media(max-width:560px){.guna-page .regen-step-grid{grid-template-columns:1fr}.guna-page .regen-area-grid{gap:10px}.guna-page .regen-area-grid img{height:140px}.guna-page .regen-feature-art{min-height:250px}.guna-page .regen-product-footer{display:block}.guna-page .regen-product-footer a{display:inline-block;margin-top:12px}.guna-page .regen-step-grid article{min-height:0}}
@media(prefers-reduced-motion:reduce){.guna-page .regen-step-grid article,.guna-page .regen-area-grid a{transition:none}}

/* Biolevox: dedicated landscape artwork, no aggressive portrait crop */
.regen-guna-page .biolevox-card>img{height:auto!important;aspect-ratio:7/4!important;object-fit:contain!important;object-position:center!important;background:#160c29}
@media(max-width:600px){.regen-guna-page .biolevox-card>img{height:auto!important;aspect-ratio:7/4!important}}

/* Biolevox distinct landscape anatomical panels */
.regen-guna-page .biolevox-card>img.biolevox-artwork{width:100%!important;height:auto!important;aspect-ratio:1290/696!important;object-fit:cover!important;object-position:center!important;display:block!important;background:#160c29!important;}

/* Editorial alignment: justify readable body copy, preserve short UI labels and headings. */
@media (min-width: 700px) {
  main p:not(.eyebrow):not(.kicker):not(.overline):not(.section-label):not(.tag):not(.badge),
  main article p:not(.eyebrow),
  .about-page .about-copy p,
  .guna-page .regen-faq-list details p {
    text-align: justify;
    text-align-last: left;
    hyphens: auto;
    -webkit-hyphens: auto;
  }
  main .text-center p, main [style*="text-align:center"] p,
  main .centered p, main .hero-meta p { text-align: center; text-align-last: center; }
}
@media (max-width: 699px) {
  main p { text-align: left; }
  main .text-center p, main .centered p { text-align: center; }
}

/* GUNA anatomical gallery: desktop hover, touch tap, keyboard accessible */
.regen-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.guna-interactive-card{min-width:0;background:#180e23;border:1px solid #604574;border-radius:18px;overflow:hidden;color:#f8f4fb}
.guna-card-media{position:relative;cursor:pointer;aspect-ratio:2/3;overflow:hidden;outline-offset:-4px}
.guna-card-media img,.guna-card-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.guna-card-media video{display:none}
.guna-play-label{position:absolute;bottom:12px;left:12px;right:12px;text-align:center;background:#190d27d9;color:#fff;padding:9px;border-radius:8px;font-size:12px}
.guna-card-copy{padding:18px}
.guna-card-copy h3{font-size:25px;margin:8px 0 12px;color:#fff}
.guna-card-copy p{font-size:14px;line-height:1.65;color:#ddd2e6}
.guna-card-copy .guna-card-note{font-size:11px;color:#bba8cb}
.guna-card-kicker{font-size:10px;letter-spacing:.14em;color:#77d7ff}
@media(max-width:1100px){.regen-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.regen-area-grid{grid-template-columns:1fr}.guna-card-media{aspect-ratio:3/4}}

/* Editorial typography: no artificial hyphenation or stretched word spacing */
html body p,html body li,html body blockquote,html body .guna-card-copy p{hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left!important;text-wrap:pretty}
html body h1,html body h2,html body h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:normal}
.guna-page .guna-hero{min-height:0;padding-bottom:54px}
.guna-motion-strip{background:#281632;color:#fff;padding:42px 0 62px}
.guna-motion-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:24px}
.guna-motion-heading h2{font-size:clamp(1.6rem,3vw,2.8rem);line-height:1.2}
.guna-motion-heading h2 em{color:#c8a2d8;font-style:normal}
.guna-motion-heading p{max-width:340px;font-size:.84rem;color:#d6c9dd}
.guna-motion-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}
.guna-motion-item{min-width:0}
.guna-motion-button{position:relative;display:block;aspect-ratio:1/1.12;width:100%;overflow:hidden;border-radius:12px;border:1px solid #725384;cursor:pointer;background:#100c1c}
.guna-motion-button img,.guna-motion-button video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 36%}
.guna-motion-button video{display:none}
.guna-motion-icon{position:absolute;bottom:8px;right:8px;background:#160b23d9;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font-size:11px;color:#fff}
.guna-motion-name{display:block;margin-top:10px;text-align:center;font-size:12px;color:#f1e6f6}
.guna-page .regen-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.guna-page .guna-interactive-card{background:#1d1129;border:1px solid #664577;border-radius:14px;overflow:hidden;min-width:0}
.guna-page .guna-card-media{aspect-ratio:4/3;cursor:default}
.guna-page .guna-card-media img{width:100%;height:100%;object-fit:cover;object-position:center 34%}
.guna-page .guna-card-copy{padding:18px 18px 22px}
.guna-page .guna-card-copy h3{font-size:23px}
.guna-page .guna-card-copy p{font-size:13px;line-height:1.7}
.guna-card-detail{border-top:1px solid #ffffff33;padding-top:10px;margin-top:12px;color:#bba8cb!important;font-size:11px!important}
@media(max-width:1100px){.guna-motion-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.guna-page .regen-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.guna-motion-heading{display:block}.guna-motion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guna-page .regen-area-grid{grid-template-columns:1fr 1fr;gap:10px}.guna-page .guna-card-copy{padding:12px}.guna-page .guna-card-copy h3{font-size:18px}.guna-page .guna-card-copy p{font-size:12px}}

/* October polish: natural typography; no automatic word breaking */
main p,main article p,.about-page p,.guna-page p{ text-align:left!important;text-align-last:auto!important;hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:break-word!important;}
.guna-page .guna-motion-section{background:#4a3253;padding:32px 0 48px;color:#fff}
.guna-motion-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:24px}
.guna-motion-heading h2{font-size:clamp(27px,3vw,42px);line-height:1.15}
.guna-motion-heading p:not(.eyebrow){font-size:13px;max-width:430px;color:#eadfed;margin:0}
.guna-motion-heading .eyebrow{color:#d9bde3;margin-bottom:8px}
.guna-motion-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px;scrollbar-width:thin}
.guna-motion-tile{flex:0 0 calc((100% - 42px)/4);min-width:0;scroll-snap-align:start}
.guna-motion-control{display:block;width:100%;position:relative;aspect-ratio:1.75;background:#160c25;border:1px solid #9b80a9;border-radius:12px;overflow:hidden;cursor:pointer;text-align:left}
.guna-motion-control img,.guna-motion-control video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.guna-motion-control video{display:none}
.guna-motion-name{position:absolute;left:0;right:0;bottom:0;padding:9px 12px;background:linear-gradient(transparent,#110a1be8);color:#fff;font-size:13px;font-weight:600}
.guna-motion-name span{float:right}
.guna-page .regen-area-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
.guna-detail-card{min-width:0;background:#20112d;border:1px solid #5f4671;border-radius:14px;overflow:hidden;color:#fff}
.guna-detail-image{position:relative;aspect-ratio:4/5;overflow:hidden}
.guna-detail-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important}
.guna-detail-card .guna-card-copy{padding:17px 17px 21px}
.guna-detail-card .guna-card-copy h3{font-size:22px;margin:5px 0 8px;color:#fff}
.guna-detail-card .guna-card-copy p{font-size:12.5px;line-height:1.7;color:#e0d5e7;margin:0 0 9px}
.guna-detail-card .guna-card-copy .guna-card-note{font-size:10.5px;color:#bca8c8;margin:0}
.guna-detail-card .guna-card-kicker{font-size:10px;letter-spacing:.1em;color:#8ad8f8}
@media(max-width:900px){.guna-motion-tile{flex-basis:calc((100% - 14px)/2)}.guna-page .regen-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.guna-motion-heading{display:block}.guna-motion-heading p:not(.eyebrow){margin-top:12px}.guna-motion-tile{flex-basis:76%}.guna-page .regen-area-grid{grid-template-columns:1fr!important}.guna-detail-image{aspect-ratio:4/3}}

/* Final GUNA: single eight-animation strip; static details remain below */
.guna-page .guna-motion-strip{position:relative;z-index:1;clear:both;padding:58px 0 62px;background:#271431}
.guna-page .guna-motion-strip .guna-motion-heading h2{color:#f8efff!important;opacity:1!important}
.guna-page .guna-motion-strip .guna-motion-heading h2 em{color:#d4a9e7!important}
.guna-page .guna-motion-strip .guna-motion-heading p{color:#eadced!important}
.guna-page .guna-motion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.guna-page .guna-motion-item{min-width:0;position:relative}
.guna-page .guna-motion-button{display:block;position:relative;aspect-ratio:16/10;width:100%;overflow:hidden;border-radius:12px;background:#130d1d}
.guna-page .guna-motion-button img,.guna-page .guna-motion-button video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.guna-page .guna-motion-item>.guna-motion-name{position:static;display:block;margin-top:10px;text-align:center;background:none;padding:0;color:#fff;font-size:13px}
.guna-page .guna-hero{position:relative;z-index:0}
@media(max-width:800px){.guna-page .guna-motion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.guna-page .guna-motion-grid{gap:10px}.guna-page .guna-motion-strip{padding:40px 0}}

/* Final GUNA motion gallery: show the full vertical artwork */
.guna-page .guna-motion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.guna-page .guna-motion-button{width:100%;height:auto;aspect-ratio:2/3;position:relative;overflow:hidden;border-radius:14px}
.guna-page .guna-motion-button img,.guna-page .guna-motion-button video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;background:#061020}
.guna-page .guna-motion-item{min-width:0}
.guna-page .guna-motion-name{display:block;margin-top:9px;text-align:center}
@media(max-width:800px){.guna-page .guna-motion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:450px){.guna-page .guna-motion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}}

/* Treatments selector: refined editorial layout */
.regen-guna-page .selector-panel{max-width:1180px;margin-inline:auto}
.regen-guna-page .biolevox-feature,.regen-guna-page .therapy-feature,.regen-guna-page .guna-intro-hero{align-items:center;gap:clamp(26px,4vw,70px)}
.regen-guna-page .biolevox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.regen-guna-page .biolevox-card{height:100%;min-width:0}
.regen-guna-page .biolevox-mini{border-color:#57c7e8}
.regen-guna-page .biolevox-mini h3 span{color:#57c7e8}
.regen-guna-page .therapy-feature{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.regen-guna-page .therapy-hero{width:100%;min-height:300px;display:flex;align-items:stretch}
.regen-guna-page .therapy-hero img{width:100%;height:100%;min-height:300px;object-fit:contain;border-radius:12px}
.regen-guna-page .selector-panel p{hyphens:none;overflow-wrap:normal;word-break:normal;text-align:left}
@media(max-width:720px){.regen-guna-page .biolevox-grid{grid-template-columns:1fr}.regen-guna-page .therapy-feature{grid-template-columns:1fr}.regen-guna-page .therapy-hero,.regen-guna-page .therapy-hero img{min-height:unset}}

/* October 24 final treatment layout pass */
.regen-guna-page .selector-panel{width:min(1160px,calc(100% - 48px));max-width:1160px;margin-inline:auto}
.regen-guna-page .guna-intro-hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:34px;align-items:center}
.regen-guna-page .guna-intro-hero>*{min-width:0;max-width:100%}
.regen-guna-page .guna-hero-art{width:100%;max-width:100%;height:360px;overflow:hidden;border-radius:14px}
.regen-guna-page .guna-hero-art img{width:100%;height:100%;object-fit:cover;display:block}
.regen-guna-page .guna-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.regen-guna-page .guna-overview-grid>*{min-width:0}
.regen-guna-page .biolevox-feature{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:36px}
.regen-guna-page .biolevox-hero-art{width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;background:#170c29;border-radius:14px}
.regen-guna-page .therapy-feature{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:38px;align-items:center}
.regen-guna-page .therapy-hero{height:410px;min-height:410px;overflow:hidden;border-radius:14px}
.regen-guna-page .therapy-hero img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
@media(max-width:850px){.regen-guna-page .guna-intro-hero,.regen-guna-page .biolevox-feature,.regen-guna-page .therapy-feature{grid-template-columns:1fr}.regen-guna-page .therapy-hero{height:340px;min-height:0}.regen-guna-page .guna-overview-grid{grid-template-columns:1fr}}
@media(max-width:550px){.regen-guna-page .selector-panel{width:calc(100% - 30px)}.regen-guna-page .guna-hero-art{height:260px}.regen-guna-page .therapy-hero{height:250px}}

/* REGEN in Motion — homepage video */
.regen-motion-section{padding:clamp(48px,6vw,96px) 0;background:linear-gradient(180deg,#21112d 0%,#2c153b 52%,#21112d 100%);color:#fff}
.regen-motion-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:26px}
.regen-motion-heading h2{font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.08;margin:12px 0 0;color:#fff}
.regen-motion-heading h2 span{color:#d8b0ec}
.regen-motion-heading>p{max-width:370px;color:#d9c7df;line-height:1.65;margin:0}
.regen-motion-frame{border:1px solid rgba(209,147,244,.48);border-radius:18px;overflow:hidden;background:#12091e;box-shadow:0 20px 70px rgba(0,0,0,.25),0 0 35px rgba(159,77,219,.13)}
.regen-motion-frame video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.regen-motion-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;color:#cbb5d5;font-size:.85rem}
.regen-motion-foot a{color:#f0d5ff;text-decoration:underline;text-underline-offset:5px}
@media(max-width:700px){.regen-motion-heading{display:block}.regen-motion-heading>p{margin-top:16px}.regen-motion-foot{flex-wrap:wrap}.regen-motion-frame{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.regen-motion-frame video{animation:none}}

/* Portrait: About Chris Curtis */
.about-portrait{min-width:0;}
.about-chris-photo{display:block;width:100%;height:auto;max-height:500px;object-fit:contain;object-position:center;border:1px solid #806b8b;border-radius:14px;background:#eeeaf0;}
@media(max-width:800px){.about-portrait{width:100%;max-width:430px;margin-inline:auto}.about-chris-photo{max-height:520px}}

/* Refined portrait presentation — October 2026 */
.about-portrait{position:relative;padding:10px;border:1px solid rgba(196,139,233,.38);border-radius:20px;background:linear-gradient(145deg,rgba(157,90,199,.23),rgba(30,14,49,.7));box-shadow:0 25px 70px rgba(12,5,26,.28)}
.about-chris-photo{border:0;border-radius:12px;background:#2d1b40;max-height:520px;object-fit:contain}

/* Partner links across all site footers */
.site-footer .footer-related{display:flex;justify-content:center;align-items:center;gap:12px 28px;flex-wrap:wrap;padding:19px 24px;margin:0 auto;max-width:1200px;border-top:1px solid rgba(255,255,255,.13);font-size:13px}
.site-footer .footer-related span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.68}
.site-footer .footer-related a{color:#e5cbfa;text-decoration:none;font-weight:600}
.site-footer .footer-related a:hover,.site-footer .footer-related a:focus-visible{color:#fff;text-decoration:underline}

/* Clearly visible related websites across all page footers */
.site-footer .footer-related{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:24px;padding-bottom:24px;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.13)}
.site-footer .footer-related h2{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#e9d7f7;margin:0;font-weight:600}
.site-footer .footer-related-links{display:flex;gap:16px 36px;flex-wrap:wrap}
.site-footer .footer-related-links a{color:#f7efff;text-decoration:underline;text-decoration-color:rgba(206,157,246,.65);text-underline-offset:5px;font-size:15px;font-weight:500;transition:color .2s ease}
.site-footer .footer-related-links a:hover,.site-footer .footer-related-links a:focus-visible{color:#d7aaff}
.site-footer .footer-related-links span{color:#c99df3}
@media(max-width:650px){.site-footer .footer-related{align-items:flex-start;flex-direction:column}.site-footer .footer-related-links{flex-direction:column;gap:15px}}

/* October 25 mobile navigation readability fix — only mobile menu */
@media (max-width: 980px) {
  .site-header .main-nav {
    background: #251631 !important;
    color: #f6edf9 !important;
    padding: max(22px, env(safe-area-inset-top)) 26px max(24px, env(safe-area-inset-bottom)) !important;
    overflow-y: auto !important;
    height: 100dvh;
    max-height: 100dvh;
    box-sizing: border-box;
  }
  .site-header .main-nav .nav-links {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    flex: 0 1 auto !important;
    gap: 4px !important;
    width: 100%;
    margin: auto 0;
  }
  .site-header .main-nav .nav-links a,
  .site-header .main-nav .nav-links a:visited {
    display: block !important;
    color: #f7f0fb !important;
    font-family: var(--font-body), sans-serif !important;
    font-size: clamp(16px, 4.3vw, 21px) !important;
    font-weight: 500 !important;
    letter-spacing: .015em !important;
    line-height: 1.35 !important;
    padding: 10px 12px !important;
    border-radius: 8px;
    text-decoration: none !important;
    white-space: normal !important;
  }
  .site-header .main-nav .nav-links a:hover,
  .site-header .main-nav .nav-links a:focus-visible,
  .site-header .main-nav .nav-links a.is-active {
    color: #fff !important;
    background: #51325f !important;
  }
  .site-header .main-nav .mobile-nav-top { flex-shrink: 0; }
  .site-header .main-nav .mobile-nav-cta { flex-shrink: 0; padding-top: 12px; }
}
@media (max-width: 380px) {
  .site-header .main-nav { padding-inline: 16px !important; }
  .site-header .main-nav .nav-links a { padding-block: 7px !important; font-size: 16px !important; }
}

/* Mobile visual corrections — 25 October 2026 */
.guna-page .regen-art-caption{display:none!important}
.guna-page .regen-feature-grid,.guna-page .regen-feature-art,.guna-page .regen-feature-copy{min-width:0!important;max-width:100%!important}
.guna-page .regen-feature-art img{max-width:82%!important;object-fit:contain!important}
.site-footer .footer-regen-wordmark{display:none!important}
.site-footer .footer-brand-link.footer-regen-lockup{width:auto!important;max-width:100%!important;overflow:hidden!important}
.site-footer .footer-regen-helix{width:clamp(140px,38vw,220px)!important;height:auto!important;max-width:100%!important}
.site-footer .footer-main>*,.site-footer .footer-brand-panel,.site-footer .footer-grid>*{min-width:0!important;max-width:100%!important}
.site-footer .footer-brand-panel>p{overflow-wrap:anywhere!important}
@media(max-width:767px){
 .about-portrait,.about-chris-photo{max-width:100%!important;overflow:hidden!important}
 .about-chris-photo{height:auto!important;max-height:none!important;object-fit:cover!important}
 .guna-page .regen-feature-art{min-height:0!important;aspect-ratio:1.25!important}
 .guna-page .regen-feature-grid{grid-template-columns:minmax(0,1fr)!important}
 .site-footer{overflow-x:clip!important}
 .site-footer .footer-main{grid-template-columns:minmax(0,1fr)!important}
}

/* Footer logo: icon only, safely contained at all screen widths (25 Oct). */
.site-footer .footer-brand-panel { display:flex!important; align-items:center!important; justify-content:center!important; min-width:0!important; max-width:100%!important; overflow:hidden!important; }
.site-footer .footer-brand-link.footer-regen-lockup { display:flex!important; width:100%!important; max-width:260px!important; margin:0 auto!important; align-items:center!important; justify-content:center!important; overflow:visible!important; }
.site-footer .footer-brand-link .footer-regen-helix { display:block!important; width:min(100%,180px)!important; height:auto!important; max-width:180px!important; max-height:none!important; object-fit:contain!important; }
.site-footer .footer-brand-panel > p, .site-footer .footer-regen-wordmark { display:none!important; }
@media(max-width:767px) { .site-footer .footer-brand-link.footer-regen-lockup { max-width:190px!important; } .site-footer .footer-brand-link .footer-regen-helix { width:150px!important; max-width:100%!important; } }

/* Footer helix refinement — enlarge icon without altering header or footer columns. */
@media (min-width: 768px) {
  .site-footer .footer-brand-link.footer-regen-lockup { max-width: 330px !important; }
  .site-footer .footer-brand-link .footer-regen-helix { width: 270px !important; max-width: 100% !important; height: auto !important; }
}
@media (max-width: 767px) {
  .site-footer .footer-brand-link.footer-regen-lockup { max-width: 230px !important; }
  .site-footer .footer-brand-link .footer-regen-helix { width: 190px !important; max-width: 100% !important; height: auto !important; }
}
