@font-face{font-family:TonnMontserrat;src:url('../fonts/Montserrat-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:TonnMontserrat;src:url('../fonts/Montserrat-Black.ttf') format('truetype');font-weight:900;font-display:swap}
@font-face{font-family:TonnFamiljen;src:url('../fonts/FamiljenGrotesk-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:TonnFamiljen;src:url('../fonts/FamiljenGrotesk-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
body.tonn-shop{--tonn-cream:#f3ebdd;--tonn-ink:#171715;--tonn-coral:#f05a28;--tonn-blue:#2156a2;background:var(--tonn-cream);color:var(--tonn-ink);font-family:TonnFamiljen,Arial,sans-serif}
body.tonn-shop #main,body.tonn-shop .main_color,body.tonn-shop .alternate_color,body.tonn-shop .header_color .header_bg{background-color:var(--tonn-cream);color:var(--tonn-ink)}
body.tonn-shop #main :is(h1,h2,h3,h4){font-family:TonnMontserrat,Arial,sans-serif;font-weight:900;letter-spacing:-.04em;line-height:1.12;text-transform:none;color:var(--tonn-ink)}
body.tonn-shop #main h1{font-size:clamp(32px,4vw,62px)}
body.tonn-shop #main :is(p,table,input,select,textarea,label,.price){font-family:TonnFamiljen,Arial,sans-serif}
body.tonn-shop #main{font-size:17px;line-height:1.55}
body.tonn-shop .tonn-shop-intro{position:relative;isolation:isolate;padding:62px 0 54px;max-width:920px}
body.tonn-shop .tonn-shop-intro:before{content:'';position:absolute;z-index:-1;left:30%;top:112px;width:min(680px,78vw);height:308px;background:url('../images/paper-scrap-coral-textured.png') center/100% 100% no-repeat;transform:translateX(-50%) rotate(-2.5deg);opacity:.98}
body.tonn-shop .tonn-shop-intro h2{font-size:clamp(40px,5vw,74px);max-width:700px;position:relative;line-height:1.01;margin-bottom:30px}
body.tonn-shop .tonn-shop-intro :is(.tonn-shop-eyebrow,p){position:relative}
body.tonn-shop .tonn-shop-eyebrow{font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
body.tonn-shop .tonn-shop-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 32px;padding:16px 0;border-block:1px solid #17171533}
body.tonn-shop .tonn-shop-nav a{display:inline-block;padding:9px 16px;border:1px solid #171715;color:var(--tonn-ink);font-weight:700;text-decoration:none;min-height:44px}
body.tonn-shop .tonn-shop-nav a:hover,body.tonn-shop .tonn-shop-nav a[aria-current=page]{background:var(--tonn-ink);color:var(--tonn-cream)}
body.tonn-shop #main :is(a.button,button.button,input.button,.wc-block-components-button:not(.is-link)){background:var(--tonn-coral);color:var(--tonn-ink);border:1px solid var(--tonn-ink);border-radius:0;box-shadow:none;font:700 16px/1.4 TonnFamiljen,Arial,sans-serif;padding:14px 20px;min-height:48px;text-transform:none;text-decoration:none}
body.tonn-shop #main :is(a.button,button.button,input.button,.wc-block-components-button:not(.is-link)):hover{background:var(--tonn-ink);color:var(--tonn-cream)}
body.tonn-shop #main :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--tonn-blue);outline-offset:4px}
body.tonn-shop #main :is(button:disabled,input:disabled){opacity:.55;cursor:not-allowed}
body.tonn-shop #main :is(ul.products li.product,.wc-block-product){background:#faf5ec;border:1px solid #1717152b;box-shadow:3px 5px 0 #1717150c;padding-bottom:20px;position:relative}
body.tonn-shop #main ul.products li.product :is(h2,h3,.price){padding-inline:18px}
body.tonn-shop #main ul.products li.product :is(h2,h3){font-size:clamp(20px,2vw,27px)}
body.tonn-shop #main ul.products li.product .button{margin:8px 18px 0}
body.tonn-shop #main ul.products li.product img{background:#f8f4ed}
body.tonn-shop #main :is(.price,.woocommerce-Price-amount){color:var(--tonn-ink)}
body.tonn-shop #main .onsale{display:none}
body.tonn-shop #main .summary .price{font-size:25px;font-weight:700}
body.tonn-shop #main :is(.stock,.woocommerce-info,.woocommerce-message){color:var(--tonn-ink)}
body.tonn-shop #main .tonn-ticket-countdown{margin:22px 0;padding:16px 18px;border:1px solid var(--tonn-ink);background:var(--tonn-coral);color:var(--tonn-ink)}
body.tonn-shop #main .tonn-ticket-countdown p{margin:0 0 4px;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
body.tonn-shop #main .tonn-ticket-countdown strong{font-family:TonnMontserrat,Arial,sans-serif;font-size:clamp(20px,2.4vw,30px);font-weight:900;letter-spacing:-.03em}
body.tonn-shop #main :is(.woocommerce-info,.woocommerce-message){border-top-color:var(--tonn-blue);background:#eaf0f8}
body.tonn-shop #main .woocommerce-error{background:#fff0eb;color:#8c2510;border-color:#b62f13}
body.tonn-shop #main :is(.cart_totals,#order_review,.wc-block-components-sidebar){background:#faf5ec;border:1px solid #17171540;box-shadow:3px 5px 0 #1717150c;padding:clamp(18px,3vw,32px);border-radius:0}
body.tonn-shop #main :is(table.shop_table,table.shop_table th,table.shop_table td){border-color:#17171530;background:transparent;color:var(--tonn-ink)}
body.tonn-shop #main :is(.woocommerce-checkout-review-order-table th,.order-total){font-weight:700}
body.tonn-shop #main :is(input.input-text,textarea,select,.select2-selection,.wc-block-components-text-input input){background:#fffcf7;border:1px solid #17171580;border-radius:0;color:var(--tonn-ink);font-size:16px;min-height:46px;padding:10px 12px;box-shadow:none}
body.tonn-shop #main :is(input[type=checkbox],input[type=radio]){accent-color:var(--tonn-blue)}
body.tonn-shop #main :is(.form-row label,.wc-block-components-text-input label){color:var(--tonn-ink)}
body.tonn-shop #main #payment{background:transparent;border-radius:0}
body.tonn-shop #main #payment .payment_box{background:#eaf0f8;color:var(--tonn-ink)}
body.tonn-shop #main #payment .payment_box:before{border-bottom-color:#eaf0f8}
body.tonn-shop #main :is(.woocommerce-terms-and-conditions-wrapper a,.woocommerce-privacy-policy-text a){color:var(--tonn-blue);text-decoration:underline}
body.tonn-shop #main :is(.woocommerce-terms-and-conditions-wrapper,.woocommerce-privacy-policy-text){font-size:15px;line-height:1.6}
body.tonn-shop #main #place_order{width:100%;margin-top:20px}
body.tonn-shop #main .quantity input.qty{min-width:64px;padding-inline:6px}
/* A ticket should read as a poster first, not as a standard catalogue item. */
body.tonn-shop.single-product #main div.product{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:clamp(44px,7vw,120px);align-items:start}
body.tonn-shop.single-product #main div.product :is(.images,.single-product-main-image),body.tonn-shop.single-product #main div.product .summary{float:none;width:auto;margin:0}
body.tonn-shop.single-product #main div.product :is(.images,.single-product-main-image){position:sticky;top:28px}
body.tonn-shop.single-product #main div.product :is(.images,.single-product-main-image) img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;object-position:center;border:1px solid #171715}
body.tonn-shop.single-product #main div.product .summary .product_title{font-size:clamp(42px,4.5vw,72px);line-height:.98;max-width:760px}
body.tonn-shop.single-product #main div.product .product_meta{display:none}
body.tonn-shop.single-product #main .woocommerce-tabs{grid-column:1/-1;margin:20px 0 0;padding-top:42px;border-top:1px solid #17171540}
body.tonn-shop.single-product #main .woocommerce-tabs ul.tabs{display:none}
body.tonn-shop.single-product #main .woocommerce-Tabs-panel>h2:first-child{display:none}
body.tonn-shop.single-product #main .woocommerce-Tabs-panel{margin:0!important;padding:0!important;border:0!important}
body.tonn-shop.single-product #main .woocommerce-Tabs-panel>h2:not(:first-child){font-size:clamp(34px,4vw,58px);max-width:920px}
@media(max-width:800px){body.tonn-shop.single-product #main div.product{grid-template-columns:1fr;gap:30px}body.tonn-shop.single-product #main div.product :is(.images,.single-product-main-image){position:static;max-width:560px}body.tonn-shop.single-product #main div.product .summary .product_title{font-size:clamp(38px,10vw,56px)}body.tonn-shop.single-product #main .woocommerce-tabs{margin-top:10px;padding-top:30px}}
@media(max-width:767px){body.tonn-shop #main .tonn-shop-intro{padding:48px 0 40px}body.tonn-shop #main .tonn-shop-intro:before{left:50%;top:58px;width:calc(100% + 32px);height:295px;transform:translateX(-50%) rotate(-2.5deg);opacity:.96}body.tonn-shop #main .tonn-shop-intro h2{font-size:clamp(38px,11vw,58px)}body.tonn-shop #main .cart_totals{width:100%;float:none}body.tonn-shop #main :is(#customer_details .col-1,#customer_details .col-2){float:none;width:100%}body.tonn-shop #main .form-row{max-width:100%}body.tonn-shop #main .shop_table{overflow-wrap:anywhere}body.tonn-shop .tonn-shop-nav a{padding:10px 12px}}

/* Two identities on one WooCommerce catalogue. */
body.tonn-shop .tonn-ticket-main{max-width:1280px;margin:0 auto;padding:clamp(24px,5vw,64px) 24px;min-height:60vh}
body.tonn-shop #main{padding:0;background:transparent}
body.tonn-shop .tonn-ticket-header{height:auto;min-height:100px}
body.tonn-shop .tonn-ticket-header nav{display:flex;flex-wrap:wrap;gap:20px}
body.tonn-shop .tonn-ticket-header nav a{min-height:44px;display:inline-flex;align-items:center}
body.tonn-shop .tonn-shop-eyebrow{font-size:14px}
body.tonn-shop-company{--tonn-cream:#f6f8fc;--tonn-ink:#14283f;--tonn-coral:#2156a2;background:#f6f8fc}
body.tonn-shop-company .tonn-ticket-header,body.tonn-shop-company .brand-footer{background:#2156a2;color:#fff}
body.tonn-shop-company #main :is(h1,h2,h3,h4){color:#2156a2}
body.tonn-shop-company #main :is(a.button,button.button,input.button,.wc-block-components-button:not(.is-link)){background:#2156a2;color:#fff;border-color:#2156a2}
body.tonn-shop-company .tonn-shop-intro:before{display:none}
body.tonn-shop-company #main :is(ul.products li.product,.wc-block-product,.cart_totals,#order_review,.wc-block-components-sidebar){background:#fff;box-shadow:none;border-color:#2156a240}
body.tonn-shop-company .tonn-ticket-header :focus-visible{outline-color:#fff}
body.tonn-shop .brand-footer{margin-top:40px}
body.tonn-shop .woocommerce-products-header__title{margin-bottom:16px}
body.tonn-shop #main ul.products li.product .woocommerce-loop-product__title{letter-spacing:-.025em}
@media(max-width:800px){body.tonn-shop .tonn-ticket-header{flex-wrap:wrap;gap:10px;padding:18px 24px}body.tonn-shop .tonn-ticket-header nav{gap:18px;font-size:14px}body.tonn-shop .tonn-ticket-main{padding-inline:20px}body.tonn-shop .brand-logo img{max-width:145px}body.tonn-shop #main ul.products li.product{width:100%;margin-right:0;float:none}}
