/* --- General Styles --- */
html, body {
    background-color: #ffffff;
    color: #000000;
    margin: 0;
    padding: 0;
    text-align: left;
}

#lang {
    display: block;
    clear: both;
    width: 100%;
    float: right;
    background-color: #002e5a;
    border-bottom: 2px solid #ffffff;
}

#lang a {
    display: block;
    position: relative;
    float: right;
    background-color: #002e5a;
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 12px;
    color: #ffffff;
    text-transform: none;
    line-height: 16px;
    margin: 2px 10px;
    text-decoration: none;
}

#lang a:hover {
    color: #5e81b5;
}

#strona {
    width: 90%;
    min-width: 600px;
    max-width: 2000px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    background-color: #ffffff;
}

#naglowek {
    width: 100%;
    background-color: #ffffff;
    margin: 0;
}

#menu {
    display: block;
    clear: both;
    width: 95%;
    float: left;
    background-color: #002e5a;
    border-top: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
    padding-left: 5%;
}

#menu a {
    display: block;
    position: relative;
    float: left;
    background-color: #002e5a;
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 17px;
    color: #ffffff;
    text-transform: none;
    line-height: 20px;
    margin: 4px 10px 6px 10px;
    text-decoration: none;
}

#menu a:hover {
    color: #5e81b5;
}

img.top1 {
    display: block;
    position: relative;
    float: left;
    width: 206px;
    height: 200px;
    margin: 0 0 0 7px;
    border-width: 0;
}

img.top2 {
    display: block;
    position: relative;
    float: left;
    width: 48px;
    height: 200px;
    margin: 0 0 0 7px;
    border-width: 0;
}

img.top3 {
    display: block;
    position: relative;
    float: left;
    width: 100%;
    height: auto;
    margin: 0;
    border-width: 0;
}

#tresc {
    width: 74%;
    min-height: 300px;
    float: left;
    background-color: #ffffff;
    border: 1pt solid #002e5a;
    padding-top: 10px;
    padding-bottom: 20px;
    padding-left: 2%;
    padding-right: 3%;
    margin: 1pt 1pt;
    box-sizing: border-box; /* Added for consistency */
}

#tresc h1 {
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 24px;
    color: #000000;
    margin: 20px 5px 10px 5px;
    text-align: left;
}

#tresc h2 {
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #002e5a;
    margin: 20px 5px 2px 5px;
    text-align: left;
}

#tresc p {
    font-family: Palatino, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    color: #000000;
    margin: 5px 5px 10px 30px;
    text-align: justify;
    line-height: 24px;
}

#tresc a {
    font-family: Palatino, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    color: #002e5a;
    text-decoration: underline;
    line-height: 24px;
}

#tresc a:hover {
    color: #5e81b5;
    text-decoration: underline;
}

#tresc p.big {
    font-family: Palatino, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 24px;
    color: #000000;
    margin: 5px 5px 10px 30px;
    text-align: center;
    line-height: 32px;
}

#tresc ul {
    list-style-type: none;
    margin: 0;
    padding: 30px; /* Original value, ensure units if intended */
}

#tresc li {
    font-family: Palatino, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    color: #000000;
    margin: 2px 0;
    text-align: left;
    line-height: 20px;
}

#tresc span.color {
    color: #002e5a;
}

#tresc p.center {
    text-align: center;
}

#tresc p.left {
    text-align: left;
}

#tresc div.rf {
    font-family: Palatino, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    color: #000000;
    margin: 5px 5px 10px 70px;
    text-align: left;
    line-height: 24px;
}

#tresc.rf label {
    font-family: Palatino, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 16px;
    color: #000000;
    margin: 0;
    text-align: left;
    line-height: 24px;
}

#tresc.rf label.zgoda {
    font-family: Palatino, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 16px;
    color: #000000;
    margin: 0;
    text-align: justify;
    line-height: 24px;
}

#tresc.rf span.star {
    font-family: Palatino, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 16px;
    color: #ff0000;
    margin: 0;
    line-height: 24px;
}

#tresc.rf input#form-fname,
#tresc.rf input#form-lname,
#tresc.rf input#form-email,
#tresc.rf input#form-country,
#tresc.rf input#form-tname,
#tresc.rf input#form-ucountry,
#tresc.rf input#form-eleader {
    padding: 1px;
    background-color: #ffffff;
    border: 1px solid #000000;
    margin: 5px 5px 5px 5px;
    width: 300px;
    font-family: Palatino, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    box-sizing: border-box; /* Added for consistency */
}

/* Combined selector for inputs with width 500px */
#tresc.rf input#form-univ,
#tresc.rf input#form-address,
#tresc.rf input#form-uname,
#tresc.rf input#form-uadr,
#tresc.rf input#form-leader,
#tresc.rf input#form-tm1,
#tresc.rf input#form-tm2,
#tresc.rf input#form-tm3,
#tresc.rf input#form-tm4 {
    padding: 1px;
    background-color: #ffffff;
    border: 1px solid #000000;
    margin: 5px 5px 5px 5px;
    width: 500px;
    font-family: Palatino, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    box-sizing: border-box; /* Added for consistency */
}


#tresc.rf input#submit,
#tresc.rf input#reset {
    padding: 3px 6px;
    margin: 5px 5px 5px 5px;
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 14px;
    border: 1px solid #002e5a;
    cursor: pointer;
    background-color: #002e5a;
    color: #ffffff;
}

#tresc.rf p.error {
    font-family: Arial, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 12px;
    color: #ff0000;
    margin: 0 0 0 5px;
    text-align: left;
    line-height: 14px;
}

#tresc:after { /* Basic clearfix for floated content within #tresc */
    content: "";
    display: table;
    clear: both;
}

#stopka {
    float: left;
    width: 20%;
    background-color: #fff;
    border: 1pt solid #002e5a;
    padding-top: 0px;
    padding-bottom: 20px;
    margin: 1pt 1pt;
    box-sizing: border-box; /* Added for consistency */
}

img.logo {
    width: 65%;
    margin: 4px 30px 8px 20px;
    border-width: 0;
    height: auto; /* Ensure aspect ratio is maintained */
}

#stopka-l {
    width: 95%;
    float: left;
    overflow: hidden;
    padding-top: 5px;
    padding-left: 5%;
    margin-bottom: 20px;
    box-sizing: border-box;
}

#stopka-r {
    width: 100%;
    float: right;
    overflow: hidden;
    padding-top: 20%; /* This seems quite large, may need review */
    text-align: right;
    box-sizing: border-box;
}

#stopka-l p {
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 12px;
    color: #ffffff; /* Potential visibility issue on #fff background, addressed in MQ */
    text-decoration: none;
    line-height: 20px;
    text-align: left;
    margin: 20px 0px 10px 10px;
}

#stopka-l a {
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 12px;
    color: #ffffff; /* Potential visibility issue on #fff background, addressed in MQ */
    text-decoration: none;
    line-height: 20px;
}

#stopka-l a:hover {
    color: #5e81b5;
}

#stopka-r p {
    font-family: Arial, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 12px;
    color: #002e5a;
    text-decoration: none;
    line-height: 18px;
    text-align: right;
    margin: 15px 10px 10px 10px;
}

#stopka-r a {
    font-family: Arial, sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 12px;
    color: #002e5a;
    text-decoration: none;
    line-height: 18px;
}

#stopka-r a:hover {
    color: #0095db;
}

#stopka:after { /* Basic clearfix for floated content within #stopka */
    content: "";
    display: table;
    clear: both;
}

.b {
    font-weight: bold;
}

.red {
    color: #ff0000;
}


/* --- Responsive Styles (Max Width 1000px) --- */
/* This block targets tablets and smaller desktops */
@media all and (max-width: 1000px) {
    #lang {
        /* display: block; */ /* Already block */
        /* clear: both; */ /* Already clear */
        /* width: 100%; */ /* Already 100% */
        /* float: right; */ /* Already float right */
        /* background-color: #002e5a; */ /* Already set */
        /* border-bottom: 2px solid #ffffff; */ /* Already set */
        /* No changes needed here based on original MQ unless behavior needs to differ from base */
    }

    #strona {
        width: 96%;
        max-width: 732px; 
        min-width: initial; /* Crucial for smaller screens */
        padding-left: 2%;   /* Added padding for content spacing */
        padding-right: 2%;  /* Added padding for content spacing */
        /* margin-left: auto; */ /* Already auto */
        /* margin-right: auto; */ /* Already auto */
        /* text-align: left; */ /* Already left */
        /* background-color: #ffffff; */ /* Already white */
        box-sizing: border-box; /* Ensure padding is included in width */
    }

    #naglowek {
        /* width: 100%; */ /* Already 100% */
        /* background-color: #ffffff; */ /* Already white */
        /* margin: 0; */ /* Already 0 */
        /* No changes needed here based on original MQ */
    }

    #menu {
        /* display: block; */ /* Already block */
        /* clear: both; */ /* Already clear */
        width: 100%; /* Adjusted from 95% to be full width of #strona */
        /* float: left; */ /* Retained, but will be overridden for smaller screens */
        /* background-color: #002e5a; */ /* Already set */
        /* border-top: 1px solid #ffffff; */ /* Already set */
        /* border-bottom: 1px solid #ffffff; */ /* Already set */
        padding-left: 0; /* Remove specific padding, items will be centered */
        box-sizing: border-box;
    }

    #menu a {
        float: none; /* Stack menu items */
        display: block; /* Ensure they take full width for tapping */
        text-align: center; /* Center text within each menu item */
        margin: 6px 0; /* Adjust margin for vertical stacking */
        padding: 8px 0; /* Add padding for better tap targets */
        line-height: 1.5; /* Adjust line height for readability */
    }

    img.top1 {
        /* display: block; */ /* Already block */
        clear: both;
        width: 100%;
        max-width: 206px; /* Retain max-width if specific size desired, else 100% */
        height: auto; /* Maintain aspect ratio */
        margin: 10px auto; /* Center the image with some vertical margin */
        float: none;
        /* border-width: 0; */ /* Already 0 */
    }

    img.top2 {
        display: none; /* Hide this image as per original MQ */
    }

    img.top3 {
        /* display: block; */ /* Already block */
        clear: both;
        width: 100%;
        height: auto; /* Maintain aspect ratio */
        margin: 10px auto; /* Center the image with some vertical margin */
        float: none;
        /* border-width: 0; */ /* Already 0 */
    }

    #tresc {
        width: 100%; /* Take full width of #strona */
        /* min-height: 300px; */ /* Retain if needed */
        /* background-color: #ffffff; */ /* Already white */
        padding: 20px 2% 30px 2%; /* Adjusted padding */
        margin: 10px 0; /* Add vertical margin */
        clear: both;
        float: none;
        border: none; /* Remove border for cleaner look on smaller screens */
        box-sizing: border-box;
    }

    #tresc h1 {
        /* font-family: Arial, sans-serif; */ /* Already Arial */
        /* font-weight: bold; */ /* Already bold */
        /* font-style: normal; */ /* Already normal */
        font-size: 22px; /* Slightly smaller */
        /* color: #000000; */ /* Already black */
        margin: 15px 2px 8px 2px; /* Adjusted margins */
        /* text-align: left; */ /* Already left */
    }

    #tresc h2 {
        /* font-family: Arial, sans-serif; */ /* Already Arial */
        /* font-weight: bold; */ /* Already bold */
        /* font-style: normal; */ /* Already normal */
        font-size: 18px; 
        /* color: #002e5a; */ /* Already #002e5a */
        margin: 15px 2px 2px 2px; /* Adjusted margins */
        /* text-align: left; */ /* Already left */
    }

    #tresc p {
        font-family: Arial, sans-serif; /* Changed font for consistency */
        /* font-weight: normal; */ /* Already normal */
        /* font-style: normal; */ /* Already normal */
        font-size: 16px;
        /* color: #000000; */ /* Already black */
        margin: 5px 2px 10px 15px; /* Reduced left margin */
        /* text-align: justify; */ /* Already justify */
        line-height: 1.6; /* Improved line height for readability */
    }

    #tresc a {
         font-family: Arial, sans-serif; /* Match paragraph font */
         /* Other link styles inherited or remain as base */
    }

    #tresc p.big {
        font-family: Arial, sans-serif; /* Changed font */
        /* font-weight: bold; */ /* Already bold */
        /* font-style: normal; */ /* Already normal */
        font-size: 20px; /* Slightly smaller */
        /* color: #000000; */ /* Already black */
        margin: 10px 2px 15px 2px; /* Adjusted margins */
        /* text-align: center; */ /* Already center */
        line-height: 1.5; /* Adjusted line height */
    }

    #tresc ul {
        /* list-style-type: none; */ /* Already none */
        margin: 10px 2px 10px 15px; /* Add some margin, consistent with p */
        padding: 0; /* Reset padding */
    }

    #tresc li {
        font-family: Arial, sans-serif; /* Changed font */
        /* font-weight: normal; */ /* Already normal */
        /* font-style: normal; */ /* Already normal */
        font-size: 16px;
        /* color: #000000; */ /* Already black */
        margin: 5px 0; /* Adjusted vertical margin */
        /* text-align: left; */ /* Already left */
        line-height: 1.6; /* Improved line height */
    }

    #tresc div.rf {
        font-family: Arial, sans-serif; /* Changed font */
        /* font-weight: normal; */ /* Already normal */
        /* font-style: normal; */ /* Already normal */
        font-size: 16px;
        /* color: #000000; */ /* Already black */
        margin: 10px 2px 10px 2px; /* Reset margin for full width context */
        /* text-align: left; */ /* Already left */
        line-height: 1.6; /* Improved line height */
    }

     #tresc.rf label,
     #tresc.rf label.zgoda { /* Combined for consistency */
        font-family: Arial, sans-serif; /* Match rf font */
        display: block; /* Ensure labels take full width or stack properly */
        margin-bottom: 5px; /* Add some space below labels */
     }

    #tresc.rf label.zgoda {
        /* font-weight: bold; */ /* Already bold */
        /* font-style: normal; */ /* Already normal */
        /* font-size: 16px; */ /* Already 16px */
        /* color: #000000; */ /* Already black */
        margin: 5px 0 10px 0px; /* Adjusted margin, remove left indent if inputs are full width */
        /* text-align: justify; */ /* Already justify */
        /* line-height: 24px; */ /* Base line-height is fine */
    }

     #tresc.rf span.star {
         font-family: Arial, sans-serif; /* Match rf font */
     }

    #tresc.rf input#form-fname,
    #tresc.rf input#form-lname,
    #tresc.rf input#form-email,
    #tresc.rf input#form-country,
    #tresc.rf input#form-tname,
    #tresc.rf input#form-ucountry,
    #tresc.rf input#form-eleader,
    #tresc.rf input#form-univ,
    #tresc.rf input#form-address,
    #tresc.rf input#form-uname,
    #tresc.rf input#form-uadr,
    #tresc.rf input#form-leader,
    #tresc.rf input#form-tm1,
    #tresc.rf input#form-tm2,
    #tresc.rf input#form-tm3,
    #tresc.rf input#form-tm4 {
        padding: 8px 5px; /* Increased padding for easier interaction */
        /* background-color: #ffffff; */ /* Already white */
        /* border: 1px solid #000000; */ /* Already set */
        margin: 5px 0; /* Adjusted margin for vertical stacking */
        width: 100%; /* Changed from 98% to full width */
        font-family: Arial, sans-serif; /* Changed font */
        /* font-weight: normal; */ /* Already normal */
        /* font-style: normal; */ /* Already normal */
        font-size: 16px;
        box-sizing: border-box; /* Crucial for width: 100% with padding */
    }
    
    #tresc.rf input#submit,
    #tresc.rf input#reset {
        width: 100%; /* Make buttons full width for easier tapping */
        padding: 10px 6px; /* Increase padding */
        margin: 10px 0 5px 0; /* Adjust margin */
        font-size: 16px; /* Increase font size slightly */
    }

    #tresc.rf p.error {
        /* font-family: Arial, sans-serif; */ /* Already Arial */
        /* font-weight: normal; */ /* Already normal */
        /* font-style: normal; */ /* Already normal */
        /* font-size: 12px; */ /* Already 12px */
        /* color: #ff0000; */ /* Already red */
        margin: 2px 0 5px 2px; /* Adjusted margin */
        /* text-align: left; */ /* Already left */
        /* line-height: 14px; */ /* Base line-height is fine */
    }

    #stopka {
        clear: both;
        float: none; /* Remove float for full-width block */
        width: 100%; /* Take full width */
        /* background-color: #fff; */ /* Already white */
        border-top: 2px solid #002e5a;
        border-left: none;
        border-right: none;
        border-bottom: none;
        padding: 15px 2%; /* Add padding, use percentage for horizontal */
        margin: 20px 0 0 0; /* Add top margin, reset others */
        box-sizing: border-box;
        text-align: center; /* Center footer content by default */
    }

    img.logo {
        display: block; /* Stack logo */
        margin: 0 auto 10px auto; /* Center logo and add bottom margin */
        width: 50%; /* Adjust width as needed */
        max-width: 120px; /* Limit max size */
        /* vertical-align: middle; */ /* Not needed for display:block */
        /* border-width: 0; */ /* Already 0 */
    }

    #stopka-l,
    #stopka-r {
        width: 100%; /* Each takes full width when stacked */
        float: none;
        display: block; /* Ensure they stack */
        /* vertical-align: middle; */ /* Not needed for display:block */
        /* overflow: hidden; */ /* Generally not needed if content is managed */
        /* background-color: #fff; */ /* Inherited from #stopka */
        padding: 10px 0; /* Adjust padding */
        margin-bottom: 10px; /* Space between stacked items */
        text-align: center; /* Center text within these blocks */
    }
    
    #stopka-l:last-child,
    #stopka-r:last-child {
        margin-bottom: 0; /* Remove bottom margin from the last item */
    }

     #stopka-l p, #stopka-l a,
     #stopka-r p, #stopka-r a {
         color: #002e5a; /* Ensure text is visible (already set in original MQ for #stopka-l) */
         margin: 5px 0;
         line-height: 1.5; /* Adjust line height */
         font-size: 13px; /* Slightly smaller for footer */
     }
     
     #stopka-l {
         text-align: center; /* Or left if preferred */
     }
     
     #stopka-r {
         padding-top: 0; /* Reset specific padding from base */
         text-align: center; /* Or right if preferred */
     }

    /*.b and.red are utility classes, likely no change needed */
    /*.b { font-weight: bold; } */
    /*.red { color: #ff0000; } */
}

/* --- END OF Responsive Styles (Max Width 1000px) --- */


### B. Clearly Demarcated New Mobile Styles
```css
/* --- General Mobile Styles (Max Width 767px) --- */
/* This media query targets larger mobile phones and small tablets (portrait & landscape), */
/* and will override styles from the 1000px query and base styles. */
@media all and (max-width: 767px) {
    #strona {
        padding-left: 1%; /* Further reduce padding for smaller screens */
        padding-right: 1%;
    }

    #menu a {
        font-size: 15px; /* Slightly smaller font for menu items */
        padding: 8px 0; /* Ensure good tap height */
        margin: 4px 0;
    }

    #tresc {
        padding: 15px 2% 20px 2%; /* Further adjust content padding */
        margin: 5px 0;
    }

    #tresc h1 {
        font-size: 20px; /* Reduce h1 size */
        margin: 10px 1% 5px 1%;
    }

    #tresc h2 {
        font-size: 17px; /* Reduce h2 size */
        margin: 10px 1% 2px 1%;
    }

    #tresc p,
    #tresc li,
    #tresc div.rf {
        font-size: 15px; /* Standardize paragraph/list font size */
        line-height: 1.55;
        margin-left: 5px; /* Reduce left indentations */
        margin-right: 5px;
    }
    
    #tresc ul {
        margin-left: 5px;
        padding-left: 10px; /* Small indent for lists */
    }

    #tresc p.big {
        font-size: 18px; /* Reduce big paragraph size */
        line-height: 1.4;
    }

    #tresc.rf input#form-fname,
    #tresc.rf input#form-lname,
    #tresc.rf input#form-email,
    #tresc.rf input#form-country,
    #tresc.rf input#form-tname,
    #tresc.rf input#form-ucountry,
    #tresc.rf input#form-eleader,
    #tresc.rf input#form-univ,
    #tresc.rf input#form-address,
    #tresc.rf input#form-uname,
    #tresc.rf input#form-uadr,
    #tresc.rf input#form-leader,
    #tresc.rf input#form-tm1,
    #tresc.rf input#form-tm2,
    #tresc.rf input#form-tm3,
    #tresc.rf input#form-tm4 {
        padding: 10px 8px; /* Slightly larger padding for easier touch */
        font-size: 15px;
    }

    #tresc.rf input#submit,
    #tresc.rf input#reset {
        padding: 12px 6px;
        font-size: 15px;
    }

    #stopka {
        padding: 10px 2%;
    }
    
    img.logo {
        width: 40%;
        max-width: 100px;
    }

    #stopka-l p, #stopka-l a,
    #stopka-r p, #stopka-r a {
        font-size: 12px; /* Smaller footer text */
    }
}
/* --- END OF General Mobile Styles (Max Width 767px) --- */


/* --- Mobile Portrait Styles (Max Width 767px) --- */
@media all and (max-width: 767px) and (orientation: portrait) {
    /* Add specific overrides for portrait mode if needed. */
    /* For example, if certain elements need different spacing or font sizes in portrait. */
    /* Most general mobile styles from above should suffice. */

    #lang a {
        font-size: 11px; /* Smaller font for lang links in portrait */
        margin: 2px 5px;
        line-height: 14px;
    }
}
/* --- END OF Mobile Portrait Styles (Max Width 767px) --- */


/* --- Mobile Landscape Styles (Max Width 767px) --- */
@media all and (max-width: 767px) and (orientation: landscape) {
    /* Add specific overrides for landscape mode. */
    /* Example: If space allows, perhaps menu items could be smaller or some elements side-by-side. */
    /* However, often maintaining consistency with portrait is better for UX. */

    #lang {
        /* Potentially adjust #lang if it feels too cramped or too spacious in landscape */
    }

    #menu a {
        /* If menu items are very few, they could potentially be displayed inline-block */
        /* e.g., display: inline-block; width: auto; padding: 5px 10px; */
        /* But this depends heavily on the number of items and their text length. */
        /* Sticking to stacked is often safer. */
    }

    /* If #tresc contains columns that were stacked for portrait, */
    /* they might be able to be displayed side-by-side here if using flex/grid. */
    /* With floats, this is more complex to manage reliably. */
}
/* --- END OF Mobile Landscape Styles (Max Width 767px) --- */


/* --- Small Mobile Styles (Max Width 480px) --- */
/* This media query targets smaller smartphones, typically in portrait orientation. */
/* These styles will override/add to the 767px styles due to appearing later in the cascade */
/* or by being more specific if selectors were different. */
@media all and (max-width: 480px) {
    #lang a {
        font-size: 10px; /* Even smaller for very narrow screens */
        margin: 1px 3px;
        padding: 3px 5px;
        line-height: 12px;
    }
    
    #menu a {
        font-size: 14px; /* Further reduce menu font size */
        padding: 6px 0;
    }

    #tresc h1 {
        font-size: 18px;
    }

    #tresc h2 {
        font-size: 16px;
    }

    #tresc p,
    #tresc li,
    #tresc div.rf {
        font-size: 14px; /* Smallest readable font for content */
        line-height: 1.5;
    }

    #tresc p.big {
        font-size: 16px;
    }
    
    #tresc.rf input#form-fname,
    #tresc.rf input#form-lname,
    #tresc.rf input#form-email,
    #tresc.rf input#form-country,
    #tresc.rf input#form-tname,
    #tresc.rf input#form-ucountry,
    #tresc.rf input#form-eleader,
    #tresc.rf input#form-univ,
    #tresc.rf input#form-address,
    #tresc.rf input#form-uname,
    #tresc.rf input#form-uadr,
    #tresc.rf input#form-leader,
    #tresc.rf input#form-tm1,
    #tresc.rf input#form-tm2,
    #tresc.rf input#form-tm3,
    #tresc.rf input#form-tm4 {
        font-size: 14px; /* Match content font size for inputs */
        padding: 8px 5px;
    }

    #tresc.rf input#submit,
    #tresc.rf input#reset {
        font-size: 14px;
        padding: 10px 6px;
    }
    
    img.logo {
        max-width: 90px; /* Smaller logo for very narrow screens */
    }
}
/* --- END OF Small Mobile Styles (Max Width 480px) --- */


/* --- Small Mobile Portrait Styles (Max Width 480px) --- */
@media all and (max-width: 480px) and (orientation: portrait) {
    /* Specific overrides for portrait on very small devices. */
    /* Often, the general max-width: 480px styles are sufficient. */
}
/* --- END OF Small Mobile Portrait Styles (Max Width 480px) --- */


/* --- Small Mobile Landscape Styles (Max Width 480px) --- */
/* Note: Landscape on a device with 480px width might be very short, e.g., 480x320. */
/* This can be challenging for content display. */
@media all and (max-width: 480px) and (orientation: landscape) {
    #tresc {
        min-height: initial; /* Remove min-height if it causes issues on very short screens */
    }

    #tresc p,
    #tresc li {
        /* Potentially reduce line-height slightly if vertical space is extremely constrained */
        /* line-height: 1.4; */
    }
    
    /* Hide less critical elements if space is extremely tight in this orientation */
    /* For example:
    #stopka-r { display: none; }
    */
}
/* --- END OF Small Mobile Landscape Styles (Max Width 480px) --- */