/* ===========================================================================
KEPATHY® — shared stylesheet for Shipping, Refund and Contact
Namespace: .kpy | Paste this block at the TOP of EACH page.
Doubled selectors (.kpy .kpy__x) score 0,2,0 and beat this theme's
.rte h2 / .rte p / .rte a / .rte th rules, which score 0,1,1.
STRUCTURE: numeric index. Every section is headed by the NUMBER that
governs it, not by a topic. A reader who knows "it has been 22 days"
scans the numerals instead of reading prose.
NOTE THE PAGE BACKGROUND IS #F9F9F9, NOT WHITE. All contrast below was
computed against that, and the panels are white so they lift off it.
=========================================================================== */
.kpy{
--kpy-ink:#171924;
--kpy-body:#2E3140;
--kpy-mute:#4E5266;
--kpy-blue:#00538B;
--kpy-blue-dark:#00436F;
--kpy-page:#F9F9F9;
--kpy-card:#FFFFFF;
--kpy-tint:#EAF2F8;
--kpy-rule:#D8E0EA;
--kpy-rule-2:#C3CEDC;
--kpy-radius:12px;
--kpy-btn-radius:8px;
font-family:'Poppins',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
color:var(--kpy-body);
font-size:16px;
font-weight:300;
line-height:1.72;
letter-spacing:.4px;
text-align:left;
-webkit-font-smoothing:antialiased;
}
.kpy *,.kpy *::before,.kpy *::after{box-sizing:border-box}
/* Body copy — re-declared, not inherited. .rte p sets size, weight AND align. */
.kpy .kpy p,
.kpy p{
margin:0 0 1em;
color:var(--kpy-body);
font-family:'Poppins',ui-sans-serif,system-ui,sans-serif;
font-size:16px;
font-weight:300;
line-height:1.72;
letter-spacing:.4px;
text-align:left;
}
.kpy p:last-child{margin-bottom:0}
/* the theme's body weight is 300, so bold has to be a real jump */
.kpy b,.kpy strong{color:var(--kpy-ink);font-weight:600}
/* Body links. The theme colours links navy but gives them NO underline —
colour alone is not a sufficient distinction inside running text. */
.kpy a:not([class]){
color:var(--kpy-blue);
text-decoration:underline;
text-underline-offset:3px;
text-decoration-thickness:1px;
font-weight:500;
}
.kpy a:not([class]):hover{color:var(--kpy-blue-dark);text-decoration-thickness:2px}
.kpy a:focus-visible,.kpy a:not([class]):focus-visible{
outline:2px solid var(--kpy-blue);outline-offset:3px;border-radius:2px;
}
/* ---------- masthead ------------------------------------------------------
Centred, echoing the theme's own centred 55px h1.
-------------------------------------------------------------------------- */
.kpy .kpy__masthead{
text-align:center!important;
margin:0 0 clamp(26px,5vw,34px);
}
.kpy .kpy__kicker{
display:block;
font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
color:var(--kpy-blue)!important;
text-align:center!important;
line-height:1.7!important;
margin:0 0 12px!important;
}
.kpy .kpy__standfirst{
color:var(--kpy-ink)!important;
font-size:clamp(17px,4.2vw,19px)!important;
font-weight:300!important;
line-height:1.55!important;
text-align:center!important;
text-wrap:balance;
max-width:52ch;
margin:0 auto!important;
}
/* ---------- the numeric index --------------------------------------------- */
.kpy .kpy__index{
display:flex;flex-wrap:wrap;gap:8px;
justify-content:center;
margin:0 0 clamp(28px,5.5vw,38px);
padding:0;list-style:none;
}
.kpy .kpy__ichip{
display:inline-flex;align-items:baseline;gap:7px;
background:var(--kpy-card);
border:1px solid var(--kpy-rule);
border-radius:var(--kpy-btn-radius);
padding:8px 13px;
}
.kpy .kpy__inum{
color:var(--kpy-blue);
font-size:15px;font-weight:600;letter-spacing:.2px;
line-height:1.2;white-space:nowrap;
}
.kpy .kpy__ilab{
color:var(--kpy-mute);
font-size:11px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;
line-height:1.4;white-space:nowrap;
}
/* ---------- the numbered panel -------------------------------------------
White on the theme's off-white page, 12px radius matching --media-radius.
The numeral is the heading; the sentence beside it is the subtitle.
-------------------------------------------------------------------------- */
.kpy .kpy__panel{
background:var(--kpy-card);
border-radius:var(--kpy-radius);
padding:clamp(22px,4.5vw,30px);
margin:0 0 14px;
box-shadow:0 1px 2px rgba(23,25,36,.05), 0 6px 18px rgba(23,25,36,.045);
}
.kpy .kpy__panel--flat{
background:var(--kpy-tint);
box-shadow:none;
}
.kpy .kpy__head{
display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;
padding:0 0 14px;
margin:0 0 16px;
border-bottom:1px solid var(--kpy-rule);
}
.kpy .kpy__num{
flex:0 0 auto;
color:var(--kpy-blue)!important;
font-family:'Poppins',sans-serif!important;
font-size:clamp(30px,7.5vw,40px)!important;
font-weight:600!important;
line-height:1.05!important;
letter-spacing:-.5px!important;
text-align:left!important;
text-transform:none!important;
margin:0!important;
font-variant-numeric:tabular-nums;
white-space:nowrap;
}
.kpy .kpy__unit{
flex:1 1 11em;min-width:0;
color:var(--kpy-ink)!important;
font-family:'Poppins',sans-serif!important;
font-size:clamp(15px,3.7vw,16.5px)!important;
font-weight:600!important;
line-height:1.4!important;
letter-spacing:.2px!important;
text-align:left!important;
text-transform:none!important;
margin:0!important;
}
.kpy .kpy__panel--flat .kpy__head{border-bottom-color:var(--kpy-rule-2)}
/* ---------- sub-headings inside a panel ----------------------------------- */
.kpy .kpy__h3{
color:var(--kpy-ink)!important;
font-family:'Poppins',sans-serif!important;
font-size:16px!important;
font-weight:600!important;
line-height:1.45!important;
letter-spacing:.2px!important;
text-align:left!important;
text-transform:none!important;
margin:24px 0 8px!important;
}
/* ---------- lists --------------------------------------------------------- */
.kpy .kpy__list{margin:16px 0 0;padding:0;list-style:none}
.kpy .kpy__list li{
position:relative;padding:0 0 0 24px;margin:0 0 11px;
font-size:15.5px;font-weight:300;line-height:1.66;color:var(--kpy-body);
}
.kpy .kpy__list li:last-child{margin-bottom:0}
.kpy .kpy__list li::before{
content:"";position:absolute;left:3px;top:.68em;
width:7px;height:7px;border-radius:50%;
background:var(--kpy-blue);
}
.kpy .kpy__list--num{counter-reset:kpyn}
.kpy .kpy__list--num li{counter-increment:kpyn;padding-left:34px}
.kpy .kpy__list--num li::before{
content:counter(kpyn);
left:0;top:0;width:auto;height:auto;border-radius:0;background:none;
color:var(--kpy-blue);font-size:14px;font-weight:600;
line-height:1.85;font-variant-numeric:tabular-nums;
}
/* ---------- verdict rows -------------------------------------------------- */
.kpy .kpy__rows{margin:16px 0 0;padding:0;list-style:none;border-top:1px solid var(--kpy-rule)}
.kpy .kpy__row{
display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;
padding:13px 0;
border-bottom:1px solid var(--kpy-rule);
font-size:15.5px;font-weight:300;line-height:1.55;color:var(--kpy-body);
}
.kpy .kpy__rowq{flex:1 1 14em;min-width:0}
.kpy .kpy__rowa{
flex:0 0 auto;
color:var(--kpy-ink);
font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
line-height:1.9;white-space:nowrap;
}
.kpy .kpy__rowa--yes{color:var(--kpy-blue)}
.kpy .kpy__rowa--no{color:var(--kpy-mute)}
/* ---------- worked examples ----------------------------------------------- */
.kpy .kpy__cases{margin:16px 0 0;padding:0;list-style:none}
.kpy .kpy__case{
padding:14px 0 14px 16px;
margin:0 0 10px;
border-left:3px solid var(--kpy-rule-2);
font-size:15.5px;font-weight:300;line-height:1.62;color:var(--kpy-body);
}
.kpy .kpy__case:last-child{margin-bottom:0}
.kpy .kpy__case--yes{border-left-color:var(--kpy-blue)}
.kpy .kpy__caselab{
display:block;
font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
line-height:1.8;margin:0 0 5px;color:var(--kpy-mute);
}
.kpy .kpy__case--yes .kpy__caselab{color:var(--kpy-blue)}
/* ---------- note ---------------------------------------------------------- */
.kpy .kpy__note{
margin:20px 0 0;
padding:16px 18px;
background:var(--kpy-tint);
border-radius:var(--kpy-btn-radius);
}
.kpy .kpy__notelab{
display:block;
color:var(--kpy-blue)!important;
font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
text-align:left!important;line-height:1.8!important;
margin:0 0 6px!important;
}
.kpy .kpy__note p{font-size:15px!important;margin-bottom:.6em!important}
.kpy .kpy__note p:last-child{margin-bottom:0!important}
/* ---------- button -------------------------------------------------------- */
.kpy .kpy__cta{
display:inline-block;
background:var(--kpy-blue)!important;color:#fff!important;
text-decoration:none!important;
font-family:'Poppins',sans-serif;
font-size:15px;font-weight:600;letter-spacing:.7px;
padding:14px 30px;
border-radius:var(--kpy-btn-radius);
min-height:49px;line-height:1.4;
border:1.5px solid var(--kpy-blue);
}
.kpy .kpy__cta:hover{background:var(--kpy-blue-dark)!important;border-color:var(--kpy-blue-dark)}
.kpy .kpy__ctawrap{margin:20px 0 0!important;text-align:left!important}
/* ---------- close --------------------------------------------------------- */
.kpy .kpy__close{
background:var(--kpy-card);
border-radius:var(--kpy-radius);
padding:clamp(24px,5vw,32px);
margin:clamp(24px,5vw,32px) 0 0;
box-shadow:0 1px 2px rgba(23,25,36,.05), 0 6px 18px rgba(23,25,36,.045);
}
.kpy .kpy__closetext{
color:var(--kpy-ink)!important;
font-size:16.5px!important;font-weight:300!important;
line-height:1.6!important;text-align:left!important;
margin:0 0 18px!important;
}
.kpy .kpy__mail{
color:var(--kpy-blue)!important;font-weight:600;
text-decoration:underline!important;
text-underline-offset:3px;text-decoration-thickness:1.5px;
overflow-wrap:anywhere;
}
.kpy .kpy__mail:hover{color:var(--kpy-blue-dark)!important}
.kpy .kpy__signame{
color:var(--kpy-ink)!important;
font-size:16px!important;font-weight:600!important;
text-align:left!important;margin:0 0 3px!important;
}
.kpy .kpy__sigrole{
color:var(--kpy-mute)!important;
font-size:10.5px!important;font-weight:600;
letter-spacing:.16em;text-transform:uppercase;
text-align:left!important;line-height:1.8!important;
margin:0 0 20px!important;
}
.kpy .kpy__links{
margin:0!important;padding:16px 0 0;
border-top:1px solid var(--kpy-rule);
text-align:left!important;
font-size:11px!important;line-height:2.2!important;
letter-spacing:.14em;text-transform:uppercase;font-weight:600;
color:var(--kpy-mute)!important;
}
.kpy .kpy__link{
color:var(--kpy-blue)!important;text-decoration:none!important;
border-bottom:2px solid var(--kpy-blue);padding-bottom:2px;
}
.kpy .kpy__link:hover{color:var(--kpy-blue-dark)!important;border-bottom-color:var(--kpy-blue-dark)}
.kpy .kpy__sep{color:var(--kpy-rule-2);padding:0 10px}
/* ---------- contact-page rows --------------------------------------------- */
.kpy .kpy__qa{margin:0;padding:0}
.kpy .kpy__q{
color:var(--kpy-ink)!important;font-family:'Poppins',sans-serif!important;
font-size:16px!important;font-weight:600!important;
line-height:1.45!important;letter-spacing:.2px!important;
text-align:left!important;text-transform:none!important;
margin:0!important;padding:18px 0 0;
}
.kpy .kpy__a{
margin:0!important;padding:7px 0 18px;
border-bottom:1px solid var(--kpy-rule);
font-size:15.5px!important;font-weight:300!important;
line-height:1.64!important;color:var(--kpy-body)!important;
text-align:left!important;
}
.kpy .kpy__qa > .kpy__a:last-child{border-bottom:0;padding-bottom:0}
@media screen and (min-width:620px){
.kpy .kpy__head{flex-wrap:nowrap;gap:20px}
.kpy .kpy__row{flex-wrap:nowrap}
.kpy .kpy__rowa{min-width:8em;text-align:right}
}
@media screen and (min-width:750px){
.kpy .kpy__panel{padding:32px}
}
@media (prefers-reduced-motion:no-preference){
.kpy a{transition:color .15s ease,background-color .15s ease,border-color .15s ease}
}
-
1–5To ship
-
5Check spam
-
6Escalated
-
7–20US transit
-
10–25Intl transit
-
+5Past window
-
30 / 35We investigate
1–5 Business days before your order ships
Every order ships within 1 to 5 business days of the order date. If it ships sooner, you get an email with your shipping confirmation and tracking number at the address you used at checkout.
Business days are Monday to Friday. Weekends do not count toward any figure on this page.
Nothing to do
During these days your order is simply being packed. No action is needed from you.
5 The day to check your spam folder
If the 5th business day has passed and no tracking number has arrived, check junk and spam before anything else. Shipping confirmations are filtered constantly, and that is where most of them turn up.
Search your inbox for “Kepathy” as well, in case it landed somewhere unexpected. If it is genuinely not there, email support@kepathy.com and we will resend it.
6 The day it stops being yours to chase
If your order has not shipped by the 6th business day, our team is already aware of the delay and has escalated it to our fulfilment team. You do not need to contact us, and doing so will not move it faster.
Allow 3 more business days from that point. Inside that window we will email you an update along with your tracking number.
7–20 Business days in transit — US. Internationally it is 10 to 25.
Delivery times are 7 to 20 business days for the US and 10 to 25 business days for international shipping. Counted from the day the parcel ships, not the day you ordered. Every window below is in business days.
-
Before it ships — every order1–5 days
-
Standard delivery — US7–20 days
-
Standard delivery — international10–25 days
-
Free Shipping — either region7–25 days
-
Expedited — US, when offered7–15 days
-
Expedited — international, when offered10–20 days
Track your order
4 Ordinary reasons a tracking page stops updating
Inside the windows above, tracking that has not moved is expected rather than a fault.
-
The first scan happens late. Often not until the parcel reaches a regional hub near you. During peak periods, when carriers process parcels in bulk, that takes longer — and until that scan the carrier has not formally confirmed receipt.
-
The first scan happens at delivery. On some routes it is the only scan there will be.
-
The tracking database lags. The record updates behind where the parcel actually is.
-
Some shipments are not trackable at all. Standard International especially. It will still arrive by the 20th or 25th business day at the latest.
+5 More business days, once you are past the window
Beyond 20 business days (US) or 25 (international), if tracking still has not changed, allow an additional 5 business days. Parcels that run long typically arrive on or shortly after the 20th or 25th business day.
30 / 35 Business days — US and international — when we investigate
As a small business, the last thing we want is for you to be worrying about an order. Delays this long are monitored and escalated to our fulfilment manager to resolve.
We ask for your patience while we investigate, and we will follow up with you by email within 2 to 5 business days.
A separate entitlement
Once 30 days from purchase have passed, your order has not arrived, and tracking does not show it as delivered, you are eligible for a free replacement. That one is on the refund policy.
2 Shipping options, beyond standard
Free Shipping — 7 to 25 business days
We process and ship these using the most cost-effective methods available, which is what makes free shipping possible. A free-shipping order can therefore sit a little longer before it moves. If yours has not shipped yet there is no need to worry — it will arrive inside that window.
Expedited Shipping — seldom offered
Keeping the product itself affordable depends on not routing every order this way. When expedited shipping is available you will see it at the shipping step in checkout. Delivery then runs 7 to 15 business days in the US and 10 to 20 business days internationally.
1 Date that actually counts
We estimate delivery by adding the transit duration to the projected shipping date. That is the whole calculation.
- Transit time is determined by the shipping speed you select.
- Transit is counted in business days, excluding Saturdays and Sundays — unless a weekend delivery option was available to you at checkout.
- Holidays are factored in.
- An “order within” countdown, where you see one, is the window you would need to order inside to get delivery by the date shown. That date can still change before you finish checking out.
The one to keep
Your order confirmation email contains the confirmed delivery date. Wherever an estimate elsewhere disagrees with it, the confirmation email is the one that counts.