/* =========================================================
   CELULANET — PREMIUM INTERNAL EXPERIENCE v12.3.0
   Checkout / Cart / Account / Terms / standard WP pages
   Keeps HOME + Portfolio untouched.
   ========================================================= */

:root{
  --cn-int-bg:#08090c;
  --cn-int-panel:#101116;
  --cn-int-panel-2:#14161c;
  --cn-int-line:rgba(255,255,255,.12);
  --cn-int-line-soft:rgba(255,255,255,.075);
  --cn-int-text:#F3F2F4;
  --cn-int-muted:#A9A7B1;
  --cn-int-blue:#28BDF5;
  --cn-int-cyan:#69D6FF;
  --cn-int-violet:#5B29D8;
}

html{scroll-padding-top:132px}
body.cn-internal-page{
  margin:0;
  padding-top:92px;
  min-height:100vh;
  background:
    radial-gradient(circle at 16% 4%,rgba(0,133,202,.085),transparent 29%),
    radial-gradient(circle at 86% 14%,rgba(54,7,166,.12),transparent 31%),
    linear-gradient(180deg,#08090c 0%,#090a0e 100%);
  color:var(--cn-int-text);
}
body.cn-internal-page.admin-bar{padding-top:124px}
body.cn-internal-page *{box-sizing:border-box}

/* ---------- Fixed navigation ---------- */
.cn-site-header{
  position:fixed;
  inset:0 0 auto;
  z-index:1000;
  height:92px;
  background:rgba(8,9,12,.93);
  -webkit-backdrop-filter:blur(20px);
  backdrop-filter:blur(20px);
  border:0;
  border-bottom:1px solid rgba(255,255,255,.085);
  box-shadow:0 12px 40px rgba(0,0,0,.12);
}
body.admin-bar .cn-site-header{top:32px}
.cn-site-header__inner{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:0 clamp(24px,3vw,52px);
}
.cn-site-logo{display:flex;align-items:center;flex:0 0 auto}
.cn-site-logo img{height:58px;width:auto;display:block}
.cn-site-nav{display:flex;align-items:center;gap:clamp(16px,1.75vw,28px)}
.cn-site-nav>a,.cn-clients-menu>a{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:42px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  font-weight:500;
  letter-spacing:.145em;
  text-transform:uppercase;
  color:#9F9CA8;
  transition:color .18s ease;
}
.cn-site-nav>a:hover,.cn-site-nav>a:focus-visible,.cn-clients-menu>a:hover,.cn-clients-menu>a:focus-visible{color:#fff}
.cn-site-cta{
  min-height:44px!important;
  padding:0 22px!important;
  background:linear-gradient(90deg,#4218C8,#058FCE)!important;
  color:#fff!important;
  border:1px solid rgba(109,208,255,.16);
}

/* ---------- CLIENTES dropdown: no hover gap ---------- */
.cn-clients-menu{position:relative;display:inline-flex;align-items:center;min-height:42px;padding-bottom:0}
.cn-clients-menu::after{
  content:"";
  position:absolute;
  left:-18px;
  right:-18px;
  top:100%;
  height:18px;
  pointer-events:auto;
}
.cn-clients-sub{
  position:absolute;
  top:calc(100% + 8px);
  right:-18px;
  left:auto;
  transform:translateY(4px);
  min-width:244px;
  padding:8px;
  background:rgba(12,13,17,.985);
  border:1px solid rgba(105,214,255,.17);
  box-shadow:0 22px 54px rgba(0,0,0,.48);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease,transform .16s ease,visibility 0s linear .22s;
}
.cn-clients-sub::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:100%;
  height:12px;
}
.cn-clients-menu:hover .cn-clients-sub,
.cn-clients-menu:focus-within .cn-clients-sub{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
  transition-delay:0s;
}
.cn-clients-sub a{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:10px 13px;
  border-bottom:1px solid rgba(255,255,255,.065);
  font-size:9px!important;
  line-height:1.35;
  letter-spacing:.115em!important;
  white-space:nowrap;
  color:#B9B7C0!important;
  transition:background .16s ease,color .16s ease,padding-left .16s ease;
}
.cn-clients-sub a:last-child{border-bottom:0}
.cn-clients-sub a:hover,.cn-clients-sub a:focus-visible{background:rgba(40,189,245,.08);color:#fff!important;padding-left:17px}

/* ---------- Internal page canvas ---------- */
.cn-internal-main{
  position:relative;
  min-height:calc(100vh - 92px);
  padding:clamp(62px,7.2vw,108px) clamp(22px,5vw,82px) clamp(90px,8vw,132px);
  overflow:hidden;
}
.cn-internal-main::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  background:linear-gradient(transparent,rgba(40,189,245,.12) 18%,rgba(91,41,216,.12) 70%,transparent);
  pointer-events:none;
}
.cn-content-shell{position:relative;z-index:1;width:min(1180px,100%);margin:0 auto}

/* Prevent headings from ever sitting under fixed header */
.cn-page-title,
.woocommerce-products-header__title,
.woocommerce .woocommerce-order h2,
.woocommerce .woocommerce-order-details__title,
.woocommerce .woocommerce-customer-details h2{
  scroll-margin-top:150px;
}
.cn-page-title,
.woocommerce-products-header__title{
  width:min(100%,1080px);
  margin:0 auto clamp(44px,5vw,70px)!important;
  padding:0!important;
  font-family:'Syne',sans-serif!important;
  font-size:clamp(42px,5vw,68px)!important;
  font-weight:700!important;
  line-height:.96!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase;
  text-align:center;
  color:#F5F4F5!important;
  overflow:visible!important;
  text-wrap:balance;
}
.cn-page-title::before{
  content:"CELULANET / DIGITAL EXPERIENCE";
  display:block;
  margin:0 0 16px;
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:.25em;
  color:var(--cn-int-cyan);
}

/* ---------- Standard / legal content ---------- */
.cn-entry{width:100%;color:#C9C7D0;font-size:16px;line-height:1.78}
.cn-entry>*{max-width:960px;margin-left:auto;margin-right:auto}
.cn-entry>p,.cn-entry>ul,.cn-entry>ol{color:#C5C2CC}
.cn-entry p{margin-top:0;margin-bottom:20px}
.cn-entry h2,.cn-entry h3,.cn-entry h4{
  max-width:960px;
  margin-top:clamp(38px,5vw,58px);
  margin-bottom:16px;
  font-family:'Syne',sans-serif;
  color:#F4F3F5;
  line-height:1.08;
  letter-spacing:-.025em;
  text-wrap:balance;
  overflow:visible;
}
.cn-entry h2{font-size:clamp(25px,2.5vw,34px)}
.cn-entry h3{font-size:clamp(21px,2vw,28px)}
.cn-entry h2::after,.cn-entry h3::after{content:"";display:block;width:44px;height:1px;margin-top:13px;background:linear-gradient(90deg,var(--cn-int-blue),transparent)}
.cn-entry a{color:#77D8FF;text-underline-offset:3px}

/* ---------- WooCommerce typography / structure ---------- */
.woocommerce,.wc-block-cart,.wc-block-checkout{color:var(--cn-int-text)}
.woocommerce h1,.woocommerce h2,.woocommerce h3,.woocommerce h4,
.wc-block-cart h2,.wc-block-checkout h2,.wc-block-checkout h3{
  font-family:'Syne',sans-serif;
  color:#F5F4F5!important;
  line-height:1.08!important;
  letter-spacing:-.025em;
  overflow:visible!important;
  text-wrap:balance;
}
.woocommerce h2{font-size:clamp(24px,2.2vw,32px)}
.woocommerce h3{font-size:clamp(19px,1.8vw,25px)}
.woocommerce p,.woocommerce li,.woocommerce label{color:#C9C7D0}

/* ---------- Fields: one consistent premium system ---------- */
.woocommerce form .form-row{margin:0 0 15px}
.woocommerce form .form-row label{
  display:block;
  margin:0 0 7px;
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  line-height:1.4;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#8E8B96!important;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce select,
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input{
  width:100%!important;
  min-height:52px!important;
  padding:0 15px!important;
  background:#111318!important;
  background-color:#111318!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#F3F2F4!important;
  font:500 14px/1.35 'Hanken Grotesk',system-ui,sans-serif!important;
  outline:none!important;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.woocommerce form .form-row textarea{padding-top:14px!important;min-height:112px!important}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{
  background:#151820!important;
  border-color:rgba(40,189,245,.72)!important;
  box-shadow:0 0 0 1px rgba(40,189,245,.10),0 0 28px rgba(40,189,245,.065)!important;
}
.woocommerce input::placeholder,.woocommerce textarea::placeholder{color:#73717A!important;opacity:1}

/* Native country/state selects. This wins over WooCommerce and browser defaults. */
body.cn-internal-page select.country_select,
body.cn-internal-page select.state_select,
body.cn-internal-page select#billing_country,
body.cn-internal-page select#billing_state,
body.cn-internal-page select#shipping_country,
body.cn-internal-page select#shipping_state,
body.cn-internal-page .woocommerce form .form-row select{
  -webkit-appearance:none!important;
  appearance:none!important;
  color-scheme:dark!important;
  padding-right:46px!important;
  background-color:#111318!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23D9DCE3' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 15px center!important;
  background-size:18px!important;
}
body.cn-internal-page select option{background:#111318!important;color:#F3F2F4!important}

/* SelectWoo / Select2 actual visual wrapper */
body.cn-internal-page .select2-container{width:100%!important;min-width:0!important}
body.cn-internal-page .select2-container--default .select2-selection--single{
  height:52px!important;
  min-height:52px!important;
  display:flex!important;
  align-items:center!important;
  background:#111318!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.cn-internal-page .select2-container--default .select2-selection--single .select2-selection__rendered{
  width:100%!important;
  padding:0 46px 0 15px!important;
  line-height:50px!important;
  color:#F3F2F4!important;
  background:transparent!important;
  font:500 14px/50px 'Hanken Grotesk',system-ui,sans-serif!important;
}
body.cn-internal-page .select2-container--default .select2-selection--single .select2-selection__placeholder{color:#73717A!important}
body.cn-internal-page .select2-container--default .select2-selection--single .select2-selection__arrow{top:0!important;right:10px!important;width:30px!important;height:52px!important}
body.cn-internal-page .select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#D9DCE3 transparent transparent transparent!important}
body.cn-internal-page .select2-container--default.select2-container--open .select2-selection--single,
body.cn-internal-page .select2-container--default.select2-container--focus .select2-selection--single{background:#151820!important;border-color:rgba(40,189,245,.72)!important;box-shadow:0 0 0 1px rgba(40,189,245,.10),0 0 28px rgba(40,189,245,.065)!important}
body.cn-internal-page .select2-dropdown{background:#0D0F14!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:0!important;box-shadow:0 22px 48px rgba(0,0,0,.5)!important;color:#F3F2F4!important}
body.cn-internal-page .select2-search--dropdown{padding:10px!important;background:#0D0F14!important}
body.cn-internal-page .select2-search--dropdown .select2-search__field{min-height:42px!important;padding:0 12px!important;background:#151820!important;border:1px solid rgba(255,255,255,.14)!important;color:#fff!important;outline:none!important}
body.cn-internal-page .select2-results,.cn-internal-page .select2-results__options{background:#0D0F14!important}
body.cn-internal-page .select2-results__option{padding:11px 14px!important;background:#0D0F14!important;color:#C9C7D0!important}
body.cn-internal-page .select2-results__option[aria-selected="true"]{background:#151820!important;color:#fff!important}
body.cn-internal-page .select2-results__option--highlighted[aria-selected]{background:rgba(40,189,245,.14)!important;color:#75DBFF!important}

/* Browser autofill */
body.cn-internal-page .woocommerce input:-webkit-autofill,
body.cn-internal-page .woocommerce input:-webkit-autofill:hover,
body.cn-internal-page .woocommerce input:-webkit-autofill:focus{
  -webkit-text-fill-color:#F3F2F4!important;
  -webkit-box-shadow:0 0 0 1000px #111318 inset!important;
  box-shadow:0 0 0 1000px #111318 inset!important;
  caret-color:#fff!important;
}

/* ---------- Checkout ---------- */
body.woocommerce-checkout .cn-content-shell{width:min(1180px,100%)}
body.woocommerce-checkout .cn-page-title{margin-bottom:54px!important}
.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);
  gap:clamp(34px,4.5vw,64px);
  align-items:start;
}
.woocommerce-checkout #customer_details{grid-column:1;min-width:0}
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review{grid-column:2;min-width:0}
.woocommerce-checkout #order_review_heading{margin:0 0 14px!important;font-size:23px!important}
.woocommerce-checkout #order_review{
  padding:0;
  background:rgba(16,17,22,.86);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 20px 58px rgba(0,0,0,.18);
}
.woocommerce-checkout #order_review table{margin:0!important;border:0!important;background:transparent!important}
.woocommerce-checkout #order_review th,.woocommerce-checkout #order_review td{padding:14px 16px!important}
.woocommerce-checkout #payment{background:transparent!important;border-top:1px solid rgba(255,255,255,.1)}
.woocommerce-checkout #payment ul.payment_methods{padding:18px!important;border:0!important}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
  position:relative;
  margin:0 0 10px!important;
  padding:15px 15px!important;
  background:#111318!important;
  border:1px solid rgba(255,255,255,.12)!important;
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover{background:#151820!important;border-color:rgba(40,189,245,.42)!important}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label{display:flex!important;align-items:center;min-height:28px;margin:0!important;padding-right:95px;font-family:'Hanken Grotesk',sans-serif!important;font-size:14px!important;letter-spacing:0!important;text-transform:none!important;color:#F2F0EF!important}
.woocommerce-checkout #payment ul.payment_methods li img{position:absolute;right:14px;top:14px;max-height:28px!important;max-width:86px!important;width:auto!important;object-fit:contain}
.woocommerce-checkout #payment div.payment_box{margin:14px -15px -15px!important;padding:14px 15px!important;background:#0D0F14!important;border-top:1px solid rgba(255,255,255,.08)!important;color:#BDBAC4!important;font-size:13px!important;line-height:1.55!important}
.woocommerce-checkout #payment div.payment_box::before{display:none!important}
.woocommerce-checkout #payment .place-order{padding:0 18px 18px!important;margin:0!important}

/* ---------- Cart classic ---------- */
.woocommerce-cart table.shop_table{
  width:100%;
  background:rgba(16,17,22,.82)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.woocommerce-cart table.shop_table th{padding:15px 16px!important;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#8F8C97!important}
.woocommerce-cart table.shop_table td{padding:18px 16px!important;vertical-align:middle;color:#E0DEE3!important}
.woocommerce-cart table.shop_table img{width:72px!important;background:#0E1014;border:1px solid rgba(255,255,255,.08);padding:6px}
.woocommerce-cart .cart-collaterals{margin-top:34px}
.woocommerce-cart .cart-collaterals .cart_totals{float:none!important;width:min(100%,460px)!important;margin-left:auto;padding:24px!important;background:rgba(16,17,22,.86)!important;border:1px solid rgba(255,255,255,.11)!important}
.woocommerce-cart .cart_totals h2{margin:0 0 18px!important}
.woocommerce-cart .quantity .qty{min-height:44px!important;width:76px!important;background:#111318!important;color:#fff!important;border:1px solid rgba(255,255,255,.13)!important}

/* ---------- WooCommerce Blocks cart / checkout ---------- */
.wc-block-cart,.wc-block-checkout{max-width:1180px;margin:0 auto}
.wc-block-components-sidebar,.wc-block-components-totals-wrapper,.wc-block-components-order-summary,.wc-block-components-checkout-step{
  background:rgba(16,17,22,.82)!important;
  border-color:rgba(255,255,255,.10)!important;
  color:#F2F0EF!important;
}
.wc-block-components-product-name,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,.wc-block-components-order-summary-item__description{color:#F2F0EF!important}
.wc-block-components-radio-control__option{background:#111318!important;color:#F2F0EF!important;border-color:rgba(255,255,255,.13)!important}
.wc-block-components-checkbox label,.wc-block-components-address-card__address-section,.wc-block-components-totals-item__description{color:#A9A7B1!important}
.wc-block-components-select .wc-block-components-select__select{background:#111318!important;color:#F3F2F4!important;border:1px solid rgba(255,255,255,.14)!important;color-scheme:dark!important}

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:clamp(32px,4vw,58px);
  align-items:start;
}
.woocommerce-account .woocommerce::before,.woocommerce-account .woocommerce::after{display:none!important}
.woocommerce-MyAccount-navigation{width:100%!important;float:none!important}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:8px!important;margin:0!important;display:grid;gap:4px;background:rgba(16,17,22,.78);border:1px solid rgba(255,255,255,.10)}
.woocommerce-MyAccount-navigation a{display:block;padding:13px 14px!important;border:1px solid transparent!important;color:#AAA7B2!important;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase;transition:.16s}
.woocommerce-MyAccount-navigation .is-active a,.woocommerce-MyAccount-navigation a:hover{border-color:rgba(40,189,245,.35)!important;color:#fff!important;background:rgba(40,189,245,.075)!important}
.woocommerce-MyAccount-content{width:100%!important;float:none!important;min-width:0;padding:28px!important;background:rgba(16,17,22,.72);border:1px solid rgba(255,255,255,.10)}
.woocommerce-MyAccount-content>h2:first-child,.woocommerce-MyAccount-content>h3:first-child{margin-top:0!important}
.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register{max-width:680px;margin:0 auto!important;padding:28px!important;background:rgba(16,17,22,.76)!important;border:1px solid rgba(255,255,255,.11)!important}

/* ---------- Order received / tables ---------- */
.woocommerce-order-received .woocommerce-order{max-width:1060px;margin:0 auto}
.woocommerce-order-overview{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:0!important;margin:0 0 28px!important;background:rgba(16,17,22,.78);border:1px solid rgba(255,255,255,.10)}
.woocommerce-order-overview li{margin:0!important;padding:14px 16px!important;border-right:1px solid rgba(255,255,255,.08)!important;color:#8F8C97!important;font-family:'JetBrains Mono',monospace;font-size:8px!important;letter-spacing:.08em;text-transform:uppercase}
.woocommerce-order-overview li:last-child{border-right:0!important}
.woocommerce-order-overview li strong{display:block;margin-top:7px;color:#fff!important;font-family:'Hanken Grotesk',sans-serif;font-size:15px!important;letter-spacing:0;text-transform:none}
.woocommerce table.shop_table,.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout-review-order,.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{background:rgba(16,17,22,.78);border:1px solid rgba(255,255,255,.10)!important;border-radius:0!important;color:#F2F0EF}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:rgba(255,255,255,.08)!important}

/* ---------- Messages ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{margin:0 0 24px!important;padding:16px 18px 16px 48px!important;background:#111318!important;color:#F2F0EF!important;border:1px solid rgba(40,189,245,.22)!important;border-top:1px solid rgba(40,189,245,.42)!important}

/* ---------- Buttons ---------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.wc-block-components-button:not(.is-link),.woocommerce #payment #place_order{
  min-height:52px!important;
  padding:0 24px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(90deg,#431AC8,#078ED5)!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-family:'JetBrains Mono',monospace!important;
  font-size:9px!important;
  font-weight:500!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.wc-block-components-button:not(.is-link):hover,.woocommerce #payment #place_order:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:0 14px 34px rgba(0,133,202,.16)!important}
.woocommerce a.remove{color:#FF5B8D!important}

/* ---------- Footer ---------- */
.cn-site-footer{position:relative;border-top:1px solid rgba(255,255,255,.08);padding:46px clamp(22px,5vw,82px);color:#9E9BA6;background:#08090c}
.cn-site-footer__inner{width:min(1180px,100%);margin:auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.cn-site-footer a{color:#A9A7B1}
.cn-site-mobile-actions{display:none;align-items:center;gap:12px}.cn-site-mobile-actions a{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#A9A7B1}.cn-site-mobile-actions a:last-child{border:1px solid rgba(255,255,255,.14);padding:10px 12px}

/* ---------- Tablet ---------- */
@media(max-width:980px){
  html{scroll-padding-top:108px}
  body.cn-internal-page{padding-top:82px}
  body.cn-internal-page.admin-bar{padding-top:128px}
  .cn-site-header{height:82px}
  body.admin-bar .cn-site-header{top:46px}
  .cn-site-header__inner{padding-inline:22px}
  .cn-site-logo img{height:50px}
  .cn-site-nav{display:none}
  .cn-site-mobile-actions{display:flex}
  .cn-internal-main{padding:50px 24px 86px}
  .cn-content-shell{width:100%}
  .cn-page-title,.woocommerce-products-header__title{font-size:clamp(38px,7vw,56px)!important;margin-bottom:42px!important}
  .woocommerce-checkout form.checkout{grid-template-columns:1fr;gap:28px}
  .woocommerce-checkout #customer_details,.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:1}
  .woocommerce-account .woocommerce{grid-template-columns:1fr;gap:24px}
  .woocommerce-MyAccount-navigation ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce-order-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce-order-overview li{border-bottom:1px solid rgba(255,255,255,.08)!important}
}

/* ---------- Mobile ---------- */
@media(max-width:600px){
  html{scroll-padding-top:94px}
  body.cn-internal-page{padding-top:76px}
  body.cn-internal-page.admin-bar{padding-top:122px}
  .cn-site-header{height:76px}
  .cn-site-header__inner{padding-inline:18px;gap:12px}
  .cn-site-logo img{height:46px;max-width:63vw;object-fit:contain}
  .cn-site-mobile-actions{gap:7px}.cn-site-mobile-actions a:first-child{display:none}
  .cn-internal-main{padding:38px 18px 72px}
  .cn-internal-main::before{opacity:.55}
  .cn-page-title,.woocommerce-products-header__title{
    font-size:clamp(31px,9.5vw,43px)!important;
    line-height:.98!important;
    text-align:left;
    margin-bottom:34px!important;
  }
  .cn-page-title::before{font-size:8px;letter-spacing:.2em;margin-bottom:12px}
  .cn-entry{font-size:15px;line-height:1.72}
  .cn-entry h2{font-size:24px}.cn-entry h3{font-size:21px}
  .cn-entry h2,.cn-entry h3{margin-top:34px;margin-bottom:14px}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{float:none!important;width:100%!important}
  .woocommerce-checkout #order_review{overflow:hidden}
  .woocommerce-checkout #payment ul.payment_methods{padding:12px!important}
  .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{padding:14px 12px!important}
  .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label{padding-right:80px;font-size:13px!important}
  .woocommerce-checkout #payment ul.payment_methods li img{right:10px;max-width:72px!important;max-height:24px!important}
  .woocommerce-cart table.shop_table_responsive tr{display:block;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
  .woocommerce-cart table.shop_table_responsive tr td{padding:9px 14px!important}
  .woocommerce-cart .cart-collaterals .cart_totals{width:100%!important;padding:18px!important}
  .woocommerce-MyAccount-navigation ul{grid-template-columns:1fr}
  .woocommerce-MyAccount-content{padding:20px!important}
  .woocommerce-order-overview{grid-template-columns:1fr}
  .woocommerce-order-overview li{border-right:0!important}
}

/* =========================================================
   CELULANET 12.3.2 — WooCommerce Checkout Blocks hardening
   Country/Region, State/Region and Order Note controls
   ========================================================= */

/* Force every address/control shell used by current WooCommerce Blocks dark. */
body.cn-internal-page .wc-block-checkout .wc-block-components-text-input,
body.cn-internal-page .wc-block-checkout .wc-block-components-combobox,
body.cn-internal-page .wc-block-checkout .wc-block-components-combobox-control,
body.cn-internal-page .wc-block-checkout [class*="country-input"],
body.cn-internal-page .wc-block-checkout [class*="state-input"],
body.cn-internal-page .wc-block-checkout [class*="address-form"] .wc-block-components-text-input,
body.cn-internal-page .wc-block-checkout [class*="address-form"] .wc-block-components-combobox {
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
}

/* Actual text/select/combobox controls. Covers old and current Blocks class names. */
body.cn-internal-page .wc-block-checkout .wc-block-components-text-input input,
body.cn-internal-page .wc-block-checkout .wc-block-components-text-input textarea,
body.cn-internal-page .wc-block-checkout .wc-block-components-select select,
body.cn-internal-page .wc-block-checkout select,
body.cn-internal-page .wc-block-checkout [class*="combobox"] input,
body.cn-internal-page .wc-block-checkout input[class*="combobox"],
body.cn-internal-page .wc-block-checkout [role="combobox"],
body.cn-internal-page .wc-block-checkout .components-combobox-control__input,
body.cn-internal-page .wc-block-checkout .wc-block-components-combobox-control__input {
  box-sizing:border-box!important;
  width:100%!important;
  min-height:52px!important;
  height:52px!important;
  padding:17px 44px 7px 14px!important;
  background:#111318!important;
  background-color:#111318!important;
  background-image:none!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#F3F2F4!important;
  -webkit-text-fill-color:#F3F2F4!important;
  caret-color:#F3F2F4!important;
  color-scheme:dark!important;
  font:500 14px/1.2 'Hanken Grotesk',system-ui,sans-serif!important;
  outline:none!important;
}

/* Floating labels inside country/state fields. */
body.cn-internal-page .wc-block-checkout .wc-block-components-text-input label,
body.cn-internal-page .wc-block-checkout [class*="combobox"] label,
body.cn-internal-page .wc-block-checkout [class*="country-input"] label,
body.cn-internal-page .wc-block-checkout [class*="state-input"] label {
  color:#77747F!important;
  background:transparent!important;
  font-family:'Hanken Grotesk',system-ui,sans-serif!important;
  font-size:11px!important;
  line-height:1!important;
}

/* Focus/open state — same CELULANET treatment as normal inputs. */
body.cn-internal-page .wc-block-checkout .wc-block-components-text-input input:focus,
body.cn-internal-page .wc-block-checkout .wc-block-components-select select:focus,
body.cn-internal-page .wc-block-checkout [class*="combobox"] input:focus,
body.cn-internal-page .wc-block-checkout [role="combobox"]:focus,
body.cn-internal-page .wc-block-checkout [aria-expanded="true"][role="combobox"] {
  background:#151820!important;
  background-color:#151820!important;
  border-color:rgba(40,189,245,.72)!important;
  box-shadow:0 0 0 1px rgba(40,189,245,.10),0 0 28px rgba(40,189,245,.065)!important;
}

/* Woo Blocks dropdown/listbox. */
body.cn-internal-page .wc-block-checkout [role="listbox"],
body.cn-internal-page .wc-block-checkout .components-form-token-field__suggestions-list,
body.cn-internal-page .wc-block-checkout [class*="combobox"] [class*="suggestions"],
body.cn-internal-page .wc-block-checkout [class*="combobox"] [class*="dropdown"] {
  background:#0D0F14!important;
  background-color:#0D0F14!important;
  border:1px solid rgba(255,255,255,.15)!important;
  border-radius:0!important;
  box-shadow:0 22px 48px rgba(0,0,0,.5)!important;
  color:#F3F2F4!important;
}
body.cn-internal-page .wc-block-checkout [role="option"] {
  background:#0D0F14!important;
  color:#C9C7D0!important;
}
body.cn-internal-page .wc-block-checkout [role="option"]:hover,
body.cn-internal-page .wc-block-checkout [role="option"][aria-selected="true"] {
  background:#15212A!important;
  color:#75DBFF!important;
}

/* Explicitly neutralize any white pseudo layers added by Blocks around comboboxes. */
body.cn-internal-page .wc-block-checkout [class*="combobox"]::before,
body.cn-internal-page .wc-block-checkout [class*="combobox"]::after,
body.cn-internal-page .wc-block-checkout [class*="country-input"]::before,
body.cn-internal-page .wc-block-checkout [class*="country-input"]::after,
body.cn-internal-page .wc-block-checkout [class*="state-input"]::before,
body.cn-internal-page .wc-block-checkout [class*="state-input"]::after {
  background:transparent!important;
  box-shadow:none!important;
}

/* Order note toggle / checkbox: remove browser white square. */
body.cn-internal-page .wc-block-checkout input[type="checkbox"],
body.cn-internal-page .woocommerce-checkout input[type="checkbox"] {
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  margin:0 9px 0 0!important;
  padding:0!important;
  display:inline-grid!important;
  place-content:center!important;
  vertical-align:middle!important;
  background:#111318!important;
  background-color:#111318!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:2px!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
body.cn-internal-page .wc-block-checkout input[type="checkbox"]::before,
body.cn-internal-page .woocommerce-checkout input[type="checkbox"]::before {
  content:"";
  width:8px;
  height:5px;
  border-left:2px solid #061015;
  border-bottom:2px solid #061015;
  transform:rotate(-45deg) scale(0);
  transform-origin:center;
  transition:transform .12s ease;
}
body.cn-internal-page .wc-block-checkout input[type="checkbox"]:checked,
body.cn-internal-page .woocommerce-checkout input[type="checkbox"]:checked {
  background:#49CFFF!important;
  background-color:#49CFFF!important;
  border-color:#49CFFF!important;
}
body.cn-internal-page .wc-block-checkout input[type="checkbox"]:checked::before,
body.cn-internal-page .woocommerce-checkout input[type="checkbox"]:checked::before {
  transform:rotate(-45deg) scale(1);
}
body.cn-internal-page .wc-block-checkout input[type="checkbox"]:focus-visible,
body.cn-internal-page .woocommerce-checkout input[type="checkbox"]:focus-visible {
  outline:2px solid rgba(73,207,255,.40)!important;
  outline-offset:2px!important;
}

/* Order notes area when expanded. */
body.cn-internal-page .wc-block-checkout textarea,
body.cn-internal-page .wc-block-checkout [class*="order-notes"] textarea,
body.cn-internal-page .wc-block-checkout [class*="order-note"] textarea {
  min-height:110px!important;
  height:auto!important;
  padding:14px!important;
  resize:vertical!important;
  background:#111318!important;
  background-color:#111318!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  color:#F3F2F4!important;
  -webkit-text-fill-color:#F3F2F4!important;
  box-shadow:none!important;
}

/* Hide browser's light native select paint if a real select leaks through. */
body.cn-internal-page .wc-block-checkout select {
  -webkit-appearance:none!important;
  appearance:none!important;
  padding-right:42px!important;
  background-color:#111318!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23D9DCE3' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 14px center!important;
  background-size:18px!important;
}
body.cn-internal-page .wc-block-checkout select option {background:#111318!important;color:#F3F2F4!important}

@media (max-width:767px){
  body.cn-internal-page .wc-block-checkout .wc-block-components-text-input input,
  body.cn-internal-page .wc-block-checkout .wc-block-components-select select,
  body.cn-internal-page .wc-block-checkout [class*="combobox"] input,
  body.cn-internal-page .wc-block-checkout [role="combobox"]{min-height:50px!important;height:50px!important}
}

/* =========================================================
   CELULANET 12.3.3 — MY ACCOUNT PREMIUM LOGIN LAYOUT
   Separate logged-out authentication from logged-in dashboard.
   ========================================================= */

/* Logged-out account page: centered authentication experience */
body.woocommerce-account:not(.logged-in) .cn-content-shell{
  width:min(100%,1180px);
}
body.woocommerce-account:not(.logged-in) .woocommerce{
  display:block!important;
  width:100%!important;
  max-width:760px!important;
  margin:0 auto!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce::before,
body.woocommerce-account:not(.logged-in) .woocommerce::after{
  display:none!important;
}

/* Heading above authentication card */
body.woocommerce-account:not(.logged-in) .woocommerce > h2{
  margin:0 0 26px!important;
  padding:0!important;
  text-align:center!important;
  font-family:'Hanken Grotesk',sans-serif!important;
  font-size:clamp(28px,2.4vw,38px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  color:#F5F4F6!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce > h2::after{
  content:"";
  display:block;
  width:42px;
  height:1px;
  margin:16px auto 0;
  background:linear-gradient(90deg,#29bdf4,rgba(41,189,244,0));
}

/* Login / register card */
body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:560px!important;
  margin:0 auto!important;
  padding:clamp(30px,4vw,46px)!important;
  background:linear-gradient(145deg,rgba(17,19,24,.94),rgba(12,13,18,.91))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.30)!important;
  position:relative;
  overflow:hidden;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login::before,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:1px;
  background:linear-gradient(to bottom,transparent,#29bdf4 34%,rgba(93,63,255,.75) 70%,transparent);
  opacity:.8;
  pointer-events:none;
}

/* Form controls */
body.woocommerce-account:not(.logged-in) .woocommerce-form-login .form-row,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register .form-row{
  float:none!important;
  width:100%!important;
  margin:0 0 20px!important;
  padding:0!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login label,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register label{
  display:block!important;
  margin:0 0 9px!important;
  font-family:'JetBrains Mono',monospace!important;
  font-size:9px!important;
  line-height:1.35!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  color:#9C99A5!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input.input-text,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register input.input-text,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="text"],
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="password"],
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="email"]{
  width:100%!important;
  min-height:58px!important;
  padding:0 16px!important;
  background:#0F1116!important;
  color:#F4F3F5!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  font-size:15px!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input.input-text:focus,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register input.input-text:focus,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="text"]:focus,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="password"]:focus,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="email"]:focus{
  background:#11141A!important;
  border-color:rgba(41,189,244,.72)!important;
  box-shadow:0 0 0 1px rgba(41,189,244,.10),0 0 30px rgba(41,189,244,.07)!important;
}

/* Remember row and CTA */
body.woocommerce-account:not(.logged-in) .woocommerce-form-login .woocommerce-form-login__rememberme{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px;
  margin:2px 0 18px!important;
  color:#AAA7B2!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login .woocommerce-form-login__rememberme input{
  width:16px!important;
  height:16px!important;
  margin:0!important;
  accent-color:#29bdf4;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login .woocommerce-form-login__submit,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register .woocommerce-form-register__submit{
  min-width:170px!important;
  min-height:54px!important;
  margin-top:2px!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword{
  margin:20px 0 0!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a{
  color:#4BCCFA!important;
  font-size:14px!important;
}

/* Logged-in dashboard remains two-column, but with better proportion */
body.woocommerce-account.logged-in .woocommerce{
  grid-template-columns:minmax(220px,260px) minmax(0,1fr)!important;
  max-width:1180px;
  margin:0 auto;
}

@media(max-width:980px){
  body.woocommerce-account:not(.logged-in) .woocommerce{
    max-width:680px!important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-register{
    max-width:560px!important;
  }
}

@media(max-width:600px){
  body.woocommerce-account:not(.logged-in) .woocommerce{
    max-width:100%!important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce > h2{
    text-align:left!important;
    font-size:30px!important;
    margin-bottom:22px!important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce > h2::after{
    margin-left:0;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-register{
    max-width:none!important;
    padding:24px 20px!important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login input.input-text,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-register input.input-text,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="text"],
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="password"],
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="email"]{
    min-height:54px!important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login .woocommerce-form-login__submit,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-register .woocommerce-form-register__submit{
    width:100%!important;
  }
}


/* =========================================================
   CELULANET 12.3.4 — MOBILE INTERNAL PAGE SAFE AREA
   Prevent fixed header / WebView chrome from clipping titles.
   ========================================================= */
@media (max-width: 600px){
  body.cn-internal-page{
    padding-top:76px!important;
  }
  body.cn-internal-page .cn-internal-main{
    padding-top:60px!important;
    padding-left:18px!important;
    padding-right:18px!important;
    overflow:visible!important;
  }
  body.cn-internal-page .cn-content-shell{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  body.cn-internal-page .cn-page-title,
  body.cn-internal-page .woocommerce-products-header__title{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 42px!important;
    padding:6px 0 0!important;
    font-size:clamp(30px,9vw,40px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    text-align:left!important;
    overflow:visible!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  body.cn-internal-page .cn-page-title::before{
    margin-bottom:14px!important;
    font-size:7.5px!important;
    line-height:1.35!important;
    letter-spacing:.17em!important;
  }
  /* Long legal heading gets a slightly smaller mobile scale. */
  body.page-id-14 .cn-page-title,
  body[class*="terminos"] .cn-page-title{
    font-size:clamp(28px,8.4vw,36px)!important;
    line-height:1.08!important;
  }
  body.cn-internal-page .cn-entry{
    width:100%!important;
    max-width:100%!important;
    font-size:15px!important;
    line-height:1.72!important;
  }
  body.cn-internal-page .cn-entry > *{
    width:100%!important;
    max-width:100%!important;
  }
  body.cn-internal-page .cn-entry p,
  body.cn-internal-page .cn-entry li{
    font-size:15px!important;
    line-height:1.72!important;
    overflow-wrap:anywhere;
  }
  body.cn-internal-page .cn-entry h2{
    font-size:23px!important;
    line-height:1.12!important;
    margin-top:36px!important;
  }
  body.cn-internal-page .cn-entry h3{
    font-size:20px!important;
    line-height:1.15!important;
  }
  /* Logged-out My Account: keep heading/form fully below page title. */
  body.woocommerce-account:not(.logged-in) .woocommerce{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce > h2{
    margin:0 0 26px!important;
    padding-top:0!important;
    font-size:28px!important;
    line-height:1.12!important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-register{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:22px 18px!important;
  }
  .cn-site-footer{
    padding:34px 18px!important;
  }
  .cn-site-footer__inner{
    font-size:13px!important;
    line-height:1.5!important;
  }
}

@media (max-width: 390px){
  body.cn-internal-page .cn-internal-main{padding-top:54px!important;}
  body.cn-internal-page .cn-page-title{font-size:29px!important;}
  body.page-id-14 .cn-page-title,
  body[class*="terminos"] .cn-page-title{font-size:27px!important;}
}
