.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --navy:#14213D; --navy-deep:#0B1529; --gold:#C8A04A; --gold-dark:#8C6D22; --ink:#1B2333; --muted:#5B6474; --paper:#fbfaf7; --sand:#F1EBE0; --line:#E3DBCD; --white:#FFFFFF; --font-heading:Open Sans; --font-body:Inter; --fs-display:clamp(2.5rem, 5.2vw, 4.5rem); --fs-h2:clamp(2rem, 3.6vw, 3rem); --fs-h3:1.375rem; --fs-body:1.0625rem; --fs-small:0.875rem; --space-section:clamp(4rem, 9vw, 7.5rem); --container:1180px; --radius:14px; }
/* Start custom CSS *//* Apostille Direkt – källa: elementor-kit-custom.css i projektmappen */

/* Apostille Direkt – listor och länkar i V4-textblock (måste ligga före footer-reglerna) */
.e-paragraph-base ul, .e-paragraph-base ol { margin: 0.4em 0 0; padding-left: 1.25em; }
.e-paragraph-base li { margin-bottom: 0.35em; }
.e-paragraph-base li::marker { color: var(--gold-dark); }
.e-paragraph-base a { color: var(--gold-dark); text-decoration: underline; text-underline-offset: 3px; }

/* Apostille Direkt – FAQ-dragspel (klass ad-faq-head): plus som vrids till kryss när frågan är öppen */
.ad-faq-head { list-style: none; }
.ad-faq-head::-webkit-details-marker { display: none; }
.ad-faq-head::after { content: "+"; flex: 0 0 auto; font-family: var(--font-heading); font-size: 1.75rem; font-weight: 300; line-height: 1; color: var(--gold-dark); transition: transform .2s ease; }
details[open] > .ad-faq-head::after { transform: rotate(45deg); }

/* Apostille Direkt – kryssrutor i V4-formulär: marinblå med vit ram när ikryssad */
form.e-form-base input[type="checkbox"]:checked { background-color: var(--navy) !important; box-shadow: inset 0 0 0 3px #fff; }

/* Apostille Direkt – globala länkstilar */
body { background-color: #FAF7F2; }
.elementor-location-footer a { color: inherit; text-decoration: none; transition: color .15s ease; }
.elementor-location-footer a:hover { color: #C8A04A; }
.elementor-location-header a { text-decoration: none; }

/* Apostille Direkt – köpformulär på produktsidan (widget: Lägg i varukorg + filuppladdning) */
.elementor-widget-woocommerce-product-add-to-cart { width: 100%; }
.elementor-widget-woocommerce-product-add-to-cart .quantity { display: none !important; }
.elementor-widget-woocommerce-product-add-to-cart form.cart { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.elementor-widget-woocommerce-product-add-to-cart .main_upload { padding: 20px !important; border: 1.5px dashed var(--line); border-radius: 12px; background-color: var(--paper); }
.elementor-widget-woocommerce-product-add-to-cart .main_upload::before { content: "Ladda upp ditt dokument"; display: block; font-family: var(--font-heading); font-size: 1.125rem; font-weight: 500; color: var(--navy); margin-bottom: 12px; }
/* Dölj bara tilläggets infolista (obligatoriskt/filtyper/storlek/pris) – hjälptexten säger samma sak */
.elementor-widget-woocommerce-product-add-to-cart .Outer_upload > ul { display: none; }
.elementor-widget-woocommerce-product-add-to-cart .file-drop-area { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.elementor-widget-woocommerce-product-add-to-cart .file-drop-area output:empty, .elementor-widget-woocommerce-product-add-to-cart .fileuploaderrormsg:empty { display: none; }
.elementor-widget-woocommerce-product-add-to-cart .btn_upload { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-body); font-size: 0.9rem; font-weight: 600; padding: 11px 20px !important; border: 0; border-radius: 999px; cursor: pointer; }
.elementor-widget-woocommerce-product-add-to-cart .file-drop-area > label { font-family: var(--font-body); font-size: 0.85rem; line-height: 1.5; color: var(--muted); }
.elementor-widget-woocommerce-product-add-to-cart .fileuploaderrormsg:not(:empty) { font-family: var(--font-body); font-size: 0.85rem; color: #A12C2C; }
/* Bekräftelse när en fil är vald */
.elementor-widget-woocommerce-product-add-to-cart .file-drop-area output { width: 100%; }
.elementor-widget-woocommerce-product-add-to-cart .fmelisteditem { list-style: none; margin: 0; padding: 12px 14px; background-color: #fff; border: 1px solid var(--line); border-left: 3px solid var(--gold); border-radius: 10px; }
.elementor-widget-woocommerce-product-add-to-cart .fmelisteditem li { font-family: var(--font-body); font-size: 0.875rem; line-height: 1.5; color: var(--ink); margin: 0; word-break: break-all; }
.elementor-widget-woocommerce-product-add-to-cart .fmelisteditem li:first-child::before { content: "✓ Vald fil: "; color: var(--gold-dark); font-weight: 700; }
.elementor-widget-woocommerce-product-add-to-cart .fmelisteditem li:not(:first-child) { display: none !important; }
.elementor-widget-woocommerce-product-add-to-cart .fme_delete_img .dashicons { color: #A12C2C !important; }
.elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button { width: 100%; margin: 0 !important; font-family: var(--font-body) !important; font-size: 1rem !important; font-weight: 600 !important; line-height: 1 !important; padding: 18px 28px !important; border: 0 !important; border-radius: 999px !important; background-color: var(--gold) !important; color: var(--navy-deep) !important; transition: background-color .15s ease, transform .15s ease; }
.elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button:hover { background-color: #D9B562 !important; transform: translateY(-1px); }

/* Apostille Direkt – WooCommerce-meddelanden (klassiska) */
.woocommerce-notices-wrapper:not(:empty) { max-width: 1180px; margin: 24px auto 0; padding: 0 clamp(20px, 4vw, 40px); }
.woocommerce-message, .woocommerce-info, .woocommerce-error { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin: 0 0 12px !important; padding: 16px 20px 16px 52px !important; font-family: var(--font-body); font-size: 0.95rem; line-height: 1.5; color: var(--ink); background-color: #fff !important; border: 1px solid var(--line) !important; border-left: 4px solid var(--gold) !important; border-radius: 12px; }
.woocommerce-error { border-left-color: #A12C2C !important; list-style: none; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--gold-dark) !important; top: 50% !important; transform: translateY(-50%); left: 20px !important; }
.woocommerce-error::before { color: #A12C2C !important; top: 50% !important; transform: translateY(-50%); left: 20px !important; }
.woocommerce-message .button, .woocommerce-info .button { order: 2; margin-left: auto !important; float: none !important; font-family: var(--font-body); font-size: 0.85rem; font-weight: 600; padding: 10px 18px !important; border-radius: 999px !important; border: 1.5px solid var(--navy) !important; background: transparent !important; color: var(--navy) !important; }
.woocommerce-message .button:hover, .woocommerce-info .button:hover { background: var(--navy) !important; color: #fff !important; }

/* Apostille Direkt – meddelanden i varukorg/kassa (block) */
.wc-block-components-notice-banner { font-family: var(--font-body); font-size: 0.95rem; color: var(--ink); background-color: #fff !important; border: 1px solid var(--line) !important; border-left: 4px solid var(--gold) !important; border-radius: 12px !important; }
.wc-block-components-notice-banner.is-error { border-left-color: #A12C2C !important; }
.wc-block-components-notice-banner > svg { fill: var(--gold-dark) !important; background-color: transparent !important; }
.wc-block-components-notice-banner.is-error > svg { fill: #A12C2C !important; }

/* Apostille Direkt – varukorg och kassa (WooCommerce-block) */
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { margin-left: 0 !important; margin-right: 0 !important; max-width: 100% !important; font-family: var(--font-body); color: var(--ink); }
.wp-block-woocommerce-cart .wc-block-components-sidebar, .wp-block-woocommerce-checkout .wc-block-components-sidebar { padding: 28px !important; background-color: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 24px 50px -30px rgba(20,33,61,0.25); }
.wp-block-woocommerce-checkout-order-summary-block { border: 0 !important; }
.wc-block-components-order-summary-item__description .wc-block-components-product-metadata__description { display: none; }
.wc-block-cart__totals-title, .wc-block-cart-items__header, .wc-block-components-checkout-order-summary__title-text { font-family: var(--font-body) !important; font-size: 0.75rem !important; font-weight: 700 !important; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-dark) !important; }
.wc-block-cart-items__row { border-color: var(--line) !important; }
.wc-block-cart-items { border-color: var(--line) !important; }
.wc-block-cart-item__image img, .wc-block-components-order-summary-item__image img { border-radius: 10px; border: 1px solid var(--line); }
.wc-block-components-product-name { font-family: var(--font-heading) !important; font-size: 1.25rem !important; font-weight: 500 !important; line-height: 1.25 !important; color: var(--navy) !important; text-decoration: none !important; }
.wc-block-components-product-name:hover { color: var(--gold-dark) !important; }
.wc-block-cart .wc-block-components-product-metadata__description { display: none; }
.wc-block-components-product-details { font-size: 0.8rem !important; color: var(--muted); }
.wc-block-components-product-details a { color: var(--gold-dark); }
.wc-block-components-product-price, .wc-block-cart-item__total, .wc-block-components-totals-item { font-family: var(--font-body); color: var(--ink); }
.wc-block-cart-item__remove-link { color: var(--muted) !important; }
.wc-block-cart-item__remove-link:hover { color: #A12C2C !important; }
.wc-block-components-totals-wrapper { border-color: var(--line) !important; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-family: var(--font-heading) !important; font-size: 1.125rem !important; font-weight: 500 !important; color: var(--navy) !important; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-family: var(--font-heading) !important; font-size: 1.5rem !important; font-weight: 500 !important; color: var(--navy) !important; white-space: nowrap; }
.wc-block-components-totals-footer-item-tax { font-size: 0.8rem; color: var(--muted); }
.wc-block-components-panel__button, .wc-block-components-totals-coupon-link { font-family: var(--font-body); color: var(--navy) !important; }
.wc-block-components-button:not(.is-link), .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button { font-family: var(--font-body) !important; font-size: 1rem !important; font-weight: 600 !important; min-height: 56px; border: 0 !important; border-radius: 999px !important; background-color: var(--gold) !important; color: var(--navy-deep) !important; transition: background-color .15s ease, transform .15s ease; }
.wc-block-components-button:not(.is-link):hover, .wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover { background-color: #D9B562 !important; transform: translateY(-1px); }
.wc-block-components-checkout-return-to-cart-button { color: var(--navy) !important; font-family: var(--font-body); }
.wc-block-components-checkout-step__title, .wc-block-components-title { font-family: var(--font-heading) !important; font-size: 1.5rem !important; font-weight: 500 !important; color: var(--navy) !important; }
.wc-block-components-checkout-step__description { color: var(--muted); }
.wc-block-components-text-input input, .wc-block-components-text-input textarea, .wc-blocks-components-select__select, .wc-block-components-textarea, .wc-block-components-combobox .wc-block-components-combobox-control input { font-family: var(--font-body) !important; background-color: #fff !important; border: 1px solid var(--line) !important; border-radius: 10px !important; color: var(--ink) !important; }
.wc-block-components-text-input input:focus, .wc-blocks-components-select__select:focus, .wc-block-components-textarea:focus, .wc-block-components-combobox .wc-block-components-combobox-control input:focus { border-color: var(--navy) !important; box-shadow: 0 0 0 3px rgba(200,160,74,0.25) !important; outline: none !important; }
.wc-block-components-text-input label, .wc-blocks-components-select__label { font-family: var(--font-body); color: var(--muted) !important; }
.wc-block-components-radio-control__option, .wc-block-components-checkbox__label, .wc-block-checkout__terms { font-family: var(--font-body); color: var(--ink); }
.wc-block-components-radio-control__input:checked { border-color: var(--navy) !important; }
.wc-block-components-radio-control__input:checked::before { background: var(--navy) !important; }
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background-color: var(--navy) !important; border-color: var(--navy) !important; }
.wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: #fff !important; }
.wc-block-components-radio-control-accordion-option, .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted { border-radius: 12px; }
.wc-block-checkout__terms a, .wc-block-components-checkout-step a { color: var(--gold-dark); }
/* Apostille Direkt – Mitt konto (WooCommerce klassisk kontosida) */
.woocommerce-account .woocommerce { font-family: var(--font-body); color: var(--ink); }
.woocommerce-account.logged-in .woocommerce { display: grid; grid-template-columns: 250px 1fr; gap: clamp(28px, 5vw, 64px); align-items: start; }
.woocommerce-account.logged-in .woocommerce::before, .woocommerce-account.logged-in .woocommerce::after { display: none; }
@media (max-width: 767px) { .woocommerce-account.logged-in .woocommerce { grid-template-columns: 1fr; } }
.woocommerce-account .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; max-width: none; margin: 0; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { float: none !important; width: auto !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 8px; background-color: #fff; border: 1px solid var(--line); border-radius: var(--radius); }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 12px 16px; border-radius: 10px; font-weight: 500; color: var(--ink); text-decoration: none; transition: background-color .15s ease; }
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background-color: var(--paper); color: var(--navy); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background-color: var(--sand); color: var(--navy); font-weight: 600; }
.woocommerce-account .woocommerce-MyAccount-content { font-size: 1rem; line-height: 1.7; }
.woocommerce-account .woocommerce a:not(.button) { color: var(--gold-dark); }
.woocommerce-account .woocommerce h2, .woocommerce-account .woocommerce h3 { font-family: var(--font-heading); font-weight: 500; color: var(--navy); }
.woocommerce-account table.shop_table { border: 1px solid var(--line) !important; border-radius: var(--radius); border-collapse: separate; overflow: hidden; background-color: #fff; }
.woocommerce-account table.shop_table th { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-dark); }
.woocommerce-account table.shop_table th, .woocommerce-account table.shop_table td { padding: 14px 16px !important; border-color: var(--line) !important; }
.woocommerce-account form .form-row label { font-size: 0.875rem; font-weight: 600; color: var(--navy); }
.woocommerce-account form .form-row input.input-text, .woocommerce-account form .form-row select, .woocommerce-account form .form-row textarea { width: 100%; padding: 12px 14px; font-family: var(--font-body); font-size: 1rem; color: var(--ink); background-color: #fff; border: 1px solid var(--line); border-radius: 10px; }
.woocommerce-account form .form-row input.input-text:focus, .woocommerce-account form .form-row select:focus, .woocommerce-account form .form-row textarea:focus { border-color: var(--navy); box-shadow: 0 0 0 3px rgba(200,160,74,0.25); outline: none; }
.woocommerce-account .woocommerce .button { font-family: var(--font-body) !important; font-weight: 600 !important; padding: 14px 26px !important; border: 0 !important; border-radius: 999px !important; background-color: var(--gold) !important; color: var(--navy-deep) !important; }
.woocommerce-account .woocommerce .button:hover { background-color: #D9B562 !important; }
.woocommerce-account:not(.logged-in) .woocommerce > h2 { margin: 0 0 16px; font-size: 1.75rem; }
.woocommerce-account:not(.logged-in) .woocommerce form.login, .woocommerce-account .woocommerce form.lost_reset_password { max-width: 460px; margin: 0; padding: 32px !important; background-color: #fff; border: 1px solid var(--line) !important; border-radius: var(--radius) !important; }

/* Apostille Direkt – kassa: ruta för betalningsalternativ */
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option { background-color: #fff; border-radius: var(--radius) !important; box-shadow: 0 0 0 1px var(--line) !important; border: 0 !important; }
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option:only-child .wc-block-components-radio-control__input { display: none !important; }
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option:only-child .wc-block-components-radio-control__option { padding-left: 20px !important; }
.wc-block-checkout__payment-method .wc-block-components-radio-control__label { font-family: var(--font-body); font-size: 0.75rem !important; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-dark); }
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-content { padding-left: 20px !important; padding-right: 20px !important; }

/* Apostille Direkt – bekräftelsesida efter köp (klassisk "order mottagen") */
.woocommerce-order-received .woocommerce-order { font-family: var(--font-body); color: var(--ink); }
.woocommerce-order-received .woocommerce-thankyou-order-received { position: relative; margin: 0 0 20px; padding: 26px 28px 26px 84px; font-family: var(--font-heading); font-size: 1.5rem; font-weight: 500; line-height: 1.3; color: var(--navy); background-color: #fff; border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: var(--radius); }
.woocommerce-order-received .woocommerce-thankyou-order-received::before { content: "✓"; position: absolute; left: 26px; top: 26px; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background-color: var(--navy); color: var(--gold); font-family: var(--font-body); font-size: 1.1rem; font-weight: 700; }
.woocommerce-order-received .woocommerce-thankyou-order-received::after { content: "Vi granskar nu din handling, normalt inom en arbetsdag. Behövs originalhandlingen, din underskrift eller legitimering hör vi av oss med instruktioner. En bekräftelse har skickats till din e-post."; display: block; margin-top: 8px; font-family: var(--font-body); font-size: 0.975rem; font-weight: 400; line-height: 1.6; color: var(--muted); }
.woocommerce-order-received ul.woocommerce-order-overview { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin: 0 0 44px !important; padding: 0 !important; list-style: none; }
.woocommerce-order-received ul.woocommerce-order-overview::before, .woocommerce-order-received ul.woocommerce-order-overview::after { display: none !important; }
.woocommerce-order-received ul.woocommerce-order-overview li { float: none !important; margin: 0 !important; padding: 16px 18px !important; border: 1px solid var(--line) !important; border-radius: 12px; background-color: #fff; font-size: 0.7rem !important; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-dark); }
.woocommerce-order-received ul.woocommerce-order-overview li strong { display: block; margin-top: 6px; font-family: var(--font-heading); font-size: 1.125rem !important; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--navy); word-break: break-word; }
.woocommerce-order-received .woocommerce-order-details__title, .woocommerce-order-received .woocommerce-column__title { margin: 0 0 16px; font-family: var(--font-heading); font-size: 1.5rem; font-weight: 500; color: var(--navy); }
.woocommerce-order-received table.woocommerce-table--order-details { margin-bottom: 44px; border: 1px solid var(--line) !important; border-radius: var(--radius); border-collapse: separate; overflow: hidden; background-color: #fff; }
.woocommerce-order-received table.woocommerce-table--order-details th, .woocommerce-order-received table.woocommerce-table--order-details td { padding: 14px 18px !important; border-color: var(--line) !important; background-color: #fff !important; }
.woocommerce-order-received table.woocommerce-table--order-details thead th { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-dark); }
.woocommerce-order-received table.woocommerce-table--order-details tfoot tr:nth-last-child(2) th, .woocommerce-order-received table.woocommerce-table--order-details tfoot tr:nth-last-child(2) td { color: var(--navy); font-weight: 700; }
.woocommerce-order-received .woocommerce-table__product-name > a { font-family: var(--font-heading); font-size: 1.125rem; font-weight: 500; color: var(--navy); text-decoration: none; }
.woocommerce-order-received .wc-item-meta { margin: 8px 0 0; padding: 0; list-style: none; font-size: 0.85rem; color: var(--muted); }
.woocommerce-order-received .wc-item-meta li:nth-child(2) { display: none; }
.woocommerce-order-received .wc-item-meta a { color: var(--gold-dark) !important; }
.woocommerce-order-received .wc-item-meta button { padding: 0 !important; margin-left: 12px !important; font: inherit; color: var(--gold-dark) !important; background: transparent !important; text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-order-received .woocommerce-customer-details address { padding: 20px 22px; font-style: normal; line-height: 1.7; background-color: #fff; border: 1px solid var(--line) !important; border-radius: var(--radius); }

/* Tom varukorg: dölj produktlistan – dess köpknappar går inte att använda utan filuppladdning */
.wp-block-woocommerce-empty-cart-block .wp-block-separator, .wp-block-woocommerce-empty-cart-block .wp-block-separator ~ * { display: none !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { font-family: var(--font-heading); font-weight: 500; color: var(--navy); }/* End custom CSS */