/* Corporate-v2 canonical runtime stylesheet.
 * Consolidated from CLEAN023 without changing blueprint geometry, contracts,
 * module boundaries, asset ownership, or profile behavior.
 */
.cv2{--bg:#f3efe5;--surface:#f8f4eb;--surface-alt:#e5eadb;--ink:#11291d;--muted:#536159;--accent:#c89a31;--accent-2:#7c9b62;--deep:#073c22;--line:rgba(17,41,29,.16);--overlay:#e2a900;--cv2-header-background:linear-gradient(90deg,var(--deep),color-mix(in srgb,var(--deep) 90%,#000));--cv2-footer-background:var(--deep);--cv2-brand-accent:#d7aa43;--cv2-nav-current:var(--accent);--cv2-nav-hover:var(--accent);--fw-font-brand:"Cinzel",Georgia,serif;--fw-font-heading:"Cinzel",Georgia,serif;--fw-font-body:Inter,"Source Sans 3",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);font-family:var(--fw-font-body);line-height:1.5;min-height:100vh;}.cv2[data-locale^="zh"], .cv2[data-locale^="zh-TW"]{--fw-font-brand:"Noto Sans TC","Microsoft JhengHei",sans-serif;--fw-font-heading:"Noto Sans TC","Microsoft JhengHei",sans-serif;--fw-font-body:"Noto Sans TC","Microsoft JhengHei","Segoe UI",sans-serif;}



.cv2 *{box-sizing:border-box;}.cv2 a{color:inherit;}.cv2 img{display:block;max-width:100%;}.cv2-skip{position:absolute;left:-9999px;}.cv2-skip:focus{left:1rem;top:1rem;z-index:1000;background:#fff;color:#000;padding:.75rem 1rem;}.cv2-wrap{width:min(1280px,calc(100% - 3rem));margin-inline:auto;}
.cv2-header{height:82px;display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(125px,.45fr);align-items:center;gap:1.5rem;padding:0 clamp(1.5rem,4vw,4rem);background:var(--cv2-header-background);color:#fff;border-bottom:1px solid rgba(255,255,255,.16);position:relative;z-index:5;}.cv2-brand{display:flex;align-items:center;gap:.85rem;text-decoration:none;min-width:0;}.cv2-brand-names{display:flex;flex-direction:column;min-width:0;line-height:1.05;}.cv2-brand strong{font-family:var(--fw-font-brand);font-size:1.32rem;letter-spacing:.045em;color:var(--cv2-brand-accent);white-space:nowrap;overflow:visible;}.cv2-brand small{opacity:.9;margin-top:.28rem;white-space:nowrap;}.cv2-secondary-name{color:#fff;}.cv2-logo{width:auto;max-width:70px;max-height:56px;object-fit:contain;flex:0 0 auto;}.cv2-mark{font-size:1.9rem;color:var(--accent);}
.cv2-nav{display:flex;gap:1.55rem;align-items:center;white-space:nowrap;}.cv2-nav a{text-decoration:none;font-size:.82rem;font-weight:600;opacity:.9;position:relative;}.cv2-nav a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:-15px;height:2px;background:var(--cv2-nav-current);}.cv2-nav a:hover, .cv2-nav a:focus{opacity:1;color:var(--cv2-nav-hover);}.cv2-language{justify-self:end;display:flex;align-items:center;gap:.35rem;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.28rem .58rem;}.cv2-language select{appearance:none;border:0;background:transparent;color:#fff;font:inherit;font-size:.72rem;max-width:100px;cursor:pointer;}.cv2-language option{color:#111;background:#fff;}
.cv2-hero{height:470px;display:grid;align-items:center;position:relative;background-image:var(--cv2-hero-image);background-position:var(--cv2-hero-position,center center);background-size:var(--cv2-hero-size,cover);background-repeat:no-repeat;overflow:hidden;}.cv2-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,244,235,.99) 0%,rgba(248,244,235,.96) 25%,rgba(248,244,235,.78) 43%,rgba(248,244,235,.34) 62%,rgba(248,244,235,.08) 78%,transparent 90%);}.cv2-hero-copy{position:relative;z-index:2;color:var(--ink);padding:3.5rem 0;max-width:560px;margin-left:max(3rem,calc((100% - 1280px)/2));}.cv2-eyebrow{margin:0 0 .7rem;color:var(--accent);font-weight:800;letter-spacing:.12em;font-size:.78rem;}.cv2 h1, .cv2 h2{font-family:var(--fw-font-heading);font-weight:500;line-height:1.06;margin:.2em 0;}.cv2 h1{font-size:clamp(2.8rem,4.5vw,4.8rem);max-width:13ch;}.cv2 h2{font-size:clamp(1.55rem,2.2vw,2.6rem);}.cv2-subtitle{font-size:clamp(1.08rem,1.5vw,1.35rem);font-weight:750;margin:.8rem 0;}.cv2-body{max-width:54ch;font-size:.98rem;color:color-mix(in srgb,currentColor 80%,transparent);}.cv2-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem;}.cv2-button{display:inline-flex;padding:.75rem 1.2rem;text-decoration:none;font-weight:700;font-size:.86rem;}.cv2-button-primary{background:var(--deep);color:#fff;border:1px solid var(--deep);border-radius:3px;}.cv2-button:not(.cv2-button-primary){border:0;}
.cv2-values{background:var(--cv2-values-bg,#f7f2e8);border-block:1px solid var(--line);padding:1.25rem 0 1.5rem;}.cv2-values-title{text-align:center;font-family:var(--fw-font-heading);font-weight:700;font-size:.85rem;letter-spacing:.1em;margin:0 0 .75rem;}.cv2-values-grid{display:grid;grid-template-columns:repeat(4,1fr);}.cv2-value{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.45rem;padding:1rem 1.1rem;border-right:1px solid var(--line);}.cv2-value:last-child{border-right:0;}.cv2-value-icon{width:51px;height:51px;border:1.5px solid var(--deep);border-radius:50%;display:grid;place-items:center;color:var(--deep);font-size:1.4rem;}.cv2-value h3{font-family:inherit;font-size:.88rem;font-weight:800;margin:.05rem 0;}.cv2-value p{font-size:.72rem;color:var(--muted);margin:0;}
.cv2-band{width:100%;margin:0;display:grid;gap:0;}.cv2-story-products{grid-template-columns:1fr 1.55fr;min-height:330px;}.cv2-media-story{grid-template-columns:1fr 1fr;min-height:245px;}.cv2-panel{background:var(--surface);border:0;min-width:0;overflow:hidden;position:relative;}.cv2-panel-copy{padding:clamp(2rem,4vw,4.2rem);}.cv2-panel-copy p{color:var(--muted);white-space:pre-line;}.cv2-story{background:linear-gradient(105deg,color-mix(in srgb,var(--accent-2) 28%,#fff),var(--surface));display:flex;align-items:center;}.cv2-story .cv2-panel-copy{max-width:560px;margin-left:auto;}.cv2-panel-products{background:linear-gradient(rgba(250,247,239,.88),rgba(250,247,239,.88)),var(--cv2-product-bg) center/cover no-repeat;color:var(--ink);}.cv2-product-grid{display:flex;align-items:flex-end;justify-content:center;gap:1.5rem;margin-top:1rem;}.cv2-product{display:block;text-decoration:none;text-align:center;padding:.4rem;max-width:210px;}.cv2-product img{width:100%;height:190px;object-fit:contain;background:transparent;}.cv2-product strong, .cv2-product-sku{display:block;margin-top:.4rem;font-size:.78rem;}.cv2-product-sku{opacity:.7;letter-spacing:.04em;}.cv2-media-panel{min-height:245px;position:relative;background:#07180d;color:#fff;}.cv2-media-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}.cv2-media-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.16));}.cv2-media-panel .cv2-panel-copy{position:relative;z-index:2;max-width:52%;padding:2rem;}.cv2-media-panel h2{font-size:1.2rem;}.cv2-media-panel p{font-size:.82rem;color:rgba(255,255,255,.82);}
.cv2-contact{position:relative;color:var(--ink);padding:3.4rem 0;background:linear-gradient(90deg,rgba(249,246,239,.97),rgba(249,246,239,.9) 52%,rgba(249,246,239,.15)),var(--cv2-contact-bg) center/cover no-repeat;}.cv2-contact-grid{display:grid;grid-template-columns:.85fr 1.4fr;gap:3rem;align-items:start;}.cv2-contact-copy p{color:var(--muted);}.cv2-contact-form{background:rgba(255,255,255,.84);color:#222;padding:1.2rem 1.4rem;min-height:260px;border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 38px rgba(0,0,0,.1);backdrop-filter:blur(8px);}.cv2-contact-form label{font-size:.8rem;}.cv2-contact-form input, .cv2-contact-form textarea, .cv2-contact-form select{width:100%;max-width:100%;border:1px solid rgba(17,41,29,.25);background:rgba(255,255,255,.75);padding:.55rem;}.cv2-contact-form button, .cv2-contact-form input[type=submit]{width:auto;background:var(--deep);color:#fff;border:0;padding:.7rem 1.15rem;}.cv2-qr-grid{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem;}.cv2-qr{display:grid;gap:.4rem;text-decoration:none;font-size:.75rem;}.cv2-qr img{width:92px;height:92px;object-fit:cover;background:#fff;padding:.25rem;}
.cv2-footer{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:2rem;padding:2rem clamp(1.5rem,4vw,4rem);background:var(--cv2-footer-background);color:#fff;}.cv2-footer-brand{display:grid;}.cv2-footer-brand strong{font-family:var(--fw-font-brand);color:var(--accent);font-size:1.2rem;}.cv2-footer small{opacity:.68;}.cv2-footer nav{display:flex;gap:1rem;flex-wrap:wrap;}.cv2-footer nav a{text-decoration:none;font-size:.76rem;opacity:.75;}
.cv2-overlay-target{position:relative;outline:2px dashed var(--overlay);outline-offset:-2px;}.cv2-overlay-target:before{content:attr(data-overlay-label) "  |  " attr(data-overlay-section) " / " attr(data-overlay-slot) "  |  " attr(data-overlay-contract);position:absolute;top:4px;left:4px;z-index:9999;background:rgba(0,0,0,.88);color:#fff;border-left:4px solid var(--overlay);font:600 11px/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;padding:6px 8px;max-width:calc(100% - 8px);pointer-events:none;}.cv2-overlay-empty{min-height:80px;display:grid;place-items:center;background:repeating-linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,255,255,.7) 10px,rgba(0,0,0,.05) 10px,rgba(0,0,0,.05) 20px);color:#333;font:600 12px ui-monospace,monospace;}
.cv2-content-shell{min-height:60vh;}.cv2-native-content{padding:clamp(3rem,7vw,7rem) 0;}.cv2-native-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;}.cv2-native-product{background:var(--surface);border:1px solid var(--line);padding:1rem;text-decoration:none;}.cv2-native-product img{width:100%;aspect-ratio:1/1;object-fit:contain;}.cv2-native-product h2{font-size:1.25rem;}.cv2-native-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;}.cv2-native-detail-grid>img{width:100%;max-height:640px;object-fit:contain;background:var(--surface);}

.cv2-hero{--cv2-hero-size:cover;}




@media(max-width:1050px){.cv2-header{grid-template-columns:1fr auto}.cv2-nav{display:none}.cv2-language{grid-column:2}.cv2-hero{height:430px}.cv2-story-products{grid-template-columns:1fr 1.25fr}}
@media(max-width:760px){.cv2-header{height:72px;padding-inline:1rem}.cv2-logo{max-width:50px;max-height:45px}.cv2-brand strong{font-size:1rem}.cv2-brand small{font-size:.58rem}.cv2-language{padding:.2rem .4rem}.cv2-hero{height:500px;--cv2-hero-size:auto 100%;--cv2-hero-position:68% center}.cv2-hero-shade{background:linear-gradient(90deg,rgba(248,244,235,.97),rgba(248,244,235,.82) 68%,rgba(248,244,235,.25))}.cv2-hero-copy{margin-left:1.25rem;margin-right:1.25rem}.cv2-values-grid{grid-template-columns:repeat(2,1fr)}.cv2-value:nth-child(2){border-right:0}.cv2-story-products, .cv2-media-story, .cv2-contact-grid, .cv2-native-detail-grid{grid-template-columns:1fr}.cv2-story .cv2-panel-copy{margin:0}.cv2-media-panel{min-height:280px}.cv2-contact{background-position:70% center}.cv2-native-product-grid{grid-template-columns:repeat(2,1fr)}.cv2-footer{grid-template-columns:1fr;align-items:flex-start}}
@media(max-width:480px){.cv2-language span{display:none}.cv2-language select{max-width:80px}.cv2-values-grid{grid-template-columns:1fr}.cv2-value{border-right:0;border-bottom:1px solid var(--line)}.cv2-product-grid, .cv2-native-product-grid{display:grid;grid-template-columns:1fr 1fr}.cv2-product img{height:140px}.cv2-media-panel .cv2-panel-copy{max-width:80%}}


/* Canonical profile identity rules begin below. Legacy experimental layout grammar removed. */

.cv2{
  --cv2-section-block:clamp(3rem,6vw,6.5rem);
  --cv2-canonical-gap:clamp(1rem,2vw,2rem);
  --cv2-canonical-columns:minmax(0,1fr) minmax(0,1fr);
  --cv2-motion-fast:220ms;
  --cv2-motion-medium:640ms;
  --cv2-motion-slow:1100ms;
  --cv2-ease:cubic-bezier(.2,.75,.25,1);
  overflow:hidden;
}

/* Blueprint lock: identical section order and slot geometry for all profiles. */
.cv2 .cv2-story-products, .cv2-story-products{
  display:grid;
  grid-template-columns:var(--cv2-canonical-columns);
  gap:var(--cv2-canonical-gap);
  padding:var(--cv2-section-block) clamp(1rem,5vw,6rem);
}
.cv2 .cv2-story{order:1;transform:none;}
.cv2 .cv2-panel-products{order:2;transform:none;}
.cv2 .cv2-media-story, .cv2-media-story{
  display:grid;
  grid-template-columns:var(--cv2-canonical-columns);
  gap:var(--cv2-canonical-gap);
  padding:var(--cv2-section-block) clamp(1rem,5vw,6rem);
}
.cv2 .cv2-media-primary{order:1;transform:none;clip-path:none;}
.cv2 .cv2-media-secondary{order:2;transform:none;clip-path:none;}
.cv2 .cv2-values-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.cv2 .cv2-value{transform:none;}
.cv2 .cv2-contact-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,6rem);}

/* Canonical chapter rhythm. Identity changes atmosphere, never slot position. */
.cv2 [data-cv2-section]{position:relative;}
.cv2 [data-cv2-section]::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.14;z-index:0;}
.cv2 [data-cv2-section]>*{position:relative;z-index:1;}
.cv2 .cv2-panel{display:flex;align-items:center;}
.cv2 .cv2-panel-copy{max-width:42rem;}
.cv2 .cv2-story, .cv2 .cv2-panel-products, .cv2 .cv2-media-panel, .cv2 .cv2-contact-form{will-change:transform;}
.cv2 .cv2-product{isolation:isolate;}
.cv2 .cv2-product::after{inset:auto -35% -60% -35%;opacity:0;}
.cv2 .cv2-product:hover::after{opacity:1;}
.cv2 .cv2-product:hover{transform:translateY(-5px);}

/* Hero atmosphere and focal motion. */
.cv2 .cv2-hero{display:flex;align-items:center;}
.cv2 .cv2-hero::after{content:"";position:absolute;inset:0;background:var(--cv2-profile-bokeh) center/cover;opacity:.08;mix-blend-mode:screen;animation:cv2-drift 18s ease-in-out infinite alternate;pointer-events:none;}

.cv2 .cv2-hero h1{max-width:12ch;text-wrap:balance;}
.cv2 .cv2-hero .cv2-body, .cv2 .cv2-hero .cv2-subtitle{max-width:52ch;}

/* GAIA: natural light, soft material, organic detail inside fixed slots. */








/* HELIX: measured grid, scanning lines, laboratory instrumentation. */







/* ATLAS: editorial rules, architectural restraint, equal canonical columns. */








/* NEXUS: connected light, responsive glow, glass surfaces in fixed slots. */







/* Progressive reveal; markup order remains untouched. */
.cv2-js .cv2-reveal, .cv2-js .cv2-reveal-item{opacity:0;}
.cv2-js .cv2-reveal.is-visible, .cv2-js .cv2-reveal-item.is-visible{opacity:1;}
.cv2-js .cv2-reveal-item:nth-child(2){transition-delay:80ms;}.cv2-js .cv2-reveal-item:nth-child(3){transition-delay:160ms;}.cv2-js .cv2-reveal-item:nth-child(4){transition-delay:240ms;}

@keyframes cv2-drift{from{transform:scale(1.02) translate3d(-.4%,0,0)}to{transform:scale(1.07) translate3d(.6%,-.5%,0)}}
@keyframes cv2-scan{0%{top:0;opacity:0}12%{opacity:.65}88%{opacity:.65}100%{top:100%;opacity:0}}

@media(max-width:900px){
  .cv2 .cv2-story-products, .cv2 .cv2-media-story, .cv2 .cv2-contact-grid{grid-template-columns:1fr}
  .cv2 .cv2-story, .cv2 .cv2-panel-products, .cv2 .cv2-media-primary, .cv2 .cv2-media-secondary{order:initial}
  .cv2 .cv2-values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cv2 .cv2-panel{min-height:320px}
}
@media(max-width:600px){
  .cv2 .cv2-values-grid{grid-template-columns:1fr}
  .cv2 .cv2-hero{background-image:var(--cv2-hero-mobile-image,var(--cv2-hero-image));background-position:center}
  .cv2 .cv2-hero h1{max-width:10ch}
}
@media(prefers-reduced-motion:reduce){
  .cv2 *, .cv2 *::before, .cv2 *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
  .cv2-js .cv2-reveal, .cv2-js .cv2-reveal-item{opacity:1;transform:none}
}


.cv2{
  --cv2-frame:min(1280px,calc(100% - 3rem));
  --cv2-section-pad:clamp(2.2rem,4vw,4.5rem);
  --cv2-soft-shadow:0 18px 44px rgba(0,0,0,.08);
  --cv2-image-shadow:0 20px 55px rgba(0,0,0,.14);
  overflow-x:hidden;
}
.cv2 [data-cv2-section]::before{display:none!important;}
.cv2 .cv2-hero::after{display:none!important;}
.cv2 .cv2-hero{height:clamp(410px,42vw,560px);background-position:center;background-size:cover;}
.cv2 .cv2-hero-copy{padding-block:clamp(3rem,6vw,5.5rem);}
.cv2 .cv2-hero h1{font-size:clamp(2.5rem,4vw,4.2rem);letter-spacing:-.025em;}

.cv2 .cv2-values{padding:1.6rem 0 1.9rem;border-block:1px solid var(--line);}
.cv2 .cv2-values-grid{background:transparent;}
.cv2 .cv2-value, .cv2-value{background:transparent;border-radius:0;box-shadow:none;backdrop-filter:none;min-height:118px;justify-content:center;border-right:1px solid var(--line);border-top:0;text-align:center;align-items:center;padding:1rem 1.2rem;}
.cv2 .cv2-value:last-child{border-right:0;}

.cv2 .cv2-story-products, .cv2-story-products{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:0;padding:0;background:var(--surface);}
.cv2 .cv2-panel, .cv2-panel{min-height:360px;border-radius:0;border:0;box-shadow:none;backdrop-filter:none;}

.cv2 .cv2-story .cv2-panel-copy{max-width:500px;margin:auto;padding:clamp(2.5rem,5vw,5rem);}
.cv2 .cv2-panel-products{background:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),var(--cv2-product-bg) center/cover no-repeat;}
.cv2 .cv2-panel-products .cv2-panel-copy{width:100%;padding:clamp(2rem,4vw,4rem);}
.cv2 .cv2-product-grid{gap:clamp(.8rem,2vw,2rem);}
.cv2 .cv2-product{transition:transform .25s ease;overflow:visible;}
.cv2 .cv2-product img{height:190px;filter:drop-shadow(0 16px 18px rgba(0,0,0,.16));}
.cv2 .cv2-media-story, .cv2-media-story{grid-template-columns:1fr 1fr;gap:1px;padding:0;background:var(--deep);}
.cv2 .cv2-media-panel, .cv2-media-panel{min-height:285px;border:0;border-radius:0;clip-path:none;box-shadow:none;}

.cv2 .cv2-media-panel .cv2-panel-copy{max-width:58%;padding:clamp(1.8rem,3vw,3rem);}
.cv2 .cv2-contact, .cv2-contact{margin:0;border-radius:0;border:0;padding:clamp(3rem,5vw,5rem) 0;}


/* GAIA — warm paper, botanical detail, quiet natural confidence. */







/* HELIX — clean laboratory whites, exact blue rules, measured precision. */









/* ATLAS — editorial cream, restrained gold, architectural authority. */









/* NEXUS — luminous dark frame with calm pale content surfaces. */












@media(max-width:900px){
  .cv2 .cv2-story-products, .cv2 .cv2-media-story{grid-template-columns:1fr}
  .cv2 .cv2-hero{height:500px}
  .cv2 .cv2-media-panel .cv2-panel-copy{max-width:75%}
}


.cv2{--cv2-hero-copy-width:min(38rem,46vw);--cv2-radius:0;--cv2-hairline:rgba(255,255,255,.18);}
.cv2 .cv2-hero{position:relative;isolation:isolate;min-height:520px;overflow:hidden;}
.cv2 .cv2-hero-art, .cv2 .cv2-hero-shade{position:absolute;inset:0;pointer-events:none;}
.cv2 .cv2-hero-art{z-index:0;background:var(--cv2-hero-image) center/cover no-repeat;}
.cv2 .cv2-hero-shade{z-index:1;}
.cv2 .cv2-hero-layout{position:relative;z-index:2;display:grid;align-items:center;min-height:inherit;}
.cv2 .cv2-hero-copy{margin:0;max-width:none;padding:clamp(3.5rem,6vw,6.5rem) clamp(1.5rem,4vw,4.5rem) clamp(3rem,6vw,6rem) 0;}
.cv2 .cv2-hero-copy::before{content:"";display:block;width:3.5rem;height:2px;background:var(--accent);margin-bottom:1.35rem;}
.cv2 .cv2-hero-signature{position:absolute;right:clamp(1.5rem,4vw,4rem);bottom:clamp(1.5rem,3vw,3rem);display:flex;gap:.55rem;z-index:3;}
.cv2 .cv2-hero-signature span{width:2.8rem;height:1px;background:rgba(255,255,255,.5);transform-origin:right center;}
.cv2 .cv2-hero-signature span:nth-child(2){width:1.4rem;opacity:.65;}.cv2 .cv2-hero-signature span:nth-child(3){width:.7rem;opacity:.35;}
.cv2 .cv2-hero-atmosphere, .cv2 .cv2-hero-pattern, .cv2 .cv2-hero-orbit{position:absolute;inset:0;}
.cv2 .cv2-hero-pattern{opacity:.24;mix-blend-mode:screen;}
.cv2 .cv2-hero-orbit{border:1px solid rgba(255,255,255,.18);border-radius:50%;width:22rem;height:22rem;inset:auto 5% 8% auto;opacity:.35;}
.cv2 .cv2-hero-orbit-b{width:34rem;height:34rem;inset:auto -8% -24% auto;opacity:.18;}

.cv2 .cv2-values{position:relative;}
.cv2 .cv2-values::after{content:"";position:absolute;left:50%;bottom:-1px;width:min(92%,1100px);height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:translateX(-50%);opacity:.45;}
.cv2 .cv2-values-grid{position:relative;}
.cv2 .cv2-value{position:relative;overflow:hidden;transition:transform .3s ease,color .3s ease,background-color .3s ease;}
.cv2 .cv2-value::before{content:"0" counter(cv2value);counter-increment:cv2value;position:absolute;top:.65rem;right:.8rem;font-size:.66rem;letter-spacing:.14em;color:var(--muted);opacity:.55;}
.cv2 .cv2-values-grid{counter-reset:cv2value;}

.cv2 .cv2-value-icon{display:grid;place-items:center;width:3.1rem;height:3.1rem;border:1px solid currentColor;border-radius:50%;margin-bottom:.75rem;}
.cv2 .cv2-value-icon img{width:1.55rem;height:1.55rem;object-fit:contain;filter:var(--cv2-icon-filter,none);}

.cv2 .cv2-story-products{position:relative;isolation:isolate;}
.cv2 .cv2-story-products::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.94%,var(--line) 50%,transparent 50.06%);z-index:3;}
.cv2 .cv2-panel{position:relative;overflow:hidden;isolation:isolate;}
.cv2 .cv2-panel-copy{position:relative;z-index:3;}
.cv2 .cv2-panel-accent{position:absolute;pointer-events:none;z-index:1;}
.cv2 .cv2-panel-accent-a{width:18rem;height:18rem;border-radius:50%;right:-9rem;top:-9rem;border:1px solid var(--line);}
.cv2 .cv2-panel-accent-b{left:clamp(2rem,5vw,5rem);bottom:2.2rem;width:4rem;background:var(--accent);}
.cv2 .cv2-story h2, .cv2 .cv2-panel-products h2{max-width:12ch;}
.cv2 .cv2-story p{max-width:34rem;}
.cv2 .cv2-panel-products{isolation:isolate;}
.cv2 .cv2-panel-products::before{content:"";position:absolute;inset:0;z-index:0;}
.cv2 .cv2-product-light{position:absolute;inset:-35% 10% auto;height:75%;background:radial-gradient(ellipse,rgba(255,255,255,.9),transparent 68%);z-index:1;pointer-events:none;}
.cv2 .cv2-product-plinth{position:absolute;left:18%;right:8%;bottom:12%;height:12%;background:linear-gradient(180deg,rgba(255,255,255,.65),rgba(0,0,0,.08));filter:blur(12px);border-radius:50%;z-index:1;}
.cv2 .cv2-product{position:relative;z-index:2;background:transparent;border:0;padding:1rem .6rem;}
.cv2 .cv2-product::after{content:"";position:absolute;left:18%;right:18%;bottom:.55rem;height:1px;background:var(--accent);transform:scaleX(0);transition:transform .3s ease;}
.cv2 .cv2-product:hover::after{transform:scaleX(1);}

.cv2 .cv2-media-panel{position:relative;isolation:isolate;min-height:330px;}
.cv2 .cv2-media-image{transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s ease;}
.cv2 .cv2-media-panel:hover .cv2-media-image{transform:scale(1.045);}
.cv2 .cv2-media-corner{position:absolute;right:1.4rem;top:1.4rem;width:2.7rem;height:2.7rem;border-top:1px solid rgba(255,255,255,.62);border-right:1px solid rgba(255,255,255,.62);z-index:4;}
.cv2 .cv2-media-scan{position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:0;z-index:4;}
.cv2 .cv2-media-panel:hover .cv2-media-scan{animation:cv2-media-scan 1.8s ease;}
@keyframes cv2-media-scan{0%{top:0;opacity:0}15%{opacity:.8}85%{opacity:.8}100%{top:100%;opacity:0}}

.cv2 .cv2-contact{position:relative;isolation:isolate;overflow:hidden;}
.cv2 .cv2-contact-light{position:absolute;inset:0;z-index:0;}
.cv2 .cv2-contact-mark{position:absolute;left:4%;bottom:-7rem;width:22rem;height:22rem;border:1px solid var(--accent);border-radius:50%;opacity:.11;z-index:1;}
.cv2 .cv2-contact-grid{position:relative;z-index:2;}
.cv2 .cv2-contact-copy{padding-top:1rem;}
.cv2 .cv2-contact-copy::before{content:"";display:block;width:4rem;height:2px;background:var(--accent);margin-bottom:1.4rem;}
.cv2 .cv2-contact-form{position:relative;}

/* GAIA — botanical luminosity and crafted natural materials. */







/* HELIX — precision instrumentation and measured data language. */






/* ATLAS — editorial authority, architecture, and global connectivity. */







/* NEXUS — connected intelligence, luminous depth, controlled energy. */








@media(max-width:900px){
  .cv2 .cv2-hero-layout{grid-template-columns:1fr}.cv2 .cv2-hero-copy{padding-inline:1.5rem;max-width:38rem}.cv2 .cv2-hero-signature{display:none}
  .cv2 .cv2-story-products::before{display:none}.cv2 .cv2-media-panel .cv2-panel-copy{max-width:72%}
}
@media(max-width:600px){
  .cv2 .cv2-hero-art{background-image:var(--cv2-hero-mobile-image,var(--cv2-hero-image))}.cv2 .cv2-hero{min-height:500px}
  .cv2 .cv2-value::before{display:none}.cv2 .cv2-media-panel .cv2-panel-copy{max-width:100%}
}


.cv2{
  --cv2-soft-ease:cubic-bezier(.22,.68,.18,1);
  --cv2-section-fade:clamp(42px,6vw,92px);
}

/* Remove hard dividers and let adjacent blueprint chapters dissolve together. */
.cv2 .cv2-values, .cv2 .cv2-story-products, .cv2 .cv2-media-story, .cv2 .cv2-contact{
  border-block:0;
}
.cv2 .cv2-values{overflow:visible;padding-block:clamp(1.9rem,3.5vw,3.1rem);}
.cv2 .cv2-values::before, .cv2 .cv2-story-products::after, .cv2 .cv2-media-story::after, .cv2 .cv2-contact::before{
  content:"";
  position:absolute;
  left:0;right:0;
  height:var(--cv2-section-fade);
  z-index:4;
  pointer-events:none;
}
.cv2 .cv2-values::before{top:calc(var(--cv2-section-fade) * -1);background:linear-gradient(to bottom,transparent,var(--surface));}
.cv2 .cv2-story-products::after{bottom:calc(var(--cv2-section-fade) * -1);background:linear-gradient(to bottom,transparent,var(--bg));opacity:.82;}
.cv2 .cv2-media-story::after{bottom:calc(var(--cv2-section-fade) * -1);background:linear-gradient(to bottom,transparent,var(--surface));opacity:.8;}
.cv2 .cv2-contact::before{top:0;background:linear-gradient(to bottom,var(--surface),transparent);opacity:.62;}
.cv2 .cv2-story-products::before{display:none;}

/* Softer hero copy field: translucent tonal veil rather than a rigid half-panel. */
.cv2 .cv2-hero-shade{
  background:linear-gradient(90deg,
    color-mix(in srgb,var(--surface) 94%,transparent) 0%,
    color-mix(in srgb,var(--surface) 86%,transparent) 24%,
    color-mix(in srgb,var(--surface) 58%,transparent) 42%,
    color-mix(in srgb,var(--surface) 18%,transparent) 62%,
    transparent 82%);
  filter:saturate(.96);
}


.cv2 .cv2-hero-copy{filter:drop-shadow(0 1px 0 rgba(255,255,255,.08));}


/* Quiet value chapter with soft connection, no boxed-strip feeling. */
.cv2 .cv2-values{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),var(--surface));}
.cv2 .cv2-values-grid{border:0!important;gap:clamp(.4rem,1vw,1rem);}
.cv2 .cv2-value, .cv2-value{
  border:0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,.06));
  border-radius:18px;
  min-height:128px;
  transition:transform .45s var(--cv2-soft-ease),background-color .45s ease,box-shadow .45s ease;
}
.cv2 .cv2-value:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(0,0,0,.055);}
.cv2 .cv2-value-icon{background:color-mix(in srgb,var(--surface) 78%,transparent);box-shadow:0 8px 22px rgba(0,0,0,.045);}

/* Make each two-slot chapter read as one composition, not two pasted boxes. */
.cv2 .cv2-story-products, .cv2 .cv2-media-story{
  gap:0!important;
  padding:0!important;
  isolation:isolate;
}
.cv2 .cv2-panel{min-height:clamp(350px,33vw,510px);}
.cv2 .cv2-story, .cv2 .cv2-panel-products{
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
.cv2 .cv2-story{background:linear-gradient(118deg,color-mix(in srgb,var(--surface-alt) 72%,var(--surface)),var(--surface));}
.cv2 .cv2-panel-products::before{
  background:linear-gradient(90deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 88%,transparent) 38%,color-mix(in srgb,var(--surface) 42%,transparent) 72%,transparent 100%);
}
.cv2 .cv2-panel-accent-a{opacity:.38;filter:blur(.2px);}
.cv2 .cv2-panel-accent-b{height:1px;opacity:.7;}
.cv2 .cv2-media-panel::after{background:linear-gradient(90deg,rgba(0,0,0,.64),rgba(0,0,0,.24) 52%,rgba(0,0,0,.05));}
.cv2 .cv2-media-panel .cv2-panel-copy{background:linear-gradient(90deg,rgba(0,0,0,.34),transparent);backdrop-filter:blur(1.5px);}

/* Contact becomes a fogged research/lifestyle scene rather than a form pasted on art. */
.cv2 .cv2-contact{padding-block:clamp(4rem,7vw,7rem);}
.cv2 .cv2-contact-light{
  background:linear-gradient(90deg,
    rgba(255,255,255,.96) 0%,rgba(255,255,255,.9) 32%,
    rgba(255,255,255,.7) 58%,rgba(255,255,255,.2) 82%,transparent 100%);
}
.cv2 .cv2-contact-form{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.62);
  border-top:1px solid color-mix(in srgb,var(--accent) 70%,transparent)!important;
  border-radius:16px;
  box-shadow:0 24px 70px rgba(0,0,0,.11);
  backdrop-filter:blur(15px) saturate(1.08);
}
.cv2 .cv2-contact-form input, .cv2 .cv2-contact-form textarea, .cv2 .cv2-contact-form select{background:rgba(255,255,255,.68);border-color:color-mix(in srgb,var(--ink) 18%,transparent);transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;}
.cv2 .cv2-contact-form input:focus, .cv2 .cv2-contact-form textarea:focus, .cv2 .cv2-contact-form select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent);background:rgba(255,255,255,.88);}

/* HELIX: research-grade precision softened by laboratory glass and optical light. */







/* ATLAS: retain institutional authority while removing hard editorial seams. */







/* NEXUS: computational biotechnology, connected molecular systems—not AI/cyberpunk. */



























/* More natural chapter reveals and small scientific motion cues. */
.cv2-js .cv2-reveal, .cv2-js .cv2-reveal-item{
  transform:translateY(16px) scale(.996);
  filter:blur(2px);
  transition:opacity 760ms var(--cv2-soft-ease),transform 900ms var(--cv2-soft-ease),filter 760ms ease;
}
.cv2-js .cv2-reveal.is-visible, .cv2-js .cv2-reveal-item.is-visible{transform:none;filter:none;}
.cv2 .cv2-hero-pattern{animation:cv2-science-breathe 14s ease-in-out infinite alternate;}


@keyframes cv2-science-breathe{from{opacity:.3;transform:scale(1)}to{opacity:.48;transform:scale(1.025)}}
@keyframes cv2-science-shift{from{background-position:0 0,0 0,80% center}to{background-position:32px 32px,32px 32px,78% center}}
@keyframes cv2-science-drift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-.6%,.3%,0) scale(1.018)}}

@media(max-width:900px){
  .cv2 .cv2-values::before, .cv2 .cv2-story-products::after, .cv2 .cv2-media-story::after{height:48px}
  .cv2 .cv2-value{border-radius:14px}
}
@media(prefers-reduced-motion:reduce){
  .cv2 .cv2-hero-pattern{animation:none!important}
}


/* Use the approved concept-aligned clean hero plates for GAIA and ATLAS. */





/* The copy field is ~90% opaque at the outer edge and dissolves gradually
   into the image.  The long feather removes the visible vertical seam. */


/* Avoid a geometric split implied by the hero layout column boundary. */
.cv2 .cv2-hero-layout{grid-template-columns:minmax(0,var(--cv2-hero-copy-width)) 1fr;}
.cv2 .cv2-hero-copy{position:relative;}
.cv2 .cv2-hero-copy::after{
  content:"";position:absolute;z-index:-1;inset:-2.5rem -9rem -2.5rem -3rem;
  background:radial-gradient(ellipse at 32% 50%,rgba(255,255,255,.055),transparent 72%);
  pointer-events:none;
}

/* Bring the English company name closer to the width and presence of the
   Traditional Chinese company name without changing branding data. */
.cv2-brand small{font-size:.8rem;letter-spacing:.09em;}

@media(max-width:760px){
  .cv2-brand small{font-size:.64rem;letter-spacing:.075em}
  
}


.cv2 .cv2-hero{
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
.cv2 .cv2-hero-art{
  background-image:var(--cv2-hero-image)!important;
  background-position:var(--cv2-hero-position,center center)!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  
  filter:none!important;
}
.cv2 .cv2-hero-art::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 24%,transparent 78%,rgba(0,0,0,.045));
  pointer-events:none;
}
.cv2 .cv2-hero-pattern, .cv2 .cv2-hero-orbit, .cv2 .cv2-hero-signature{display:none!important;}
.cv2 .cv2-hero-shade{
  left:0!important;
  right:0!important;
  opacity:1!important;
  border:0!important;
  box-shadow:none!important;
}


.cv2 .cv2-hero-copy{
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}





@media(max-width:760px){
  .cv2 .cv2-hero-art{background-image:var(--cv2-hero-mobile-image,var(--cv2-hero-image))!important}
  .cv2 .cv2-brand small{font-size:.64rem!important}
  .cv2 .cv2-hero-shade{background:linear-gradient(90deg,rgba(248,245,238,.92),rgba(248,245,238,.78) 58%,rgba(248,245,238,.18) 88%,transparent)!important}
  
}






.cv2{
  --cv2-hero-feather-end:94%;
  --cv2-hero-motion-x:0px;
  --cv2-hero-motion-y:0px;
  --cv2-hero-motion-scale:1.012;
}
.cv2 .cv2-hero-art{
  transform:translate3d(var(--cv2-hero-motion-x),var(--cv2-hero-motion-y),0) scale(var(--cv2-hero-motion-scale))!important;
  transition:transform 1600ms cubic-bezier(.22,.61,.36,1)!important;
  will-change:transform;
}
/* The copy field is light over the same continuous artwork, never a panel. */




/* Gentle living-scene motion; profile character comes from direction, not intensity. */




@keyframes cv2-gaia-hero-breathe{from{transform:translate3d(calc(-2px + var(--cv2-hero-motion-x)),var(--cv2-hero-motion-y),0) scale(1.012)}to{transform:translate3d(calc(5px + var(--cv2-hero-motion-x)),calc(-3px + var(--cv2-hero-motion-y)),0) scale(1.024)}}
@keyframes cv2-helix-hero-breathe{from{transform:translate3d(var(--cv2-hero-motion-x),var(--cv2-hero-motion-y),0) scale(1.012)}to{transform:translate3d(calc(-5px + var(--cv2-hero-motion-x)),var(--cv2-hero-motion-y),0) scale(1.021)}}
@keyframes cv2-atlas-hero-breathe{from{transform:translate3d(calc(-2px + var(--cv2-hero-motion-x)),var(--cv2-hero-motion-y),0) scale(1.012)}to{transform:translate3d(calc(4px + var(--cv2-hero-motion-x)),calc(-2px + var(--cv2-hero-motion-y)),0) scale(1.022)}}
@keyframes cv2-nexus-hero-breathe{from{transform:translate3d(var(--cv2-hero-motion-x),var(--cv2-hero-motion-y),0) scale(1.012)}to{transform:translate3d(calc(-4px + var(--cv2-hero-motion-x)),calc(-3px + var(--cv2-hero-motion-y)),0) scale(1.025)}}
/* Prevent the artwork edge from reading as a section cut. */
.cv2 .cv2-hero::before{
  content:"";
  position:absolute;
  z-index:2;
  inset:auto 0 0;
  height:clamp(20px,3vw,42px);
  background:linear-gradient(180deg,transparent,rgba(250,248,242,.72));
  pointer-events:none;
}


/* Header branding balance. */
.cv2 .cv2-brand small{font-size:.82rem!important;font-weight:500!important;letter-spacing:.02em!important;line-height:1.2;}
/* Softer chapter joins while retaining blueprint order and semantic boundaries. */
.cv2 .cv2-values, .cv2 .cv2-story-products, .cv2 .cv2-media-story, .cv2 .cv2-contact{position:relative;}
.cv2 .cv2-values::before, .cv2 .cv2-story-products::before, .cv2 .cv2-media-story::before, .cv2 .cv2-contact::before{
  content:"";position:absolute;left:0;right:0;top:-1px;height:28px;transform:translateY(-50%);
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.45),transparent);pointer-events:none;opacity:.6
;}
@media(max-width:760px){
  .cv2{--cv2-hero-feather-end:100%}
  .cv2 .cv2-hero-art{animation:none!important;transform:scale(1.01)!important}
  .cv2 .cv2-hero-shade{background:linear-gradient(90deg,rgba(248,245,238,.90) 0%,rgba(248,245,238,.86) 52%,rgba(248,245,238,.38) 82%,transparent 100%)!important}
  
}
@media(prefers-reduced-motion:reduce){
  .cv2 .cv2-hero-art{animation:none!important;transition:none!important;transform:scale(1.01)!important}
}


@media (min-width:901px){
  .cv2 .cv2-hero{
    height:clamp(420px,32vw,500px)!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .cv2 .cv2-hero-art{
    animation:none!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
    background-repeat:no-repeat!important;
  }
  
  
  
  
  
  
  
  

  /* 90% protection at the copy edge, feathering before the artwork focal area. */
  
  
  
  
}


@media (min-width:901px){
  .cv2 .cv2-hero{
    height:clamp(430px,31vw,500px)!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .cv2 .cv2-hero-art{
    inset:0!important;
    animation:none!important;
    transform:none!important;
    transition:none!important;
    background-image:var(--cv2-hero-image)!important;
    background-repeat:no-repeat!important;
    background-size:var(--cv2-banner-size,104% auto)!important;
    background-position:var(--cv2-banner-x,50%) var(--cv2-banner-y,50%)!important;
  }

  /* Per-profile focal coordinates. These adjust the view, not the source art. */
  
  
  
  

  /* Continuous full-canvas veil: 90% behind copy, then a long soft dissolve. */
  
  
  
  
}


@media (min-width:901px){
  .cv2 .cv2-hero{
    height:clamp(400px,30vw,460px)!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  
  
  
  
  .cv2 .cv2-hero-art{
    background-size:100% auto!important;
    background-position:var(--cv2-banner-x,50%) var(--cv2-banner-y,50%)!important;
    transform:none!important;
    animation:none!important;
  }
}

/* CLEAN025 — working-release fixes and profile alignment.
 * Keeps the Corporate-v2 blueprint unchanged; presentation remains the routing
 * and contract owner while this package owns markup and visual composition.
 */
.cv2-footer-brand{display:flex;align-items:center;gap:.9rem;min-width:0}
.cv2-footer-logo{width:auto;max-width:58px;max-height:52px;object-fit:contain;flex:0 0 auto}
.cv2-footer-copy{display:grid;line-height:1.2}

/* Shared core-values composition follows the approved hero language: soft
 * surfaces, restrained depth, profile-owned accents and no hard section seam. */
.cv2 .cv2-values{
  position:relative;
  isolation:isolate;
  padding:clamp(2.2rem,4vw,3.6rem) 0 clamp(2.5rem,4vw,4rem);
  border:0;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--bg) 94%,#fff) 0%,var(--bg) 100%);
  overflow:hidden;
}
.cv2 .cv2-values::before{
  content:"";
  position:absolute;
  inset:-35% -10% auto;
  height:72%;
  background:radial-gradient(ellipse at 50% 0,color-mix(in srgb,var(--accent-2) 14%,transparent),transparent 68%);
  pointer-events:none;
  z-index:-1;
}
.cv2 .cv2-values::after{
  content:"";
  position:absolute;
  left:7%;right:7%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 42%,transparent),transparent);
}
.cv2 .cv2-values-title{
  font-family:var(--fw-font-heading);
  font-size:clamp(1.55rem,2.3vw,2.45rem);
  font-weight:500;
  letter-spacing:.06em;
  margin:0 0 clamp(1.4rem,3vw,2.25rem);
  color:var(--ink);
}
.cv2 .cv2-values-grid{gap:clamp(.7rem,1.4vw,1.25rem);position:relative}
.cv2 .cv2-value, .cv2-value{
  position:relative;
  min-height:150px;
  padding:1.35rem 1.1rem 1.25rem;
  border:1px solid color-mix(in srgb,var(--line) 75%,transparent);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.38));
  box-shadow:0 14px 38px color-mix(in srgb,var(--deep) 8%,transparent);
  backdrop-filter:blur(8px);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.cv2 .cv2-value:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 48%,transparent);box-shadow:0 20px 48px color-mix(in srgb,var(--deep) 13%,transparent)}
.cv2 .cv2-value::after{content:attr(style);display:none}
.cv2 .cv2-value-icon{
  width:54px;height:54px;
  border:1px solid color-mix(in srgb,var(--accent-2) 72%,var(--deep));
  background:color-mix(in srgb,#fff 78%,var(--surface-alt));
  box-shadow:0 8px 24px color-mix(in srgb,var(--deep) 10%,transparent),inset 0 0 0 5px rgba(255,255,255,.38);
}
.cv2 .cv2-value-icon img{width:25px;height:25px;object-fit:contain;opacity:.9}
.cv2 .cv2-value h3{font-size:.92rem;letter-spacing:.015em;margin:.2rem 0 .12rem}
.cv2 .cv2-value p{font-size:.74rem;line-height:1.5;max-width:26ch}

/* Profile-specific scientific identity without changing slots or contracts. */


















@media(max-width:900px){
  .cv2 .cv2-values-grid{gap:.85rem}
  .cv2 .cv2-value, .cv2-value{min-height:138px}
}
@media(max-width:600px){
  .cv2-footer-brand{align-items:flex-start}
  .cv2 .cv2-values{padding-inline:.25rem}
}

/* Universal native content baseline — package-owned fallback presentation. */
.cv2-content-shell{min-height:62vh;background:var(--surface);position:relative;overflow:hidden}
.cv2-native-content{position:relative;isolation:isolate;padding:clamp(3.5rem,7vw,7.5rem) 0;background:linear-gradient(180deg,var(--surface),var(--surface-alt));overflow:hidden}
.cv2-native-content .cv2-wrap{width:min(1180px,calc(100% - 2rem));margin:0 auto;position:relative;z-index:2}
.cv2-native-atmosphere{position:absolute;inset:0;pointer-events:none;opacity:.62;background:var(--cv2-profile-background);background-size:cover;background-position:center;mix-blend-mode:multiply;filter:saturate(.65) blur(1px)}
.cv2-native-content::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.62) 42%,rgba(255,255,255,.9));z-index:1}
.cv2-native-hero{max-width:760px;margin:0 auto clamp(2.2rem,5vw,4rem);text-align:center}
.cv2-native-eyebrow, .cv2-native-meta{display:block;margin:0 0 .75rem;color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.cv2-native-hero h1, .cv2-native-detail-copy h1{margin:0;color:var(--ink);font-family:var(--fw-font-heading);font-weight:500;letter-spacing:.035em}
.cv2-native-hero h1{font-size:clamp(2rem,4vw,4rem)}
.cv2-native-lede{max-width:62ch;margin:1rem auto 0;color:color-mix(in srgb,var(--ink) 74%,transparent);font-size:clamp(.95rem,1.5vw,1.15rem);line-height:1.8}
.cv2-native-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.3vw,2rem)}
.cv2-native-product-card{display:flex;flex-direction:column;min-width:0;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.56));box-shadow:0 18px 50px color-mix(in srgb,var(--deep) 11%,transparent);overflow:hidden;backdrop-filter:blur(10px);transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}
.cv2-native-product-card:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--accent) 52%,transparent);box-shadow:0 26px 64px color-mix(in srgb,var(--deep) 17%,transparent)}
.cv2-native-product-visual, .cv2-native-detail-stage{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.95),color-mix(in srgb,var(--surface-alt) 78%,#fff));isolation:isolate}
.cv2-native-product-visual{aspect-ratio:1.15/1}
.cv2-native-product-visual img, .cv2-native-detail-stage img{position:relative;z-index:2;display:block;max-width:82%;max-height:82%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(0,0,0,.16));transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.cv2-native-product-card:hover .cv2-native-product-visual img{transform:translateY(-4px) scale(1.025)}
.cv2-native-product-glow{position:absolute;inset:12% 8%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 26%,transparent),transparent 68%);filter:blur(16px);opacity:.6;z-index:1}
.cv2-native-product-copy{display:flex;flex:1;flex-direction:column;padding:1.35rem 1.35rem 1.5rem}
.cv2-native-product-copy h2{margin:.1rem 0 .55rem;font-size:1.15rem;line-height:1.3}
.cv2-native-product-copy h2 a{color:var(--ink);text-decoration:none}
.cv2-native-product-copy p{margin:0 0 1rem;color:color-mix(in srgb,var(--ink) 68%,transparent);font-size:.88rem;line-height:1.65}
.cv2-native-price{margin:.2rem 0 .9rem;color:var(--accent);font-weight:700;font-size:1rem}
.cv2-native-link{margin-top:auto;color:var(--deep);font-weight:700;text-decoration:none;font-size:.86rem;letter-spacing:.03em}
.cv2-native-empty{grid-column:1/-1;text-align:center;padding:3rem 1rem;color:color-mix(in srgb,var(--ink) 62%,transparent)}
.cv2-native-back{display:inline-flex;margin:0 0 1.4rem;color:var(--deep);font-weight:700;text-decoration:none}
.cv2-native-detail-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.cv2-native-detail-stage{min-height:520px;border:1px solid color-mix(in srgb,var(--line) 68%,transparent);border-radius:28px;box-shadow:0 24px 70px color-mix(in srgb,var(--deep) 14%,transparent);background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.54));backdrop-filter:blur(12px)}
.cv2-native-detail-copy{padding:1rem 0}
.cv2-native-detail-copy h1{font-size:clamp(2rem,3.4vw,3.35rem);line-height:1.12;margin:.35rem 0 1rem}
.cv2-native-meta-row{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin:0 0 .75rem}
.cv2-native-meta-row .cv2-native-meta{margin:0}
.cv2-native-family{display:inline-flex;align-items:center;padding:.25rem .55rem;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:999px;color:color-mix(in srgb,var(--ink) 66%,transparent);font-size:.7rem;letter-spacing:.06em}
.cv2-native-price-large{font-size:1.3rem;margin:0 0 1.25rem}
.cv2-native-stock{display:inline-flex;margin:.2rem 0 .8rem;padding:.32rem .65rem;border-radius:999px;background:color-mix(in srgb,var(--accent-2) 24%,transparent);color:var(--deep);font-size:.76rem;font-weight:700;letter-spacing:.04em}
.cv2-native-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3.5rem)}
.cv2-native-gallery figure{display:grid;place-items:center;min-height:220px;margin:0;padding:1rem;border:1px solid color-mix(in srgb,var(--line) 65%,transparent);border-radius:18px;background:rgba(255,255,255,.62)}
.cv2-native-gallery img{display:block;max-width:100%;max-height:240px;width:auto;height:auto;object-fit:contain}
.cv2-native-intro{color:color-mix(in srgb,var(--ink) 75%,transparent);font-size:1rem;line-height:1.8}
.cv2-native-taxonomy{margin:1.1rem 0;color:color-mix(in srgb,var(--ink) 62%,transparent);font-size:.82rem}
.cv2-native-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:1rem;padding:.8rem 1.2rem;border-radius:999px;background:var(--deep);color:#fff;text-decoration:none;font-weight:700;box-shadow:0 12px 30px color-mix(in srgb,var(--deep) 24%,transparent)}
.cv2-native-body{position:relative;z-index:2;margin-top:clamp(2.5rem,6vw,5rem);border-top:1px solid color-mix(in srgb,var(--line) 65%,transparent);padding-top:clamp(2rem,4vw,3.5rem)}
.cv2-native-body-inner{max-width:850px;margin:0 auto;color:color-mix(in srgb,var(--ink) 78%,transparent);font-size:1rem;line-height:1.85}
.cv2-native-body-inner h2, .cv2-native-body-inner h3{color:var(--ink);font-family:var(--fw-font-heading)}
.cv2-native-page-image{max-width:980px;margin:0 auto 2rem;border-radius:24px;overflow:hidden;box-shadow:0 20px 60px color-mix(in srgb,var(--deep) 14%,transparent)}
.cv2-native-page-image img{display:block;width:100%;height:auto}








@media(max-width:900px){.cv2-native-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cv2-native-detail-grid{grid-template-columns:1fr}.cv2-native-detail-stage{min-height:420px}}
@media(max-width:600px){.cv2-native-content{padding:3rem 0}.cv2-native-product-grid{grid-template-columns:1fr}.cv2-native-detail-stage{min-height:340px}.cv2-native-detail-copy h1{font-size:2.15rem}}


/* CLEAN028 PATCH004 — locale-specific single-language typography. */
.cv2[data-locale^="zh"] .cv2-brand strong, .cv2[data-locale^="zh"] h1, .cv2[data-locale^="zh"] h2, .cv2[data-locale^="zh"] .cv2-values-title, .cv2[data-locale^="zh"] .cv2-native-hero h1, .cv2[data-locale^="zh"] .cv2-native-detail-copy h1{letter-spacing:.01em;}


/* CLEAN031 — profile-aware native WordPress page experience. */
.cv2-native-page-content::after{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 78%,transparent),color-mix(in srgb,var(--surface-alt) 62%,transparent),color-mix(in srgb,var(--surface) 84%,transparent))}
.cv2-native-page-content .cv2-native-atmosphere{opacity:.34;mix-blend-mode:normal;filter:saturate(.8)}
.cv2-native-page-orbit{position:absolute;z-index:1;width:min(52vw,720px);aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);border-radius:50%;right:-18%;top:7%;box-shadow:0 0 0 70px color-mix(in srgb,var(--accent) 4%,transparent),0 0 0 140px color-mix(in srgb,var(--accent-2) 3%,transparent);pointer-events:none}
.cv2-native-page-content .cv2-native-hero{position:relative;padding:clamp(1.5rem,4vw,3rem) 0}
.cv2-native-page-content .cv2-native-hero::after{content:"";display:block;width:72px;height:2px;margin:1.4rem auto 0;background:linear-gradient(90deg,transparent,var(--accent),transparent)}
.cv2-native-page-content .cv2-native-body-inner{max-width:1040px}
.cv2-native-page-content .wp-block-group, .cv2-native-page-content .wp-block-columns{margin-block:clamp(1.5rem,4vw,3.5rem)}
.cv2-native-page-content .wp-block-column, .cv2-native-page-content .wp-block-media-text, .cv2-native-page-content figure.wp-block-image{border:1px solid color-mix(in srgb,var(--line) 68%,transparent);background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:0 18px 54px color-mix(in srgb,var(--deep) 10%,transparent);backdrop-filter:blur(8px)}
.cv2-native-page-content .wp-block-column{padding:clamp(1rem,2.5vw,1.8rem)}
.cv2-native-page-content img{max-width:100%;height:auto}




@media(max-width:780px){.cv2-native-page-orbit{width:90vw;right:-48%;top:10%}}

/* CLEAN032 — responsive profile surface system for native WordPress page content. */
.cv2-native-page-content{
  --cv2-page-section-bg:color-mix(in srgb,var(--surface-alt) 72%,transparent);
  --cv2-page-card-bg:color-mix(in srgb,var(--surface) 88%,transparent);
  --cv2-page-card-border:color-mix(in srgb,var(--line) 74%,transparent);
  --cv2-page-card-shadow:0 22px 58px color-mix(in srgb,var(--deep) 12%,transparent);
  --cv2-page-card-radius:18px;
  --cv2-page-card-accent:var(--accent);
  --cv2-page-grid-gap:clamp(1.25rem,2.5vw,2.4rem);
}




.cv2-native-page-content .cv2-native-body{
  margin-top:clamp(1.5rem,4vw,3rem);
  padding:clamp(2rem,4vw,4rem);
  border:1px solid color-mix(in srgb,var(--cv2-page-card-border) 72%,transparent);
  border-radius:clamp(18px,2vw,30px);
  background:var(--cv2-page-section-bg);
  box-shadow:0 28px 80px color-mix(in srgb,var(--deep) 9%,transparent);
  overflow:hidden;
}
.cv2-native-page-content .cv2-native-body::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.42;
  background:
    radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 27%),
    radial-gradient(circle at 88% 92%,color-mix(in srgb,var(--accent-2) 11%,transparent),transparent 31%);
}

.cv2-native-page-content .cv2-native-body-inner{
  position:relative;
  z-index:2;
  width:100%;
  max-width:1280px;
}
.cv2-native-page-content .wp-block-columns{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
  align-items:stretch!important;
  gap:var(--cv2-page-grid-gap)!important;
  width:100%;
}
.cv2-native-page-content .wp-block-columns>.wp-block-column{
  width:auto!important;
  min-width:0!important;
  flex-basis:auto!important;
  align-self:stretch;
  margin:0!important;
}
.cv2-native-page-content .wp-block-column, .cv2-native-page-content .wp-block-media-text, .cv2-native-page-content figure.wp-block-image{
  border-color:var(--cv2-page-card-border);
  border-radius:var(--cv2-page-card-radius);
  background:var(--cv2-page-card-bg);
  box-shadow:var(--cv2-page-card-shadow);
}
.cv2-native-page-content .wp-block-column{
  position:relative;
  display:flex;
  flex-direction:column;
  padding:clamp(1.15rem,2vw,2rem);
  overflow:hidden;
}
.cv2-native-page-content .wp-block-column::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,transparent,var(--cv2-page-card-accent),transparent);
  opacity:.78;
}
.cv2-native-page-content .wp-block-column>*{position:relative;z-index:1}
.cv2-native-page-content .wp-block-column figure:first-child, .cv2-native-page-content .wp-block-column .wp-block-image:first-child{margin-top:0}
.cv2-native-page-content .wp-block-column img{width:100%;height:auto;object-fit:cover}
.cv2-native-page-content .wp-block-column p{line-height:1.78}
@media(min-width:1200px){
  .cv2-native-page-content .cv2-wrap{width:min(1440px,calc(100% - 5rem))}
  .cv2-native-page-content .cv2-native-body-inner{max-width:none}
}
@media(max-width:780px){
  .cv2-native-page-content .cv2-native-body{padding:1.25rem;border-radius:18px}
  .cv2-native-page-content .wp-block-columns{grid-template-columns:1fr}
}

/* CLEAN033 — device-complete responsive system. */
.cv2{
  --cv2-page-gutter:clamp(1rem,3vw,4rem);
  --cv2-touch-target:44px;
  overflow-wrap:anywhere;
}
.cv2-wrap{width:min(1280px,calc(100% - (2 * var(--cv2-page-gutter))))}
.cv2-nav-toggle{display:none;min-width:var(--cv2-touch-target);min-height:var(--cv2-touch-target);padding:.55rem;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:transparent;color:#fff;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.cv2-nav-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.cv2-nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.cv2-nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.cv2-nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.cv2 img, .cv2 video, .cv2 iframe, .cv2 embed, .cv2 object{max-width:100%}
.cv2 video, .cv2 iframe{height:auto}
.cv2 iframe{width:100%;aspect-ratio:16/9}
.cv2 table{width:100%;border-collapse:collapse}
.cv2-native-page-content .wp-block-table{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.cv2-native-page-content .wp-block-table table{min-width:640px}
.cv2-native-page-content pre{max-width:100%;overflow:auto}
.cv2-native-page-content .wp-block-gallery{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:clamp(.75rem,2vw,1.5rem)}
.cv2-native-page-content .wp-block-media-text{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.cv2-native-page-content .wp-block-buttons{display:flex;flex-wrap:wrap;gap:.75rem}
.cv2-native-page-content .wp-block-button__link, .cv2-button, .cv2-native-cta{min-height:var(--cv2-touch-target);align-items:center}
.cv2-native-page-content h1, .cv2-native-page-content h2, .cv2-native-page-content h3{word-break:normal;overflow-wrap:anywhere}

@media(max-width:1050px){
  .cv2-header{height:auto;min-height:76px;grid-template-columns:minmax(0,1fr) auto auto;gap:.75rem;padding:.65rem var(--cv2-page-gutter)}
  .cv2-nav-toggle{display:flex;grid-column:2}
  .cv2-language{grid-column:3}
  .cv2-nav{display:none;position:absolute;left:var(--cv2-page-gutter);right:var(--cv2-page-gutter);top:calc(100% + 1px);z-index:20;flex-direction:column;align-items:stretch;gap:0;padding:.5rem;background:color-mix(in srgb,var(--deep) 96%,#000);border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 44px rgba(0,0,0,.28)}
  .cv2-nav-open .cv2-nav{display:flex}
  .cv2-nav a{display:flex;align-items:center;min-height:var(--cv2-touch-target);padding:.65rem .8rem;font-size:.92rem}
  .cv2-nav a[aria-current="page"]:after{display:none}
  .cv2-native-detail-grid{gap:clamp(1.5rem,4vw,3rem)}
}

@media(min-width:781px) and (max-width:1050px){
  .cv2-native-page-content .wp-block-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cv2-native-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cv2-values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cv2-value:nth-child(2){border-right:0}
  .cv2-story-products, .cv2-media-story, .cv2-contact-grid{grid-template-columns:1fr 1fr}
  .cv2-footer{grid-template-columns:minmax(0,1fr) auto;}
  .cv2-footer nav{grid-column:1/-1}
}

@media(max-width:780px){
  .cv2-header{grid-template-columns:minmax(0,1fr) auto;}
  .cv2-language{display:none}
  .cv2-nav-toggle{grid-column:2}
  .cv2-brand strong{font-size:clamp(.92rem,4vw,1.15rem);white-space:normal;line-height:1.2}
  .cv2-brand small{white-space:normal!important}
  .cv2-logo{max-width:52px;max-height:46px}
  .cv2-hero{height:auto!important;min-height:clamp(430px,80svh,580px)!important}
  .cv2-hero-copy{margin:0!important;padding:clamp(2.5rem,8vw,4rem) var(--cv2-page-gutter)!important;max-width:min(100%,38rem)!important}
  .cv2 h1{font-size:clamp(2rem,10vw,3.15rem)}
  .cv2 h2{font-size:clamp(1.45rem,7vw,2.1rem)}
  .cv2-story-products, .cv2-media-story, .cv2-contact-grid, .cv2-native-detail-grid, .cv2-native-page-content .wp-block-media-text{grid-template-columns:1fr!important}
  .cv2-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem}
  .cv2-product{max-width:none}
  .cv2-media-panel .cv2-panel-copy{max-width:85%}
  .cv2-native-page-content .cv2-native-body{margin-top:1rem;padding:clamp(1rem,4vw,1.5rem)}
  .cv2-native-page-content .wp-block-columns{grid-template-columns:1fr}
  .cv2-native-page-content .wp-block-column{padding:clamp(1rem,4vw,1.4rem)}
  .cv2-native-page-content .wp-block-media-text__content{padding:1rem 0}
  .cv2-native-detail-stage{min-height:auto;aspect-ratio:1/1}
  .cv2-footer{grid-template-columns:1fr;gap:1.25rem;text-align:left}
  .cv2-footer nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem 1rem}
  .cv2-footer nav a{min-height:var(--cv2-touch-target);display:flex;align-items:center}
}

@media(max-width:480px){
  .cv2{--cv2-page-gutter:.875rem}
  .cv2-brand small{display:none}
  .cv2-product-grid, .cv2-native-product-grid{grid-template-columns:1fr!important}
  .cv2-values-grid{grid-template-columns:1fr}
  .cv2-actions, .cv2-native-page-content .wp-block-buttons{flex-direction:column;align-items:stretch}
  .cv2-button, .cv2-native-cta, .cv2-native-page-content .wp-block-button, .cv2-native-page-content .wp-block-button__link{width:100%;justify-content:center;text-align:center}
  .cv2-footer nav{grid-template-columns:1fr}
}

@media(hover:none),(pointer:coarse){
  .cv2 .cv2-panel, .cv2 .cv2-product, .cv2 .wp-block-column{transform:none!important}
  .cv2 a, .cv2 button, .cv2 select{touch-action:manipulation}
}

@media(prefers-reduced-motion:reduce){
  .cv2 *, .cv2 *::before, .cv2 *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* CLEAN034: language selector remains available on every device. */
@media(max-width:780px){
  .cv2-header{height:auto;min-height:72px;grid-template-columns:minmax(0,1fr) auto;padding-block:.65rem;row-gap:.55rem}
  .cv2-language{display:flex;grid-column:1 / -1;grid-row:2;justify-self:stretch;justify-content:flex-end;width:100%;box-sizing:border-box}
  .cv2-language select{max-width:none;min-height:36px;width:auto}
  .cv2-nav{top:100%}
}

/* CLEAN035: contract-complete product detail and accessible thumbnail gallery. */
.cv2-native-gallery-shell{min-width:0}
.cv2-native-gallery-thumbs{display:flex;gap:.75rem;margin-top:1rem;overflow-x:auto;padding:.15rem .1rem .45rem;scroll-snap-type:x proximity;scrollbar-width:thin}
.cv2-native-gallery-thumb{flex:0 0 88px;width:88px;aspect-ratio:1/1;display:grid;place-items:center;padding:.4rem;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 84%,transparent);cursor:pointer;scroll-snap-align:start;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.cv2-native-gallery-thumb:hover, .cv2-native-gallery-thumb:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent);outline:0}
.cv2-native-gallery-thumb.is-active{border-color:var(--accent);box-shadow:0 8px 22px color-mix(in srgb,var(--deep) 16%,transparent);transform:translateY(-1px)}
.cv2-native-gallery-thumb img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.cv2-native-gallery-primary{transition:opacity .18s ease,transform .28s ease}
.cv2-native-gallery-primary.is-switching{opacity:.25;transform:scale(.985)}
.cv2-native-product-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:1.35rem 0;border-top:1px solid color-mix(in srgb,var(--line) 66%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 66%,transparent)}
.cv2-native-product-facts>div{padding:.8rem .2rem;border-bottom:1px solid color-mix(in srgb,var(--line) 44%,transparent)}
.cv2-native-product-facts>div:nth-last-child(-n/**/+2){border-bottom:0}
.cv2-native-product-facts dt{margin:0 0 .2rem;color:color-mix(in srgb,var(--ink) 62%,transparent);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.cv2-native-product-facts dd{margin:0;color:var(--ink);font-size:.95rem;line-height:1.45}
.cv2-native-product-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;margin-top:1rem}
.cv2-native-product-actions .cv2-native-stock, .cv2-native-product-actions .cv2-native-cta{margin:0}
.cv2 a.cv2-native-cta, .cv2 a.cv2-native-cta:link, .cv2 a.cv2-native-cta:visited, .cv2 a.cv2-native-cta:hover, .cv2 a.cv2-native-cta:focus, .cv2 a.cv2-native-cta:active{color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1}
.cv2 a.cv2-native-cta span{color:inherit!important;-webkit-text-fill-color:inherit!important}
.cv2-native-cta:hover, .cv2-native-cta:focus-visible{filter:brightness(1.08);transform:translateY(-1px)}
@media(max-width:780px){
  .cv2-native-product-facts{grid-template-columns:1fr}
  .cv2-native-product-facts>div:nth-last-child(-n/**/+2){border-bottom:1px solid color-mix(in srgb,var(--line) 44%,transparent)}
  .cv2-native-product-facts>div:last-child{border-bottom:0}
  .cv2-native-gallery-thumb{flex-basis:74px;width:74px}
  .cv2-native-product-actions{align-items:stretch}
  .cv2-native-product-actions .cv2-native-stock{width:auto;align-self:flex-start}
}


/* CLEAN038 — contact detail contract and configurable footer */
.cv2-contact-details{margin:1.5rem 0 0;display:grid;gap:.75rem}
.cv2-contact-details div{padding:.75rem 0;border-bottom:1px solid color-mix(in srgb,var(--cv2-accent) 18%,transparent)}
.cv2-contact-details dt{font-weight:700;color:var(--cv2-heading)}
.cv2-contact-details dd{margin:.25rem 0 0;color:var(--cv2-text)}
.cv2-contact-details a{color:inherit}
.cv2-contact-layout-form-right .cv2-contact-grid{direction:rtl}
.cv2-contact-layout-form-right .cv2-contact-grid>*{direction:ltr}
.cv2-footer{display:block;padding:clamp(2rem,4vw,4.5rem) clamp(1rem,4vw,4rem) 1.25rem}
.cv2-footer-grid{width:min(1440px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(140px,1fr)) minmax(180px,1fr);gap:clamp(1.25rem,2.5vw,3rem);align-items:start}
.cv2-footer-column, .cv2-footer-social{display:flex;flex-direction:column;gap:.65rem}
.cv2-footer-column h2, .cv2-footer-social h2{font-size:1rem;margin:0 0 .35rem;color:inherit}
.cv2-footer-column a, .cv2-footer-social a{color:inherit;text-decoration:none;opacity:.82}
.cv2-footer-column a:hover, .cv2-footer-social a:hover{opacity:1;text-decoration:underline}
.cv2-footer-brand{align-items:flex-start}.cv2-footer-copy p{margin:.75rem 0 0;max-width:32ch;opacity:.78}
.cv2-footer-social-links{display:flex;flex-direction:column;gap:.5rem}
.cv2-footer-qr{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}
.cv2-footer-qr img{width:88px;height:88px;object-fit:contain;background:#fff;padding:5px;border-radius:8px}
.cv2-footer-qr span{display:block;font-size:.75rem;margin-top:.25rem}
.cv2-footer-legal{width:min(1440px,100%);margin:2rem auto 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15);text-align:right}
@media(max-width:1050px){.cv2-footer-grid{grid-template-columns:repeat(3,1fr)}.cv2-footer-brand{grid-column:1/-1}.cv2-footer-social{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:flex-start}.cv2-footer-social-links{flex-direction:row;flex-wrap:wrap}}
@media(max-width:780px){.cv2-contact-layout-form-right .cv2-contact-grid{direction:ltr}.cv2-footer-grid{grid-template-columns:1fr}.cv2-footer-brand, .cv2-footer-social{grid-column:auto}.cv2-footer-social{display:flex;flex-direction:column}.cv2-footer-legal{text-align:left}.cv2-footer-column{padding-top:1rem;border-top:1px solid rgba(255,255,255,.12)}}

/* CLEAN039: deterministic contact ordering and generic fallback footer alignment. */
@media (min-width:781px){
  .cv2-contact-layout-form-left .cv2-contact-copy{grid-column:2;grid-row:1}
  .cv2-contact-layout-form-left .cv2-contact-form{grid-column:1;grid-row:1}
  .cv2-contact-layout-form-right .cv2-contact-copy{grid-column:1;grid-row:1}
  .cv2-contact-layout-form-right .cv2-contact-form{grid-column:2;grid-row:1}
  .cv2-contact-layout-form-right .cv2-contact-grid{direction:ltr}
  .cv2-contact-layout-form-right .cv2-contact-grid>*{direction:ltr}
  .cv2-footer-fallback .cv2-footer-grid{grid-template-columns:minmax(240px,1fr) auto;align-items:start}
  .cv2-footer-fallback .cv2-footer-column{justify-self:end;align-items:flex-end;text-align:right}
  .cv2-footer-fallback .cv2-footer-column a{text-align:right}
}
@media (max-width:780px){
  .cv2-contact-layout-form-left .cv2-contact-copy, .cv2-contact-layout-form-left .cv2-contact-form, .cv2-contact-layout-form-right .cv2-contact-copy, .cv2-contact-layout-form-right .cv2-contact-form{grid-column:auto;grid-row:auto}
  .cv2-footer-fallback .cv2-footer-column{align-items:flex-start;text-align:left}
}

/* CLEAN040 — Renderer tiers and complete universal WordPress-page experience. */
.cv2{
  --cv2-page-bg:color-mix(in srgb,var(--bg) 88%,#fff);
  --cv2-page-hero-bg:linear-gradient(135deg,color-mix(in srgb,var(--surface) 94%,var(--accent-2)),color-mix(in srgb,var(--bg) 90%,#fff));
  --cv2-page-surface:rgba(255,255,255,.78);
  --cv2-page-surface-border:color-mix(in srgb,var(--accent-2) 24%,transparent);
  --cv2-page-shadow:0 24px 70px rgba(17,41,29,.12);
  --cv2-page-radius:24px;
  --cv2-page-gap:clamp(1.35rem,3vw,3rem);
}



.cv2-native-page-content{position:relative;padding:0;background:var(--cv2-page-bg);isolation:isolate;}
.cv2-native-page-content>.cv2-native-atmosphere{position:absolute;inset:0;background:var(--cv2-profile-background) center top/cover fixed;opacity:.07;pointer-events:none;z-index:-2;}
.cv2-native-page-content>.cv2-native-page-orbit{position:absolute;inset:0;background:var(--cv2-profile-texture) center/700px auto repeat;opacity:.08;pointer-events:none;z-index:-1;}
.cv2-native-page-hero{position:relative;padding:clamp(2.6rem,6vw,6rem) 0 clamp(2rem,4vw,4rem);background:var(--cv2-page-hero-bg);border-bottom:1px solid var(--cv2-page-surface-border);overflow:hidden;}
.cv2-native-page-hero::before{content:"";position:absolute;inset:0;background:var(--cv2-profile-bokeh) center/cover;opacity:.1;mix-blend-mode:screen;pointer-events:none;}
.cv2-native-page-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);align-items:center;gap:clamp(2rem,5vw,6rem);}
.cv2-native-page-hero.no-image .cv2-native-page-hero-grid{grid-template-columns:minmax(0,760px);justify-content:center;text-align:center;}
.cv2-native-page-heading h1{max-width:16ch;font-size:clamp(2.25rem,4vw,4.5rem);margin:.2em 0;}
.cv2-native-page-hero.no-image h1{margin-inline:auto;}
.cv2-native-page-summary{font-size:clamp(1rem,1.35vw,1.2rem);max-width:58ch;color:var(--muted);margin:1rem 0 0;}

.cv2-native-page-image{border:1px solid var(--cv2-page-surface-border);background:var(--cv2-page-surface);box-shadow:var(--cv2-page-shadow);border-radius:var(--cv2-page-radius);overflow:hidden;}
.cv2-native-page-image img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.cv2-native-page-canvas{padding:clamp(2rem,5vw,5.5rem) 0 clamp(3.5rem,7vw,8rem);}
.cv2-native-page-content .cv2-native-body{margin:0;}
.cv2-native-page-content .cv2-native-body-inner{background:var(--cv2-page-surface);border:1px solid var(--cv2-page-surface-border);box-shadow:var(--cv2-page-shadow);border-radius:var(--cv2-page-radius);padding:clamp(1.4rem,3.5vw,4rem);overflow:hidden;}
.cv2-native-page-content .cv2-native-body-inner>:first-child{margin-top:0}.cv2-native-page-content .cv2-native-body-inner>:last-child{margin-bottom:0}
.cv2-native-page-content .wp-block-heading, .cv2-native-page-content h2, .cv2-native-page-content h3{color:var(--ink);text-wrap:balance;}

.cv2-native-page-content .wp-block-columns{gap:var(--cv2-page-gap);align-items:stretch;}
.cv2-native-page-content .wp-block-column{min-width:0;}
.cv2-native-page-content .wp-block-group, .cv2-native-page-content .wp-block-media-text, .cv2-native-page-content .wp-block-quote, .cv2-native-page-content .wp-block-table{border:1px solid var(--cv2-page-surface-border);background:color-mix(in srgb,var(--cv2-page-surface) 90%,transparent);border-radius:calc(var(--cv2-page-radius) * .75);padding:clamp(1rem,2vw,2rem);box-shadow:0 14px 38px rgba(12,35,55,.07);}
.cv2-native-page-content .wp-block-image img, .cv2-native-page-content .wp-block-gallery img{border-radius:calc(var(--cv2-page-radius) * .55);}
.cv2-native-page-content .wp-block-button__link, .cv2-native-page-content .wp-element-button{background:var(--deep);color:#fff;border-radius:calc(var(--cv2-page-radius) * .5);padding:.7rem 1.15rem;text-decoration:none;}
.cv2-renderer-enhanced .cv2-native-body-inner{background:transparent;border:0;box-shadow:none;padding-inline:0;overflow:visible;}
.cv2-renderer-enhanced .wp-block-columns{padding:clamp(1.1rem,2.5vw,2.4rem);background:var(--cv2-page-surface);border:1px solid var(--cv2-page-surface-border);box-shadow:var(--cv2-page-shadow);border-radius:var(--cv2-page-radius);}
.cv2-renderer-enhanced .wp-block-columns>.wp-block-column{background:color-mix(in srgb,var(--cv2-page-surface) 88%,#fff);border:1px solid var(--cv2-page-surface-border);border-radius:calc(var(--cv2-page-radius) * .72);padding:clamp(.9rem,1.7vw,1.5rem);}
.cv2-native-product-actions{align-items:center;gap:.7rem;}
.cv2-native-product-actions .cv2-native-cta{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:44px;padding:.62rem 1.15rem;font-size:.92rem;line-height:1.1;border-radius:999px;box-shadow:0 10px 24px rgba(4,46,89,.14);}
@media(max-width:1050px){.cv2-native-page-hero-grid{grid-template-columns:minmax(0,1fr) minmax(240px,.7fr)}.cv2-native-page-content .wp-block-columns{flex-wrap:wrap}.cv2-native-page-content .wp-block-column{flex-basis:calc(50% - var(--cv2-page-gap)/2)!important;}}
@media(max-width:760px){.cv2-native-page-hero-grid{grid-template-columns:1fr}.cv2-native-page-hero{padding-top:2.25rem}.cv2-native-page-heading{text-align:left}.cv2-native-page-hero.no-image .cv2-native-page-heading{text-align:center}.cv2-native-page-image img{aspect-ratio:16/9}.cv2-native-page-content .wp-block-columns{display:grid;grid-template-columns:1fr}.cv2-native-page-content .wp-block-column{flex-basis:auto!important}.cv2-native-page-content .wp-block-media-text{grid-template-columns:1fr!important}.cv2-native-page-content .wp-block-media-text__media, .cv2-native-page-content .wp-block-media-text__content{grid-column:1!important}.cv2-native-product-actions .cv2-native-cta{min-height:44px;padding:.65rem 1rem;font-size:.9rem;}}


/* CLEAN041 — Profile experience contract and restrained universal atmosphere. */
.cv2-native-page-content{overflow:hidden;}
.cv2-experience-layer, .cv2-experience-nodes{position:absolute;inset:0;pointer-events:none;z-index:-1;}
.cv2-experience-pattern{background-image:var(--cv2-experience-pattern);background-repeat:repeat;background-size:clamp(260px,38vw,620px) auto;opacity:.045;transform:translate3d(0,0,0);}
.cv2-experience-glow{inset:-20%;background:radial-gradient(circle at 22% 18%,color-mix(in srgb,var(--accent-2) 18%,transparent),transparent 32%),radial-gradient(circle at 82% 62%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 30%);opacity:.72;}
.cv2-experience-nodes i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 18px color-mix(in srgb,var(--accent-2) 70%,transparent);opacity:.16;}
.cv2-experience-nodes i:nth-child(1){left:12%;top:28%}.cv2-experience-nodes i:nth-child(2){left:72%;top:20%}.cv2-experience-nodes i:nth-child(3){left:84%;top:72%}
.cv2[data-experience-motion~="ambient-drift"] .cv2-experience-pattern{animation:cv2AmbientDrift 28s ease-in-out infinite alternate;}
.cv2[data-experience-motion~="node-pulse"] .cv2-experience-nodes i{animation:cv2NodePulse 5.5s ease-in-out infinite;}.cv2[data-experience-motion~="node-pulse"] .cv2-experience-nodes i:nth-child(2){animation-delay:1.4s}.cv2[data-experience-motion~="node-pulse"] .cv2-experience-nodes i:nth-child(3){animation-delay:2.8s}
@keyframes cv2AmbientDrift{from{transform:translate3d(-8px,-5px,0)}to{transform:translate3d(10px,7px,0)}}
@keyframes cv2NodePulse{0%,100%{opacity:.08;transform:scale(.8)}50%{opacity:.25;transform:scale(1.2)}}
.cv2-native-page-hero{padding:clamp(2rem,4.2vw,4rem) 0 clamp(1.7rem,3vw,3rem);}
.cv2-native-page-heading h1{font-size:clamp(2rem,3.5vw,3.75rem);}
.cv2-native-page-canvas{padding:clamp(1.75rem,4vw,4rem) 0 clamp(3rem,6vw,6rem);}
.cv2-native-page-content .cv2-native-body-inner{padding:clamp(1.25rem,2.8vw,3rem);}
/* Structural containers provide layout only; explicitly styled groups retain a surface. */
.cv2-native-page-content .wp-block-group:not(.has-background):not([class*="is-style-"]){background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;}
.cv2-native-page-content .wp-block-columns{background:transparent;border:0;box-shadow:none;padding:0;}
.cv2-renderer-enhanced .wp-block-columns>.wp-block-column{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;}
@media (hover:hover) and (pointer:fine){.cv2[data-experience-motion~="surface-lift"] .cv2-renderer-enhanced .wp-block-columns>.wp-block-column:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(12,35,55,.11);border-color:color-mix(in srgb,var(--accent-2) 42%,transparent);}}

@media(max-width:780px){.cv2-experience-pattern{opacity:.025!important;background-attachment:scroll}.cv2-experience-nodes{display:none}.cv2-native-page-hero{padding-block:1.8rem 1.45rem}.cv2-native-page-canvas{padding-top:1.4rem}}
@media(prefers-reduced-motion:reduce){.cv2-experience-pattern, .cv2-experience-nodes i{animation:none!important}.cv2-experience-pattern{transform:none!important}.cv2-renderer-enhanced .wp-block-columns>.wp-block-column{transition:none!important}}


/* CLEAN042 — Visible, profile-complete Universal atmosphere and coordinated rhythm. */
.cv2{
  --cv2-experience-background-opacity:.14;
  --cv2-experience-texture-opacity:.11;
  --cv2-experience-pattern-opacity:.10;
  --cv2-experience-glow-opacity:.78;
  --cv2-experience-node-opacity:.28;
  --cv2-experience-pattern-size:540px;
}
.cv2-native-page-content{position:relative;overflow:hidden;isolation:isolate;background:var(--cv2-page-bg);}
.cv2-native-page-content>.cv2-native-atmosphere, .cv2-native-page-content>.cv2-native-page-orbit, .cv2-native-page-content>.cv2-experience-layer, .cv2-native-page-content>.cv2-experience-nodes{position:absolute;inset:0;pointer-events:none;}
.cv2-native-page-content>.cv2-native-atmosphere{z-index:0;background:var(--cv2-profile-background) center top/cover no-repeat;opacity:var(--cv2-experience-background-opacity);mix-blend-mode:multiply;filter:saturate(.82) contrast(1.02);}
.cv2-native-page-content>.cv2-native-page-orbit{z-index:1;background:var(--cv2-profile-texture) center top/760px auto repeat;opacity:var(--cv2-experience-texture-opacity);mix-blend-mode:multiply;}
.cv2-native-page-content>.cv2-experience-pattern{z-index:2;background-image:var(--cv2-experience-pattern);background-repeat:repeat;background-size:var(--cv2-experience-pattern-size) auto;opacity:var(--cv2-experience-pattern-opacity);mix-blend-mode:multiply;}
.cv2-native-page-content>.cv2-experience-glow{z-index:3;inset:-16%;opacity:var(--cv2-experience-glow-opacity);background:radial-gradient(circle at 16% 12%,color-mix(in srgb,var(--accent-2) 26%,transparent),transparent 34%),radial-gradient(circle at 84% 54%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 32%),linear-gradient(120deg,transparent 20%,color-mix(in srgb,#fff 16%,transparent) 48%,transparent 72%);}
.cv2-native-page-content>.cv2-experience-nodes{z-index:4;opacity:var(--cv2-experience-node-opacity);}
.cv2-native-page-content>.cv2-native-page-hero, .cv2-native-page-content>.cv2-native-page-canvas{position:relative;z-index:5;}
.cv2-experience-nodes i{opacity:.72;}






.cv2[data-experience-motion~="light-breathe"] .cv2-native-page-content>.cv2-experience-glow{animation:cv2LightBreathe 12s ease-in-out infinite alternate;}
@keyframes cv2LightBreathe{from{transform:translate3d(-.8%,0,0) scale(1);filter:brightness(.96)}to{transform:translate3d(.8%,.4%,0) scale(1.018);filter:brightness(1.06)}}

/* One vertical rhythm: compact title, quick transition, content. */
.cv2-native-page-hero{padding:clamp(1.4rem,2.8vw,2.7rem) 0 clamp(1.15rem,2.1vw,2rem);background:color-mix(in srgb,var(--cv2-page-hero-bg) 82%,transparent);backdrop-filter:blur(2px);}
.cv2-native-page-hero.no-image .cv2-native-page-hero-grid{min-height:0;}
.cv2-native-page-heading h1{font-size:clamp(2rem,3vw,3.35rem);line-height:1.12;margin:.12em auto;}
.cv2-native-page-summary{margin-top:.65rem;}
.cv2-native-page-canvas{padding:clamp(1rem,2vw,1.8rem) 0 clamp(2.7rem,5vw,5rem);}
.cv2-native-page-content .cv2-native-body-inner{padding:clamp(1rem,2.15vw,2.25rem);background:color-mix(in srgb,var(--cv2-page-surface) 72%,transparent);backdrop-filter:blur(7px);}
.cv2-renderer-enhanced .cv2-native-body-inner{padding-top:.35rem;}
.cv2-native-page-content .cv2-native-body-inner>:first-child{margin-top:0!important;}
.cv2-native-page-content .cv2-native-body-inner>.wp-block-group:first-child, .cv2-native-page-content .cv2-native-body-inner>.wp-block-columns:first-child{margin-top:0!important;}
.cv2-native-page-content .wp-block-columns{margin-block:clamp(.55rem,1.4vw,1.2rem);}
.cv2-renderer-enhanced .wp-block-columns>.wp-block-column{background:color-mix(in srgb,var(--cv2-page-surface) 82%,transparent);backdrop-filter:blur(8px);}
.cv2-renderer-universal .cv2-native-body-inner:has(>.wp-block-columns), .cv2-renderer-universal .cv2-native-body-inner:has(>.wp-block-group){background:color-mix(in srgb,var(--cv2-page-surface) 52%,transparent);}

@media(max-width:780px){
  .cv2-native-page-content>.cv2-native-atmosphere{opacity:calc(var(--cv2-experience-background-opacity) * .72);background-attachment:scroll;}
  .cv2-native-page-content>.cv2-native-page-orbit{opacity:calc(var(--cv2-experience-texture-opacity) * .68);}
  .cv2-native-page-content>.cv2-experience-pattern{opacity:calc(var(--cv2-experience-pattern-opacity) * .65)!important;background-size:calc(var(--cv2-experience-pattern-size) * .78) auto;}
  .cv2-native-page-hero{padding-block:1.25rem 1rem;}
  .cv2-native-page-canvas{padding-top:.8rem;}
  .cv2-native-page-content .cv2-native-body-inner{padding:1rem;}
}
@media(prefers-reduced-motion:reduce){.cv2-native-page-content>.cv2-experience-glow{animation:none!important;transform:none!important;filter:none!important;}}

/* CLEAN043 — complete footer normalization and profile-balanced Universal surfaces. */
.cv2-footer{
  --cv2-footer-text-size:.76rem;
  padding:2rem clamp(1.5rem,4vw,4rem);
}
.cv2-footer-grid{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto;
  align-items:start;
  gap:clamp(2rem,5vw,5rem);
}
.cv2-footer-brand{align-items:center;max-width:420px}
.cv2-footer-logo{display:block;max-width:76px;max-height:68px;width:auto;height:auto}
.cv2-footer-copy strong{font-size:1.2rem}
.cv2-footer-copy small, .cv2-footer-copy p, .cv2-footer-column a, .cv2-footer-social-links a, .cv2-footer-qr span, .cv2-footer-legal small{font-size:var(--cv2-footer-text-size);line-height:1.55}
.cv2-footer-grid>.cv2-footer-column, .cv2-footer-grid>.cv2-footer-social{justify-self:end;min-width:120px}
.cv2-footer-grid{grid-auto-flow:column;grid-auto-columns:max-content}
.cv2-footer-configured .cv2-footer-brand{grid-column:1}
.cv2-footer-configured .cv2-footer-column:first-of-type, .cv2-footer-configured .cv2-footer-social:first-of-type{margin-left:auto}
.cv2-footer-column, .cv2-footer-social{display:grid;align-content:start;gap:.5rem;text-align:left}
.cv2-footer-column h2, .cv2-footer-social h2{font-size:.82rem;margin:0 0 .25rem}
.cv2-footer-column a, .cv2-footer-social-links a{display:block;color:inherit;text-decoration:none;opacity:.76;margin:.18rem 0}
.cv2-footer-social-links{display:grid;gap:.15rem}
.cv2-footer-qr{display:flex;gap:.8rem;align-items:flex-start;margin-top:.65rem}
.cv2-footer-qr a, .cv2-footer-qr>div{display:grid;gap:.25rem;color:inherit;text-decoration:none}
.cv2-footer-qr img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:7px;padding:4px}
.cv2-footer-legal{display:flex;justify-content:flex-end;margin-top:1.35rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.14)}

/* Remove the inherited orbit circle. The orbit element is a full-canvas texture layer. */
.cv2-native-page-content>.cv2-native-page-orbit{
  width:auto!important;height:auto!important;aspect-ratio:auto!important;
  right:0!important;top:0!important;left:0!important;bottom:0!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}

/* One atmospheric canvas; structural wrappers add layout only. */
.cv2-native-page-content .cv2-native-body{
  position:relative;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.cv2-native-page-content .cv2-native-body::before, .cv2-native-page-content .cv2-native-body::after{display:none!important}
.cv2-native-page-content .cv2-native-body-inner{
  padding:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  max-width:none!important;
}
.cv2-native-page-canvas{padding:clamp(.75rem,1.5vw,1.35rem) 0 clamp(2.5rem,4vw,4rem)}
.cv2-native-page-hero{padding:clamp(1.1rem,2vw,1.9rem) 0 clamp(.8rem,1.4vw,1.25rem)}

/* Profile layer policy: identity pattern first, lighting second, sparse accents last. */











@media(max-width:1050px){
  .cv2-footer-grid{grid-template-columns:1fr repeat(2,minmax(120px,max-content));grid-auto-flow:row}
  .cv2-footer-grid>.cv2-footer-column, .cv2-footer-grid>.cv2-footer-social{justify-self:start}
  .cv2-footer-brand{grid-column:1/-1}
}
@media(max-width:780px){
  .cv2-footer-grid{grid-template-columns:1fr;gap:1.25rem}
  .cv2-footer-grid>*{grid-column:1!important;justify-self:stretch!important}
  .cv2-footer-legal{justify-content:flex-start}
  .cv2-footer-logo{max-width:64px;max-height:58px}
  .cv2-native-page-canvas{padding-top:.5rem}
}


/* CLEAN045 — regression-safe responsive footer and final renderer flattening. */
.cv2-footer{
  --cv2-footer-text-size:.76rem;
  --cv2-footer-line-height:1.55;
  --cv2-footer-column-min:8.75rem;
  padding:2rem clamp(1.5rem,4vw,4rem);
}
.cv2-footer-grid{
  display:grid;
  grid-template-columns:minmax(240px,.9fr) minmax(0,2.1fr);
  align-items:start;
  gap:clamp(2rem,5vw,6rem);
}
.cv2-footer-content{
  min-width:0;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(var(--cv2-footer-column-min),max-content));
  justify-content:end;
  justify-items:start;
  align-items:start;
  gap:clamp(1.5rem,3vw,3.5rem);
}
.cv2-footer-brand{min-width:0;max-width:420px;align-items:center}
.cv2-footer-logo{display:block;max-width:76px;max-height:68px;width:auto;height:auto;object-fit:contain}
.cv2-footer-column, .cv2-footer-social{min-width:0;display:grid;align-content:start;gap:.5rem;text-align:left}
.cv2-footer-column h2, .cv2-footer-social h2{font-size:.82rem;line-height:1.35;margin:0 0 .25rem}
.cv2-footer-column a, .cv2-footer-social-links a{display:block;color:inherit;text-decoration:none;opacity:.78;margin:.12rem 0}
.cv2-footer-social-links{display:grid;gap:.2rem}
.cv2-footer-qr{display:flex;gap:.8rem;align-items:flex-start;margin-top:.55rem;flex-wrap:wrap}
.cv2-footer-qr a, .cv2-footer-qr>div{display:grid;gap:.25rem;color:inherit;text-decoration:none}
.cv2-footer-qr img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:7px;padding:4px}
.cv2-footer-column a, .cv2-footer-social-links a, .cv2-footer-qr span, .cv2-footer-legal small, .cv2-footer-copy small, .cv2-footer-copy p{
  font-size:var(--cv2-footer-text-size);
  line-height:var(--cv2-footer-line-height);
}
.cv2-footer-legal{display:flex;justify-content:flex-end;margin-top:1.35rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.14)}

@media (min-width:781px) and (max-width:1050px){
  .cv2-footer{padding:2rem clamp(1.5rem,4vw,2.5rem) 1rem}
  .cv2-footer-grid{grid-template-columns:minmax(190px,.8fr) minmax(0,1.8fr);gap:2rem}
  .cv2-footer-content{grid-template-columns:repeat(auto-fit,minmax(8rem,max-content));gap:1.25rem 2rem}
  .cv2-footer-logo{max-width:58px;max-height:52px}
  .cv2-footer-legal{margin-top:1.15rem}
}
@media (min-width:581px) and (max-width:780px){
  .cv2-footer{padding:1.75rem 1.5rem 1rem}
  .cv2-footer-grid{grid-template-columns:1fr;gap:1.35rem}
  .cv2-footer-content{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:1.25rem 1.75rem}
  .cv2-footer-column, .cv2-footer-social{padding-top:.75rem;border-top:1px solid rgba(255,255,255,.12)}
  .cv2-footer-logo{max-width:56px;max-height:50px}
  .cv2-footer-legal{margin-top:1rem;padding-top:.8rem;text-align:right}
}
@media (max-width:580px){
  .cv2-footer{padding:1.5rem 1.1rem .85rem;--cv2-footer-text-size:.74rem}
  .cv2-footer-grid{grid-template-columns:1fr;gap:1.1rem}
  .cv2-footer-content{grid-template-columns:1fr;justify-content:stretch;gap:.85rem}
  .cv2-footer-brand{gap:.65rem}
  .cv2-footer-logo{max-width:48px;max-height:44px}
  .cv2-footer-column, .cv2-footer-social{padding-top:.7rem;border-top:1px solid rgba(255,255,255,.12);gap:.4rem}
  .cv2-footer-column a, .cv2-footer-social-links a{min-height:0;padding:.12rem 0;margin:0}
  .cv2-footer-qr img{width:70px;height:70px}
  .cv2-footer-legal{justify-content:flex-start;margin-top:1rem;padding-top:.75rem;text-align:left}
}

/* Final cascade gate: structural wrappers remain layout-only in Enhanced and Universal pages. */
.cv2-renderer-enhanced .cv2-native-body, .cv2-renderer-universal .cv2-native-body, .cv2-renderer-enhanced .cv2-native-body-inner, .cv2-renderer-universal .cv2-native-body-inner{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  max-width:none!important;
  overflow:visible!important;
}
.cv2-renderer-enhanced .cv2-native-body::before, .cv2-renderer-enhanced .cv2-native-body::after, .cv2-renderer-universal .cv2-native-body::before, .cv2-renderer-universal .cv2-native-body::after{display:none!important}

.cv2-native-product-actions .cv2-native-cta-secondary{background:var(--deep);border:1px solid color-mix(in srgb,var(--accent) 32%,var(--deep));color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:none;opacity:.88;}
.cv2-native-product-actions .cv2-native-cta-secondary span{color:inherit!important;-webkit-text-fill-color:inherit!important;}
.cv2-native-product-actions .cv2-native-cta-secondary:hover, .cv2-native-product-actions .cv2-native-cta-secondary:focus-visible{background:color-mix(in srgb,var(--accent) 18%,var(--deep));opacity:1;}


/* CLEAN049 — profile-safe hero actions and dynamic responsive footer grouping. */
.cv2 .cv2-hero .cv2-actions .cv2-button, .cv2 .cv2-hero .cv2-actions .cv2-button:link, .cv2 .cv2-hero .cv2-actions .cv2-button:visited{
  color:currentColor!important;
  -webkit-text-fill-color:currentColor!important;
  background:transparent!important;
  border:1px solid color-mix(in srgb,currentColor 52%,transparent)!important;
  border-radius:4px;
  box-shadow:none!important;
  opacity:1;
}
.cv2 .cv2-hero .cv2-actions .cv2-button:hover, .cv2 .cv2-hero .cv2-actions .cv2-button:focus-visible{
  color:currentColor!important;
  -webkit-text-fill-color:currentColor!important;
  background:color-mix(in srgb,currentColor 9%,transparent)!important;
  border-color:color-mix(in srgb,currentColor 78%,transparent)!important;
  transform:translateY(-1px);
}
.cv2 .cv2-hero .cv2-actions .cv2-button:focus-visible{
  outline:2px solid color-mix(in srgb,currentColor 45%,transparent);
  outline-offset:3px;
}

/* The content group follows the number of rendered columns, stays on the far
 * right, and never exceeds three columns in one row. */
.cv2-footer-content{
  width:max-content;
  max-width:100%;
  margin-left:auto;
  justify-self:end;
  grid-template-columns:repeat(var(--cv2-footer-columns,3),minmax(var(--cv2-footer-column-min),max-content));
}
.cv2-footer-count-1{--cv2-footer-columns:1;--cv2-footer-tablet-columns:1;--cv2-footer-mobile-columns:1}
.cv2-footer-count-2{--cv2-footer-columns:2;--cv2-footer-tablet-columns:2;--cv2-footer-mobile-columns:2}
.cv2-footer-count-3, .cv2-footer-count-4{--cv2-footer-columns:3;--cv2-footer-tablet-columns:2;--cv2-footer-mobile-columns:2}

@media (min-width:781px) and (max-width:1050px){
  .cv2-footer-grid{grid-template-columns:minmax(180px,.75fr) minmax(0,1.6fr);gap:clamp(1.5rem,4vw,3rem)}
  .cv2-footer-content{
    width:max-content;
    max-width:100%;
    margin-left:auto;
    justify-self:end;
    grid-template-columns:repeat(var(--cv2-footer-tablet-columns,2),minmax(8.25rem,max-content));
    gap:1.15rem 2rem;
  }
  .cv2-footer-count-1 .cv2-footer-content{grid-template-columns:minmax(8.25rem,max-content)}
}
@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{grid-template-columns:1fr;gap:1.2rem}
  .cv2-footer-content{
    width:max-content;
    max-width:100%;
    margin-left:auto;
    justify-self:end;
    grid-template-columns:repeat(var(--cv2-footer-tablet-columns,2),minmax(8rem,max-content));
    justify-content:end;
    gap:1.1rem 1.75rem;
  }
  .cv2-footer-count-1 .cv2-footer-content{grid-template-columns:minmax(8rem,max-content)}
}
@media (max-width:580px){
  .cv2-footer-brand{align-items:flex-start}
  .cv2-footer-content{
    width:max-content;
    max-width:100%;
    margin-left:auto;
    justify-self:end!important;
    grid-template-columns:repeat(var(--cv2-footer-mobile-columns,2),minmax(7.25rem,max-content));
    justify-content:end;
    gap:.9rem 1.25rem;
  }
  .cv2-footer-count-1 .cv2-footer-content{grid-template-columns:minmax(7.25rem,max-content)}
  .cv2-footer-column, .cv2-footer-social{text-align:left;align-items:start}
  .cv2-footer-legal{justify-content:flex-end;text-align:right}
}
@media (max-width:380px){
  .cv2-footer-content{grid-template-columns:1fr;width:100%;justify-self:stretch!important}
}


/* CLEAN050: Dynamic footer column rows, right-aligned at every device width. */
.cv2-footer-count-1{--cv2-footer-columns:1;--cv2-footer-portrait-columns:1;--cv2-footer-mobile-columns:1}
.cv2-footer-count-2{--cv2-footer-columns:2;--cv2-footer-portrait-columns:2;--cv2-footer-mobile-columns:2}
.cv2-footer-count-3{--cv2-footer-columns:3;--cv2-footer-portrait-columns:3;--cv2-footer-mobile-columns:2}
.cv2-footer-count-4{--cv2-footer-columns:4;--cv2-footer-portrait-columns:3;--cv2-footer-mobile-columns:2}

.cv2-footer-content{
  display:grid;
  width:max-content;
  max-width:100%;
  margin-left:auto;
  justify-self:end;
  justify-content:end;
  grid-template-columns:repeat(var(--cv2-footer-columns,1),minmax(7.5rem,max-content));
  gap:1.25rem 2rem;
}

@media (min-width:781px) and (max-width:1050px){
  .cv2-footer-grid{grid-template-columns:minmax(180px,.72fr) minmax(0,2.28fr);gap:1.5rem}
  .cv2-footer-content{
    width:max-content;
    max-width:100%;
    grid-template-columns:repeat(var(--cv2-footer-columns,1),minmax(6.75rem,max-content));
    gap:1rem 1.25rem;
  }
}

@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{grid-template-columns:minmax(155px,.65fr) minmax(0,2.35fr);gap:1.25rem}
  .cv2-footer-content{
    width:max-content;
    max-width:100%;
    grid-template-columns:repeat(var(--cv2-footer-portrait-columns,1),minmax(6.5rem,max-content));
    gap:1rem;
  }
}

@media (max-width:580px){
  .cv2-footer-grid{grid-template-columns:1fr;gap:1rem}
  .cv2-footer-content{
    width:max-content;
    max-width:100%;
    grid-template-columns:repeat(var(--cv2-footer-mobile-columns,1),minmax(6.25rem,max-content));
    gap:.9rem;
  }
}

@media (max-width:360px){
  .cv2-footer-content{grid-template-columns:1fr;width:max-content;max-width:100%}
}


/* CLEAN051: final responsive footer contract. Resets legacy spanning rules. */
.cv2-footer-grid{
  display:grid;
  grid-template-columns:minmax(240px,.9fr) minmax(0,1.7fr);
  align-items:start;
  gap:1.5rem 2rem;
}
.cv2-footer-brand{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:.7rem;
}
.cv2-footer-copy{min-width:0}
.cv2-footer-copy strong{
  white-space:nowrap;
  overflow:visible;
  word-break:keep-all;
  font-size:clamp(.84rem,1.2vw,1rem);
}
.cv2-footer-logo{flex:none;max-width:54px;height:auto}
.cv2-footer-content{
  display:grid;
  width:max-content;
  max-width:100%;
  margin-left:auto;
  justify-self:end;
  justify-content:end;
  grid-template-columns:repeat(var(--cv2-footer-columns,1),minmax(6.25rem,max-content));
  gap:1rem 1.35rem;
}
.cv2-footer-content>.cv2-footer-column, .cv2-footer-content>.cv2-footer-social{
  grid-column:auto !important;
  justify-self:end;
  align-self:start;
  min-width:0;
  padding-top:0;
  border-top:0;
  text-align:left;
  align-items:start;
}
.cv2-footer-content>.cv2-footer-social{
  display:grid !important;
  flex-direction:unset !important;
  justify-content:initial !important;
}

/* Tablet landscape: the content group can use all configured columns, up to four. */
@media (min-width:781px) and (max-width:1050px){
  .cv2-footer-grid{grid-template-columns:minmax(230px,.85fr) minmax(0,1.75fr);gap:1.25rem}
  .cv2-footer-content{
    grid-template-columns:repeat(var(--cv2-footer-columns,1),minmax(5.8rem,max-content));
    gap:.9rem 1rem;
  }
  .cv2-footer-logo{max-width:48px}
  .cv2-footer-copy strong{font-size:.88rem}
}

/* Tablet portrait: at most three columns in a right-aligned group. */
@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{grid-template-columns:minmax(210px,.8fr) minmax(0,1.5fr);gap:1rem}
  .cv2-footer-content{
    grid-template-columns:repeat(var(--cv2-footer-portrait-columns,1),minmax(5.7rem,max-content));
    margin-left:auto;
    justify-self:end;
    gap:.85rem;
  }
  .cv2-footer-logo{max-width:44px}
  .cv2-footer-copy strong{font-size:.82rem}
}

/* Mobile: branding remains professional; action columns form a compact right group. */
@media (max-width:580px){
  .cv2-footer-grid{grid-template-columns:1fr;gap:1rem}
  .cv2-footer-brand{width:100%;grid-template-columns:auto minmax(0,1fr)}
  .cv2-footer-content{
    grid-template-columns:repeat(var(--cv2-footer-mobile-columns,1),minmax(6rem,max-content));
    width:max-content;
    max-width:100%;
    margin-left:auto;
    justify-self:end;
    gap:.8rem 1rem;
  }
  .cv2-footer-copy strong{font-size:.8rem;white-space:nowrap}
  .cv2-footer-copy small{font-size:.66rem}
  .cv2-footer-logo{max-width:42px}
  .cv2-footer-legal{justify-content:flex-end;text-align:right}
}
@media (max-width:380px){
  .cv2-footer-content{grid-template-columns:1fr;width:max-content;max-width:100%}
  .cv2-footer-copy strong{font-size:.76rem;white-space:normal;word-break:keep-all}
}

/* CLEAN052: final footer geometry. The configured content group owns only the
 * space required by populated columns and remains anchored to the far right. */
.cv2-footer-grid{
  grid-template-columns:max-content max-content;
  justify-content:space-between;
  column-gap:clamp(1.5rem,4vw,4rem);
}
.cv2-footer-brand{
  width:max-content;
  max-width:none;
  grid-template-columns:auto max-content;
}
.cv2-footer-copy{width:max-content;max-width:none}
.cv2-footer-copy strong, .cv2-footer-copy small{
  display:block;
  width:max-content;
  max-width:none;
  white-space:nowrap;
  word-break:keep-all;
  overflow-wrap:normal;
}
.cv2-footer-content{
  width:max-content;
  max-width:100%;
  margin-left:auto;
  justify-self:end;
  justify-content:end;
  align-content:start;
}

/* Tablet landscape: populated columns share a row dynamically, up to four. */
@media (min-width:781px) and (max-width:1050px){
  .cv2-footer-grid{
    grid-template-columns:max-content minmax(0,1fr);
    justify-content:stretch;
    column-gap:1.25rem;
  }
  .cv2-footer-content{
    grid-template-columns:repeat(var(--cv2-footer-columns,1),minmax(5.5rem,max-content));
    justify-self:end;
    margin-left:auto;
  }
}

/* Tablet portrait: branding remains unwrapped and populated columns form a
 * compact right-aligned group. With the current two columns this remains one row. */
@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{
    grid-template-columns:max-content minmax(0,1fr);
    justify-content:stretch;
    align-items:start;
    column-gap:.9rem;
  }
  .cv2-footer-brand{
    width:max-content;
    grid-template-columns:auto max-content;
    gap:.5rem;
  }
  .cv2-footer-copy strong{font-size:.76rem}
  .cv2-footer-copy small{font-size:.62rem}
  .cv2-footer-logo{max-width:38px}
  .cv2-footer-content{
    grid-template-columns:repeat(var(--cv2-footer-portrait-columns,1),minmax(5.25rem,max-content));
    width:max-content;
    justify-self:end;
    justify-content:end;
    margin-left:auto;
    gap:.75rem .9rem;
  }
}

/* Mobile keeps branding intact and places the dynamic content group at right.
 * At very narrow widths the footer stacks cleanly rather than wrapping branding. */
@media (max-width:580px){
  .cv2-footer-grid{grid-template-columns:1fr;justify-content:stretch}
  .cv2-footer-brand{width:max-content;max-width:100%;grid-template-columns:auto max-content}
  .cv2-footer-content{justify-self:end;margin-left:auto}
}
@media (max-width:430px){
  .cv2-footer-copy strong{font-size:.72rem}
  .cv2-footer-copy small{font-size:.6rem}
  .cv2-footer-logo{max-width:36px}
}

/* CLEAN053: tablet-portrait footer composition.
 * Earlier generic tablet rules force every grid child into column 1 with
 * !important. Restore the intended two-quadrant composition explicitly:
 * branding at upper left, populated footer columns at lower right. */
@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-rows:auto auto;
    align-items:start;
    column-gap:1rem;
    row-gap:.85rem;
  }
  .cv2-footer-grid>.cv2-footer-brand{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
    align-self:start;
    width:max-content;
    max-width:100%;
  }
  .cv2-footer-grid>.cv2-footer-content{
    grid-column:2 !important;
    grid-row:2 !important;
    justify-self:end !important;
    align-self:end;
    width:max-content;
    max-width:100%;
    margin-left:auto;
    text-align:left;
  }
}

/* AIH006: public FORWIN Media collection presentation. */
.forwin-theme-corporate-v2.forwin-media-collection{margin:clamp(1.5rem,3vw,3rem) 0}
.forwin-theme-corporate-v2 .forwin-media-items{display:grid;gap:clamp(1rem,2vw,1.5rem)}
.forwin-theme-corporate-v2.forwin-media-layout-grid .forwin-media-items{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-items{grid-template-columns:1fr}
.forwin-theme-corporate-v2 .forwin-media-item{border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:1rem;background:color-mix(in srgb,var(--cv2-surface,#fff) 94%,transparent);box-shadow:0 .75rem 2rem rgba(0,0,0,.06);overflow:hidden}
.forwin-theme-corporate-v2 .forwin-media-item-body{padding:clamp(1rem,2vw,1.5rem)}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-body{display:grid;grid-template-columns:minmax(7rem,.25fr) minmax(0,1fr) auto;gap:.75rem 1.25rem;align-items:start}
.forwin-theme-corporate-v2 .forwin-media-type-label{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.72}
.forwin-theme-corporate-v2 .forwin-media-title{margin:.45rem 0 .65rem;font-size:clamp(1.1rem,2vw,1.4rem)}
.forwin-theme-corporate-v2 .forwin-media-title-link{color:inherit;text-decoration:none}
.forwin-theme-corporate-v2 .forwin-media-summary, .forwin-theme-corporate-v2 .forwin-media-origin{margin:.45rem 0;opacity:.82}
.forwin-theme-corporate-v2 .forwin-media-origin{font-size:.875rem}
.forwin-theme-corporate-v2 .forwin-media-action{display:inline-flex;margin-top:.8rem;font-weight:700}
.forwin-theme-corporate-v2 .forwin-media-empty{padding:1rem;border:1px dashed currentColor;border-radius:.75rem;opacity:.75}
@media (max-width:720px){.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-body{grid-template-columns:1fr}}

/* MEDIA001 PATCH004: readable, bounded public media collections. */
.forwin-theme-corporate-v2 .forwin-media-item-body{display:grid;gap:clamp(.85rem,1.6vw,1.25rem);min-width:0}
.forwin-theme-corporate-v2 .forwin-media-item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .75rem;min-width:0;color:var(--muted,#64748b);font-size:.8rem;line-height:1.45}
.forwin-theme-corporate-v2 .forwin-media-item-meta>*+*::before{content:"·";margin-right:.75rem;opacity:.55}
.forwin-theme-corporate-v2 .forwin-media-type-label{color:var(--accent,#1d6fa5);opacity:1}
.forwin-theme-corporate-v2 .forwin-media-origin, .forwin-theme-corporate-v2 .forwin-media-date{margin:0;font-size:inherit;opacity:1}
.forwin-theme-corporate-v2 .forwin-media-item-content{min-width:0}
.forwin-theme-corporate-v2 .forwin-media-title-link{display:block;min-width:0}
.forwin-theme-corporate-v2 .forwin-media-title{margin:0;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.45;overflow-wrap:anywhere;word-break:normal}
.forwin-theme-corporate-v2 .forwin-media-summary{margin:.7rem 0 0;line-height:1.75;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.forwin-theme-corporate-v2.forwin-media-layout-grid .forwin-media-summary{-webkit-line-clamp:4}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-summary{-webkit-line-clamp:3}
.forwin-theme-corporate-v2 .forwin-media-item-action{display:flex;align-items:flex-start;justify-content:flex-end}
.forwin-theme-corporate-v2 .forwin-media-action{margin:0;white-space:nowrap;text-decoration:none}
.forwin-theme-corporate-v2 .forwin-media-action::after{content:"→";margin-left:.45rem}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-body{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"meta action" "content action";align-items:start}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-meta{grid-area:meta}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-content{grid-area:content}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-action{grid-area:action;align-self:center;padding-left:1rem}
@media (max-width:720px){
  .forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-body{grid-template-columns:1fr;grid-template-areas:"meta" "content" "action"}
  .forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-action{justify-content:flex-start;padding-left:0}
}

/* MEDIA002: reusable content-feed card with expandable summaries and footer action. */
.forwin-theme-corporate-v2 .forwin-media-item{display:flex;flex-direction:column}
.forwin-theme-corporate-v2 .forwin-media-item-body{flex:1;padding:clamp(1.1rem,2.2vw,1.65rem)}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-body{display:grid;grid-template-columns:1fr;grid-template-areas:"meta" "content";gap:.9rem}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-meta{grid-area:meta}
.forwin-theme-corporate-v2.forwin-media-layout-list .forwin-media-item-content{grid-area:content}
.forwin-theme-corporate-v2 .forwin-media-title{margin:0 0 .75rem}
.forwin-theme-corporate-v2 .forwin-media-summary-wrap{position:relative}
.forwin-theme-corporate-v2 .forwin-media-summary{display:block;margin:0;line-height:1.8;overflow:visible}
.forwin-theme-corporate-v2 .forwin-media-summary.is-collapsible:not(.is-expanded){display:block;max-height:3.6em;overflow:hidden}
.forwin-theme-corporate-v2 .forwin-media-summary.is-collapsible.is-expanded{display:block;max-height:none;overflow:visible}
.forwin-theme-corporate-v2 .forwin-media-summary-toggle{appearance:none;border:0;background:transparent;color:var(--accent,#1d6fa5);font:inherit;font-weight:700;padding:.75rem 0 0;cursor:pointer;text-align:left}
.forwin-theme-corporate-v2 .forwin-media-summary-toggle::after{content:"⌄";display:inline-block;margin-left:.45rem;transition:transform .2s ease}
.forwin-theme-corporate-v2 .forwin-media-summary-toggle[aria-expanded="true"]::after{transform:rotate(180deg)}
.forwin-theme-corporate-v2 .forwin-media-summary-toggle:focus-visible{outline:2px solid currentColor;outline-offset:.25rem;border-radius:.2rem}
.forwin-theme-corporate-v2 .forwin-media-item-footer{margin-top:auto;padding:.9rem clamp(1.1rem,2.2vw,1.65rem);border-top:1px solid color-mix(in srgb,currentColor 12%,transparent);background:color-mix(in srgb,var(--cv2-surface,#fff) 88%,transparent)}
.forwin-theme-corporate-v2 .forwin-media-item-footer .forwin-media-action{display:inline-flex;align-items:center;margin:0;font-weight:700;text-decoration:none}
.forwin-theme-corporate-v2 .forwin-media-item-footer .forwin-media-action::after{content:"→";margin-left:.45rem}

/* CONTACT001 PATCH002 — suppress chapter fades when an optional homepage section is terminal. */
.cv2 #cv2-main > .cv2-story-products:last-child::after, .cv2 #cv2-main > .cv2-media-story:last-child::after, .cv2 #cv2-main > .cv2-overlay-target:last-child .cv2-story-products::after, .cv2 #cv2-main > .cv2-overlay-target:last-child .cv2-media-story::after{
  display:none;
}

/* CONTACT001 PATCH003: preserve interactive primary-media video controls. */
.cv2 .cv2-media-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;z-index:1;}
.cv2 .cv2-media-panel--video::after, .cv2 .cv2-media-panel--video .cv2-media-scan, .cv2 .cv2-media-panel--video .cv2-media-corner{pointer-events:none;}
.cv2 .cv2-media-panel--video .cv2-panel-copy{pointer-events:none;}
.cv2 .cv2-media-panel--video .cv2-media-video{pointer-events:auto;}

/* MEDIA-LAYOUT003: one bounded row geometry; each asset preserves its own ratio inside its panel. */
.cv2 .cv2-media-story{
  align-items:stretch;
  grid-auto-rows:clamp(300px,32vw,460px);
}
.cv2 .cv2-media-story > .cv2-media-panel{
  min-height:0;
  height:100%;
}
.cv2 .cv2-media-panel--video{
  display:grid;
  place-items:center;
  background:#000;
}
.cv2 .cv2-media-panel--video .cv2-media-video{
  position:relative;
  inset:auto;
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  background:#000;
}
.cv2 .cv2-media-panel--video.cv2-media-ratio--original .cv2-media-video{width:auto;height:auto;max-width:100%;max-height:100%;}
.cv2 .cv2-media-panel--video.cv2-media-ratio--16-9 .cv2-media-video{aspect-ratio:16/9;width:100%;height:auto;}
.cv2 .cv2-media-panel--video.cv2-media-ratio--9-16 .cv2-media-video{aspect-ratio:9/16;width:auto;height:100%;}
.cv2 .cv2-media-panel--video.cv2-media-ratio--4-3 .cv2-media-video{aspect-ratio:4/3;width:100%;height:auto;}
.cv2 .cv2-media-panel--video.cv2-media-ratio--1-1 .cv2-media-video{aspect-ratio:1/1;width:auto;height:100%;}
@media(max-width:760px){
  .cv2 .cv2-media-story{grid-auto-rows:auto;}
  .cv2 .cv2-media-story > .cv2-media-panel{height:clamp(280px,72vw,440px);}
}


/* MEDIA-LAYOUT004: preserve complete media by default and keep playback policy MIME-aware. */
.cv2 .cv2-media-panel--image{
  display:grid;
  place-items:center;
  background:#000;
}
.cv2 .cv2-media-panel--image .cv2-media-image{
  position:relative;
  inset:auto;
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.cv2 .cv2-media-panel--image.cv2-media-fit--cover .cv2-media-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
}
.cv2 .cv2-media-panel--image.cv2-media-ratio--16-9 .cv2-media-image{aspect-ratio:16/9;}
.cv2 .cv2-media-panel--image.cv2-media-ratio--9-16 .cv2-media-image{aspect-ratio:9/16;}
.cv2 .cv2-media-panel--image.cv2-media-ratio--4-3 .cv2-media-image{aspect-ratio:4/3;}
.cv2 .cv2-media-panel--image.cv2-media-ratio--1-1 .cv2-media-image{aspect-ratio:1/1;}
.cv2 .cv2-media-panel--audio{
  display:grid;
  place-items:center;
  padding:clamp(1.5rem,4vw,3rem);
  background:linear-gradient(135deg,#07180d,#0a2b20);
}
.cv2 .cv2-media-panel--audio .cv2-media-audio{
  position:relative;
  z-index:2;
  width:min(100%,520px);
}
.cv2 .cv2-media-panel--audio::after, .cv2 .cv2-media-panel--audio .cv2-media-scan, .cv2 .cv2-media-panel--audio .cv2-media-corner{pointer-events:none;}

/* MEDIA-LAYOUT005: original-ratio media is always full-frame; crop requires an explicit ratio. */
.cv2 .cv2-media-panel--image.cv2-media-ratio--original .cv2-media-image, .cv2 .cv2-media-panel--video.cv2-media-ratio--original .cv2-media-video{
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}


/* MEDIA-LAYOUT006: bind replaced media to the shared panel box; contain preserves the full source. */
.cv2 .cv2-media-panel--image.cv2-media-ratio--original .cv2-media-image, .cv2 .cv2-media-panel--video.cv2-media-ratio--original .cv2-media-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
}

/* MEDIA-CAPTION010: lighter compact glass caption anchored at the media viewport top-left. */
.cv2 .cv2-media-panel{
  position:relative;
  display:block;
  min-width:0;
  min-height:0;
  overflow:hidden;
  background:#000;
}
.cv2 .cv2-media-viewport{
  position:relative;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:#000;
}
.cv2 .cv2-media-caption{
  position:absolute;
  z-index:5;
  left:clamp(.75rem,1.5vw,1.15rem);
  top:clamp(.75rem,1.5vw,1.15rem);
  bottom:auto;
  transform:none;
  display:flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:calc(100% - 2rem);
  min-height:clamp(2.1rem,3.2vw,2.65rem);
  padding:.42rem clamp(1rem,2.3vw,1.65rem);
  border:1px solid rgba(255,255,255,.12);
  background:rgba(8,47,91,.48);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  color:#fff;
  text-align:center;
  pointer-events:none;
}
.cv2 .cv2-media-caption h2{
  margin:0;
  font-size:clamp(.9rem,1.25vw,1.05rem);
  line-height:1.35;
  font-weight:700;
  letter-spacing:.02em;
}
.cv2 .cv2-media-viewport .cv2-media-image, .cv2 .cv2-media-viewport .cv2-media-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
}
.cv2 .cv2-media-viewport .cv2-media-audio{
  position:relative;
  z-index:2;
}
.cv2 .cv2-media-panel::after{display:none;}
.cv2 .cv2-media-panel .cv2-panel-copy{display:none;}

/* MOBILE-TOUCH001 — preserve reliable coarse-pointer activation for hero actions. */
.cv2 .cv2-hero-copy, .cv2 .cv2-hero .cv2-actions, .cv2 .cv2-hero .cv2-actions .cv2-button{
  position:relative;
  z-index:6;
}
.cv2 .cv2-hero .cv2-actions .cv2-button{
  pointer-events:auto;
  min-height:max(var(--cv2-touch-target),48px);
  min-width:48px;
  -webkit-tap-highlight-color:rgba(255,255,255,.16);
}
@media(hover:none),(pointer:coarse){
  .cv2 .cv2-hero .cv2-actions .cv2-button:hover, .cv2 .cv2-hero .cv2-actions .cv2-button:active{
    transform:none;
  }
  .cv2 .cv2-hero-art, .cv2 .cv2-hero-shade, .cv2 .cv2-hero-copy::before, .cv2 .cv2-hero-copy::after{
    pointer-events:none!important;
  }
}

/* RESPONSIVEFOOTER001 / AIH089 — common-owned tablet portrait/mobile footer geometry.
 * Desktop and tablet-landscape remain unchanged. Profile layers continue to own
 * visual tokens only; footer grid/flow is a shared responsive mechanic. */
@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto auto;
    gap:1.15rem;
    align-items:start;
  }
  .cv2-footer-grid>.cv2-footer-brand{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
    width:100%;
    max-width:100%;
  }
  .cv2-footer-grid>.cv2-footer-content{
    grid-column:1 !important;
    grid-row:2 !important;
    width:100%;
    max-width:100%;
    margin-left:0;
    justify-self:stretch !important;
    justify-content:stretch;
    grid-template-columns:repeat(var(--cv2-footer-portrait-columns,1),minmax(0,1fr));
    gap:1rem 1.35rem;
  }
  .cv2-footer-content>.cv2-footer-column, .cv2-footer-content>.cv2-footer-social{
    justify-self:stretch;
    min-width:0;
  }
  .cv2-footer-column a, .cv2-footer-social-links a{
    white-space:normal;
    overflow-wrap:anywhere;
  }
}

@media (max-width:580px){
  .cv2-footer-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto auto;
    gap:1rem;
  }
  .cv2-footer-grid>.cv2-footer-brand{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
    width:100%;
    max-width:100%;
  }
  .cv2-footer-grid>.cv2-footer-content{
    grid-column:1 !important;
    grid-row:2 !important;
    width:100%;
    max-width:100%;
    margin-left:0;
    justify-self:stretch !important;
    justify-content:stretch;
    grid-template-columns:repeat(var(--cv2-footer-mobile-columns,1),minmax(0,1fr));
    gap:.9rem 1rem;
  }
  .cv2-footer-content>.cv2-footer-column, .cv2-footer-content>.cv2-footer-social{
    justify-self:stretch;
    min-width:0;
  }
  .cv2-footer-column a, .cv2-footer-social-links a{
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .cv2-footer-legal{
    justify-content:flex-start;
    text-align:left;
  }
}

@media (max-width:340px){
  .cv2-footer-grid>.cv2-footer-content{
    grid-template-columns:1fr;
  }
}

/* RESPONSIVEFOOTER002 / AIH090 — intentional common responsive footer composition.
 * Shared layout mechanic only. Desktop/tablet-landscape remain untouched.
 * Tablet portrait uses a brand row + balanced group row.
 * Mobile uses full-width semantic groups; link density is handled inside groups,
 * rather than by squeezing whole desktop columns side-by-side. */
@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto auto;
    gap:1.25rem;
    align-items:start;
  }
  .cv2-footer-grid>.cv2-footer-brand{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
    width:max-content;
    max-width:100%;
    grid-template-columns:auto max-content;
    align-items:center;
    gap:.65rem;
  }
  .cv2-footer-grid>.cv2-footer-content{
    grid-column:1 !important;
    grid-row:2 !important;
    width:100%;
    max-width:none;
    margin:0;
    justify-self:stretch !important;
    justify-content:stretch;
    grid-template-columns:repeat(var(--cv2-footer-portrait-columns,1),minmax(0,1fr));
    gap:1rem 1.5rem;
  }
  .cv2-footer-content>.cv2-footer-column, .cv2-footer-content>.cv2-footer-social{
    justify-self:stretch;
    align-self:start;
    width:100%;
    min-width:0;
    padding-top:0;
    border-top:0;
    text-align:left;
  }
  .cv2-footer-column a, .cv2-footer-social-links a{
    white-space:normal;
    overflow-wrap:break-word;
  }
  .cv2-footer-legal{
    justify-content:flex-end;
    text-align:right;
  }
}

@media (max-width:580px){
  .cv2-footer{
    padding:1.35rem 1rem .8rem;
  }
  .cv2-footer-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto auto;
    gap:1.15rem;
  }
  .cv2-footer-grid>.cv2-footer-brand{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
    width:auto;
    max-width:100%;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:.65rem;
  }
  .cv2-footer-copy{
    width:auto;
    max-width:100%;
  }
  .cv2-footer-copy strong, .cv2-footer-copy small{
    width:auto;
    max-width:100%;
    white-space:normal;
    overflow-wrap:break-word;
  }
  .cv2-footer-grid>.cv2-footer-content{
    grid-column:1 !important;
    grid-row:2 !important;
    width:100%;
    max-width:none;
    margin:0;
    justify-self:stretch !important;
    justify-content:stretch;
    grid-template-columns:1fr;
    gap:0;
  }
  .cv2-footer-content>.cv2-footer-column, .cv2-footer-content>.cv2-footer-social{
    justify-self:stretch;
    width:100%;
    min-width:0;
    padding:.9rem 0;
    border-top:1px solid rgba(255,255,255,.12);
    text-align:left;
  }
  .cv2-footer-content>.cv2-footer-column:first-child{
    border-top:0;
    padding-top:0;
  }
  .cv2-footer-column{
    gap:.45rem;
  }
  .cv2-footer-column:not(:has(h2)){
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.45rem 1rem;
  }
  .cv2-footer-column:not(:has(h2)) a{
    min-width:0;
  }
  .cv2-footer-column:has(h2) a{
    margin:.08rem 0;
  }
  .cv2-footer-social-links{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.35rem .75rem;
  }
  .cv2-footer-qr{
    margin-top:.65rem;
    gap:.7rem;
  }
  .cv2-footer-legal{
    justify-content:flex-start;
    text-align:left;
    margin-top:.25rem;
  }
}

@media (max-width:360px){
  .cv2-footer-column:not(:has(h2)), .cv2-footer-social-links{
    grid-template-columns:1fr 1fr;
  }
}


/* RESPONSIVEFOOTER003 / AIH091 — common tablet-portrait semantic grouping refinement.
 * Tablet portrait only: give the configured navigation, relationship/affiliate,
 * and social/QR groups a deliberate shared hierarchy. Mobile remains AIH090.
 * Geometry stays COMMON; profiles retain visual treatment only. */
@media (min-width:581px) and (max-width:780px){
  .cv2-footer-grid{
    gap:1rem;
  }
  .cv2-footer-grid>.cv2-footer-brand{
    width:auto;
    grid-template-columns:auto minmax(0,1fr);
  }
  .cv2-footer-grid>.cv2-footer-content{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(7.5rem,.8fr) minmax(8rem,.9fr);
    gap:1rem 1.35rem;
    align-items:start;
  }
  .cv2-footer-content>.cv2-footer-column, .cv2-footer-content>.cv2-footer-social{
    display:grid;
    align-content:start;
    gap:.5rem;
    min-width:0;
  }
  .cv2-footer-content>.cv2-footer-column:not(:has(h2)){
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.55rem 1rem;
  }
  .cv2-footer-content>.cv2-footer-column:has(h2), .cv2-footer-content>.cv2-footer-social{
    grid-template-columns:1fr;
  }
  .cv2-footer-content h2{
    margin:0 0 .12rem;
    line-height:1.25;
  }
  .cv2-footer-content>.cv2-footer-column:has(h2) a{
    margin:0;
  }
  .cv2-footer-social-links{
    display:grid;
    grid-template-columns:1fr;
    gap:.38rem;
  }
  .cv2-footer-qr{
    margin-top:.35rem;
  }
}

/* PROFILEPARITY001-P4B3 / AIH093 — shared canonical responsive geometry consolidated from identical profile rules. */
@media (max-width:900px){.cv2-story-products,.cv2-media-story{grid-template-columns:1fr}}
